Найти сумму максимальной и минимальной цифры - C (СИ)
Формулировка задачи:
Дано натуральное число n. Найти сумму максимальной и минимальной цифры. Если соответствующая максимальная ( минимальная ) цифра встречается в числе более одного раза, то и в суммировании она участвует соответствующее число раз. ( без массива )
#include <stdio.h> int main(void) { int n, m, min, max, sum; min = 10; max = 0; scanf("%i", &n); do { m = n % 10; n = n / 10; if (min > m) min = m; if (max < m) max = m; } while (n != 0); sum = min + max; printf("Min:\n%i\n", min); printf("Max:\n%i\n", max); printf("Summa:\n%i\n", sum); return 0; }
Решение задачи: «Найти сумму максимальной и минимальной цифры»
textual
Листинг программы
#include<stdio.h> int main(){ int n; printf("Enter number: "); scanf("%d",&n); int max, min, t = n, maxCount = 0, minCount = 0; max = min = t%10; while(t){ if(max < t%10) max = t%10; if(min > t%10) min = t%10; t=t/10; } printf("max = %d and min = %d\n", max, min); t=n; while(t){ if(max == t%10) maxCount++; if(min == t%10) minCount++; t=t/10; } printf("max is found %d time(s), min is found %d time(s)\n",maxCount, minCount); printf("The result of programm is %d\n", max*maxCount + min*minCount); return 0; }
Объяснение кода листинга программы
В этом коде задача состоит в том, чтобы найти максимальную и минимальную цифру в числе, которое вводит пользователь, а затем найти сколько раз каждая из этих цифр встречается в числе. Затем код вычисляет и выводит результат, который представляет собой сумму максимальной и минимальной цифры, умноженную на количество раз, которое каждая из этих цифр встречается в числе. Список действий:
- Ввод числа от пользователя
- Инициализация переменных:
- max и min инициализируются как первая цифра числа (t%10)
- maxCount и minCount инициализируются как 0
- Делитель цикла while используется для обработки каждой цифры числа
- Если следующая цифра больше max, то max обновляется
- Если следующая цифра меньше min, то min обновляется
- Цифра сдвигается вправо на каждом шаге цикла (t/10)
- Цикл while используется для подсчета количества раз, которое каждая цифра встречается в числе
- Если следующая цифра равна max, то maxCount увеличивается на 1
- Если следующая цифра равна min, то minCount увеличивается на 1
- Цифра сдвигается вправо на каждом шаге цикла (t/10)
- Вывод максимальной и минимальной цифры и количества их вхождений
- Вывод результата программы (maxmaxCount + minminCount)
- Конец программы (return 0)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д