Поменять местами первую и последнюю цифры в записи числа - C (СИ)
Формулировка задачи:
Дано натуральное число n. Поменять местами первую и последнюю цифры в записи числа. Подсчитать количество цифр в изображение числа. Не могу понять.
Листинг программы
- #include <stdio.h>
- int main(){
- int n, s;
- printf("Введите натуральное число:\n");
- scanf("%d", &n);
- for (s = 0; n > 0; s = s * 10 + n%10, n/=10){
- }
- printf("%d\n", n);
- }
Решение задачи: «Поменять местами первую и последнюю цифры в записи числа»
textual
Листинг программы
- #include <stdio.h>
- #include <math.h>
- #include <locale.h>
- int main(void){
- setlocale(LC_ALL,"Ru");
- int n,c=0,perv,posl,pr,st;
- printf("Введите натуральное число:\n");
- scanf("%d",&n);
- pr=n;
- do{n/=10;c++;}while(n);
- posl=pr%10;
- st=pow(10,c-1);
- perv=pr/st;
- n=((pr-posl)+perv);
- n=n-perv*st+posl*st;
- printf("Количество цифр в числе: %d = %d\n",pr,c);
- printf("Число с переставленными 1-ой и последней цифрами: %d\n",n);
- return(0);
- }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с числами и ввода-вывода.
- Установка локали на русский язык.
- Объявление переменных:
- n - переменная для хранения введенного числа;
- c - счетчик количества цифр в числе;
- perv - предыдущая цифра числа;
- posl - последняя цифра числа;
- pr - первоначальное значение переменной n;
- st - степень десятки, соответствующая количеству цифр в числе.
- Вывод сообщения с просьбой ввести натуральное число.
- Считывание введенного числа в переменную n с помощью функции scanf.
- Очистка поля ввода после использования функции scanf.
- Цикл do-while, который будет выполняться до тех пор, пока n не станет равным 0.
- Деление n на 10 и увеличение c на каждой итерации цикла.
- Вычисление posl как остатка от деления pr на 10.
- Вычисление st как степени десятки, соответствующей количеству цифр в числе.
- Вычисление perv как целой части от деления pr на st.
- Вычисление n как разности pr и posl, с последующим умножением на st и добавлением posl*st.
- Вывод сообщения о количестве цифр в числе pr и соответствующем количестве цифр в числе c.
- Вывод сообщения о числе с переставленными 1-ой и последней цифрами в переменной n.
- Конец программы с возвратом 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д