Найдите все шестизначные числа, в записи которых встречается три стоящих рядом нуля - C (СИ)
Формулировка задачи:
Найдите все шестизначные числа, в записи которых встречается три стоящих рядом нуля.
#include <stdio.h> #include <stdlib.h> #include <math.h> int main() {int i, c, b, a; i=0; b=0; printf("Vvedite chisla\n"); for(; a>0; ) { scanf("%d",&a); a/=10; i=i+1; } if((i>6)||(i<6)) printf("\n ne 6znachnoe"); else {printf("\n 6znachnoe"); for(; a>0; ) {if(a%10==b) c=c+1; if(c==3) printf("chisla s 3 nulyami %d",a); } } return 0; }
Решение задачи: «Найдите все шестизначные числа, в записи которых встречается три стоящих рядом нуля»
textual
Листинг программы
int main(int argc,char** argv) { int NN = 0; int ii = 0; printf("Enter the number: "); scanf("%d",&NN); int Original = NN; do { NN /= 10; ++ii; } while (NN); if (ii != 6) { printf("Invalid number\n"); return -1; } NN = Original; for (int jj = 0; jj < 4; ++jj) { if ((!(NN % 10)) && (!((NN / 10) % 10)) && (!((NN / 100) % 10))) { printf("Found number %d\n",Original); return 0; } NN /= 10; } printf("The number is not found\n"); return 0; }
Объяснение кода листинга программы
В этом коде:
- Инициализируется переменная
NN
со значением 0. - Пользователю предлагается ввести шестизначное число.
- Введенное число сохраняется в переменной
NN
. - Код вычисляет, сколько цифр было введено (используя деление и остаток от деления).
- Если было введено не шесть цифр, выводится сообщение об ошибке и возвращается -1.
- Переменная
NN
восстанавливается до исходного значения. - Число проверяется на наличие трех нулей подряд, начиная с десятки, десятки и сотни.
- Если тройные нули найдены, выводится сообщение о том, что число найдено, и возвращается 0.
- Если тройные нули не найдены, выводится сообщение о том, что число не найдено, и возвращается 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д