Язык Си в примерах/Максимум: различия между версиями
Содержимое удалено Содержимое добавлено
Def2010 (обсуждение | вклад) Проверил, код корректен. Учите язык. |
|||
Строка 13:
#include <stdio.h>
int main ()
{
int n = 1, cur, min, max;
double sum, sum_sq;
int r = scanf ("%d", &cur);
assert (r == 1);
sum = min = max = cur;
Строка 72 ⟶ 70 :
=== Условия корректности ввода ===
После завершения чтения последовательности, мы ''требуем'' (используя [[../Учимся складывать#assert |уже известную]] нам макроподстановку <code >assert</code><ref name="assert" />) истинности следующих двух условий, смысл которых сводится к тому, что чтение последовательности <em >не было прервано</em> ни появлением во входном потоке каких-либо «
# Мы проверяем равенство последнего возвращенного функцией <code >scanf</code> значения константе (макроопределению) <code >EOF</code> (''конец файла''; англ. {{lang |en|end of file}}), что соответствует или ''исчерпанию'' нашего входного потока (''стандартного ввода''), или возникновению ошибки ввода-вывода. Другое возможное на данном этапе значение — ноль — укажет на наличие во входном потоке данных, которые не были опознаны функцией <code >scanf</code> как [[#Дано |требуемое условием]] целое число в десятичной записи (<code >%d</code>).
# Если предыдущее требование выполняется (иными словами — останов произошел <em >не</em> из-за «
=== Цикл «пока» ===
|