Цикл while на С - C (СИ) (248627)
Формулировка задачи:
вот моя программа вроде бы все правильно , но выдает 0%, где ошибка?
Вопрос №737412 (тип: C)
Дано натуральное число N (N<=109). Определить порядковый номер его минимальной цифры, считая от конца числа (если таких цифр несколько, то вывести номер первой встретившейся)
#include<stdio.h> main() { int N,a, min, i, imin; scanf("%d", &N); min=10; while (a<N) { i++; a=N%10; N=N/10; if (a<min) { min=a; imin=i; } } printf ("%d", imin); }
Решение задачи: «Цикл while на С»
textual
Листинг программы
#include<stdio.h> main(){ int N,a, min, i = 0; scanf("%d", &N); min=10; while (N > 0){ a=N%10; N=N/10; if (a<min){ min=a; i++; } } printf ("%d", i); }
Объяснение кода листинга программы
- В начале кода объявляются переменные N, a, min и i, где N - это целочисленная переменная, a - результат остатка от деления N на 10, min - минимальный результат, i - счетчик.
- С помощью функции scanf в переменную N считывается целочисленное значение, которое затем используется в операциях деления и остатка от деления.
- Переменная min инициализируется значением 10.
- Затем начинается цикл while, который выполняется до тех пор, пока N больше нуля.
- В каждой итерации цикла значение a присваивается остатку от деления N на 10, а N уменьшается на единицу.
- Затем проверяется, является ли значение a меньше, чем текущее значение min. Если это так, то min присваивается значение a, а i увеличивается на единицу.
- По завершении цикла while значение i выводится на экран с помощью функции printf.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д