Программирование цикл вайл язык с вопрос №737412 (тип: c)дано натуральное число n (n< =109). определить порядковый номер его минимальной цифры, считая от конца числа (если таких цифр несколько, то вывести номер первой встретившейся) вот программа , вроде все правильно но выдает 0%,где ошибка? #include main() { int n,a, min, i, imin; scanf("%d", & n); min=10; a=n%10; while (a

valiente valiente    3   17.09.2019 16:00    1

Ответы
AlinaSki AlinaSki  07.10.2020 22:08
Значение переменной i не задано, поэтому выведет что - то произвольное,
Почему   while (a<N) ?  А если первая цифра слева в числе = 1?
while (a<N)  нужно заменить на while (0<N)
Убрать строку   a=N%10;  перед while
После строки  min=10;  добавить строку  i=0;

после изменений будет примерно так:

#include<stdio.h>
#include<conio.h>

main() {
 int N,a, min, i, imin; 
 scanf("%d", &N);
 min=10; i=0;
 while (0<N)
 { i++;
 a=N%10;
 N=N/10;
 if (a<min)
 { min=a;
  imin=i; }
 }
 printf ("%d", imin);
 getch();   
 return 0;
}
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика