Вывести все трехзначные числа, сумма цифр которого равна А и число кратно В - C (СИ)

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

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

#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{int a, b, x, i=0, j=0, k=0;
clrscr();
printf("Vvedite a");
scanf("%i", &a);
printf("Vvedite b");
scanf("%i", &b);
x=100;
i=fdiv(x,1);
j=fdiv(x,10);
k=fdiv(x,100);
x+=1;
while (x<=999)
for(x=100;x<1000;x++);
 {if (fmod(x,b)=0) if (a=i+j+k) printf("x=%i", x);
 }
 getch()
}
при выполнении функция fdiv не читается

Решение задачи: «Вывести все трехзначные числа, сумма цифр которого равна А и число кратно В»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
#define dec ( 10 )
#define p   ( 3 )
 
int main() {
 
    int m[ p ] = { 123, 456, 789 };
    size_t i = 0, tmp, cnt;
 
    while ( i < p ) {
 
        cnt = p;
        tmp = 0;
 
        while ( cnt-- ) {
            tmp += m[ i ] % dec;
            m[ i ] /= dec;
        }
        m[ i++ ] = tmp;
    }
    i = 0;
 
    while ( i < p )
        printf( "%4i", m[ i++ ] );
    puts("");
 
    return 0;
}

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

  1. Подключение необходимых библиотек для работы с файлами и математическими операциями.
  2. Определение двух констант: dec (10) - сумма цифр трехзначных чисел кратна 10, p (3) - количество трехзначных чисел в массиве.
  3. Создание массива m размером p, содержащего трехзначные числа.
  4. Переменная i инициализируется нулем, tmp - аккумулятором суммы цифр, cnt - счетчиком количества итераций в цикле.
  5. В цикле while (i < p) происходит вычисление суммы цифр текущего трехзначного числа и разделение числа на декаду (10).
  6. Внутренний цикл while (cnt--) выполняет перебор всех цифр текущего числа, суммируя их и уменьшая значение cnt на единицу.
  7. После завершения внутреннего цикла, полученная сумма цифр сохраняется в аккумулятор tmp.
  8. После завершения внешнего цикла, значение аккумулятора tmp заменяет текущее число в массиве m, а значение i увеличивается на единицу.
  9. После завершения цикла, в цикле while (i < p) происходит вывод на экран всех трехзначных чисел, сумма цифр которых кратна 10.
  10. В конце программы возвращается 0, сигнализируя о успешном завершении работы программы.

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


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

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

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