Найти сумму максимальной и минимальной цифры - 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;
}

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

В этом коде задача состоит в том, чтобы найти максимальную и минимальную цифру в числе, которое вводит пользователь, а затем найти сколько раз каждая из этих цифр встречается в числе. Затем код вычисляет и выводит результат, который представляет собой сумму максимальной и минимальной цифры, умноженную на количество раз, которое каждая из этих цифр встречается в числе. Список действий:

  1. Ввод числа от пользователя
  2. Инициализация переменных:
    • max и min инициализируются как первая цифра числа (t%10)
    • maxCount и minCount инициализируются как 0
  3. Делитель цикла while используется для обработки каждой цифры числа
    • Если следующая цифра больше max, то max обновляется
    • Если следующая цифра меньше min, то min обновляется
    • Цифра сдвигается вправо на каждом шаге цикла (t/10)
  4. Цикл while используется для подсчета количества раз, которое каждая цифра встречается в числе
    • Если следующая цифра равна max, то maxCount увеличивается на 1
    • Если следующая цифра равна min, то minCount увеличивается на 1
    • Цифра сдвигается вправо на каждом шаге цикла (t/10)
  5. Вывод максимальной и минимальной цифры и количества их вхождений
  6. Вывод результата программы (maxmaxCount + minminCount)
  7. Конец программы (return 0)

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


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

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

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