Вывести номер последнего числа в наборе, большего K - C (СИ)
Формулировка задачи:
Дано целое число K и набор ненулевых целых чисел; признак его завершения — число 0. Вывести номер последнего числа в наборе, большего K. Если таких чисел нет, то вывести 0
Как можно перевести этот Паскаль код в Си?
Буду очень благодарен )
Var k,m,j,i:integer; Begin write('Введите k: ');readln(k); i:=0;j:=0; Repeat inc(i); write('Введите ',i,'-ое число(окончание ввода число 0): '); readln(m); if (k=m)and(j=0) then j:=i; Until m=0; writeln(j); readln; End.
Решение задачи: «Вывести номер последнего числа в наборе, большего K»
textual
Листинг программы
#include "stdio.h" int main(){ int k,i,m=0,n; printf("k: "); scanf("%d",&k); printf("Enter numbers (for exit 0):\n"); for(i=1; scanf("%d",&n),n;i++) if(n>k)m=i; printf("m=%d",m); getchar(); getchar(); return 0; }
Объяснение кода листинга программы
- Подключение стандартной библиотеки ввода-вывода
- Объявление переменных: k, i, m=0, n
- Вывод сообщения с просьбой ввести число K
- Ввод числа K с помощью функции scanf
- Запуск цикла for, который будет выполняться до тех пор, пока пользователь не введет ноль
- Внутри цикла проверяется, является ли текущее введенное число больше K
- Если это так, то значение переменной m присваивается текущему значению i
- После окончания цикла выводится значение переменной m
- Программа ожидает два символа новой строки для завершения работы
- Возвращение значения 0, что означает успешное завершение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д