Найти все числа меньше n, у которых равны первая и последняя цифра - C (СИ)
Формулировка задачи:
Дано натуральное число n. Найти все числа меньше n, у которых равны первая и последняя цифра.
#include <stdio.h> #include <math.h> #include <stdlib.h> int main () { int n,i,a,s; printf("Vvdeite n:\n>>"); scanf("%d",&n); for(int i=1;i<n;i++); i=i*10+a%10; a=i%10; for ( ;i>=10;s=i/=10); if (a=s) printf ("%d",i); else printf ("net"); system("pause"); return 0; }
Решение задачи: «Найти все числа меньше n, у которых равны первая и последняя цифра»
textual
Листинг программы
#include <stdio.h> #include <math.h> #include <stdlib.h> #include <string.h> int main () { int n,i, k=0; char buf[100]; printf ("Input n: "); scanf("%d", &n); i=10; if (n>10) while (++i<n) { itoa (i, buf,10); if (buf[0]==buf[strlen(buf)-1]) { printf("%d\n", i); k=1; }; if (!k)printf("net\n"); } else printf("net"); return 0; }
Объяснение кода листинга программы
В этом коде:
- Сначала объявляются переменные :
n
- для хранения введенного числа.i
- для итерации чисел от 10 до n-1.k
- для отслеживания первого числа, удовлетворяющего условию.buf
- для хранения строкового представления числа.
- Затем пользователю предлагается ввести число n.
- Пока i меньше n, выполняются следующие действия :
i
увеличивается на 1.buf
заполняется строковым представлением числа i, используя систему счисления 10.- Проверяется, равны ли первая и последняя цифры числа. Если да, число удовлетворяет условию, и выполняются следующие действия:
- Число i выводится на экран.
k
устанавливается в 1, чтобы отметить, что хотя бы одно число удовлетворяет условию.
- Если после проверки всех чисел в диапазоне от 10 до n-1 условие не выполняется, выводится
net
. - В конце программы возвращается 0, что означает успешное выполнение.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д