В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
Transylvania1
Transylvania1
15.07.2022 05:15 •  Информатика

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

Показать ответ
Ответ:
gogoja
gogoja
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;
}
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота