Написать программу определения числа билетов с 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; }
Объяснение кода листинга программы
- Включаем заголовочный файл
для использования функций ввода-вывода. - Создаем функцию to_digits(int number), которая преобразует число в массив из 6 цифр.
- В функции main(int argc, char* argv[]) инициализируем переменные: — sum_first - сумма первых трех цифр. — sum_last - сумма последних трех цифр. — counter - счетчик для подсчета количества найденных чисел.
- Запускаем цикл for для перебора всех чисел от 100000 до 1000000: — Преобразуем текущее число в массив из 6 цифр с помощью функции to_digits. — Вычисляем сумму первых трех цифр и сумму последних трех цифр. — Если суммы равны, увеличиваем значение переменной counter на 1.
- Выводим на экран значение переменной counter.
- Возвращаем 0 из функции main, чтобы указать на успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д