Есть основная программа, её надо разбить на основную и подпрограмму - C#
Формулировка задачи:
Задача: Дано натуральное число N. Найти и вывести все числа в интервале от 1 до N — 1, у которых сумма всех цифр совпадает с суммой цифр данного числа. Если таких чисел нет, то вывести слово «нет». Пример. N = 44. Числа: 17, 26, 35.
Листинг программы
- int N, d, sum1, sum2, a, i, b,K ;
- N = Convert.ToInt32(Console.ReadLine());
- sum1 = 0;
- sum2 = 0;
- a = N;
- K = 0;
- while (N != 0)
- {
- d = N % 10;
- sum1 = sum1 + d;
- N = N / 10;
- };
- N = a;
- for (i = 1; i < N-1; i++)
- {
- b = i;
- while (b != 0)
- {
- d = b % 10;
- sum2 = sum2 + d;
- b =b/10;
- };
- if (sum1 == sum2)
- {
- Console.WriteLine(i);
- K=K+1;
- };
- sum2 = 0;
- };
- if (K == 0)
- {
- Console.WriteLine("Нет");
- };
- Console.ReadKey();
Решение задачи: «Есть основная программа, её надо разбить на основную и подпрограмму»
textual
Листинг программы
- static void Main(string[] args)
- {
- int N, d, sum1, sum2, a, i, b, K;
- N = Convert.ToInt32(Console.ReadLine());
- sum1 = 0;
- sum2 = 0;
- a = N;
- K = 0;
- d = 0;
- while (N != 0)
- {
- calculate(ref d, ref sum1, ref N);
- };
- N = a;
- for (i = 1; i < N - 1; i++)
- {
- b = i;
- while (b != 0)
- {
- calculate(ref d, ref sum2, ref b);
- };
- if (sum1 == sum2)
- {
- Console.WriteLine(i);
- K = K + 1;
- };
- sum2 = 0;
- };
- if (K == 0)
- {
- Console.WriteLine("Нет");
- };
- Console.ReadKey();
- }
- static void calculate(ref int a, ref int sum, ref int b)
- {
- a = b % 10;
- sum = sum + a;
- b = b / 10;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д