Написать программу определения числа билетов с 6-значными номерами,у которых сумма первых 3 - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Написать программу определения числа билетов с 6-значными номерами,у которых сумма первых 3 десятичных цифр равна сумме 3 последних десятичных цифр

Решение задачи: «Написать программу определения числа билетов с 6-значными номерами,у которых сумма первых 3»

textual
Листинг программы
#include <stdio.h>
 
int* to_digits(int number)
{
    static int digits[6];
    for( int i = 5; i >= 0; --i ) {
        digits[i] = number % 10;
        number /= 10;
    }
    return digits;
}
 
int main(int argc, char* argv[])
{
    int sum_first, sum_last;
    int counter = 0;
    for( int i = 100000; i < 1000000; ++i ) {
        int* digits = to_digits(i);
        sum_first = digits[0] + digits[1] + digits[2];
        sum_last = digits[3] + digits[4] + digits[5];
        if( sum_first == sum_last ) counter++;
    }
 
    printf("%d\n", counter);
 
    return 0;
}

Объяснение кода листинга программы

  1. Включаем заголовочный файл для использования функций ввода-вывода.
  2. Создаем функцию to_digits(int number), которая преобразует число в массив из 6 цифр.
  3. В функции main(int argc, char* argv[]) инициализируем переменные: — sum_first - сумма первых трех цифр. — sum_last - сумма последних трех цифр. — counter - счетчик для подсчета количества найденных чисел.
  4. Запускаем цикл for для перебора всех чисел от 100000 до 1000000: — Преобразуем текущее число в массив из 6 цифр с помощью функции to_digits. — Вычисляем сумму первых трех цифр и сумму последних трех цифр. — Если суммы равны, увеличиваем значение переменной counter на 1.
  5. Выводим на экран значение переменной counter.
  6. Возвращаем 0 из функции main, чтобы указать на успешный конец работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.714 из 5
Похожие ответы