Книга: Конец холивара. Pascal vs C
Назад: 2.2. Повторение (операторы цикла)
Дальше: 2.2.2. Цикл, который выполняется не меньше одного раза

2.2.1. Цикл типа “пока” (цикл с предусловием)

Пример 2.4: Программа находит наибольший общий делитель двух целых чисел.

 

#include <assert. h>

#include <stdio. h>

 

int main ()

{

int x, y;

 

printf (“Введите два целых числа через пробел\n”);

int r = scanf (”%d%d”, &x, &y);

 

assert (r == 2);

 

while (x!= y)

if (x> y)

x = x – y;

else

y = y – x;

printf (“НОД=%d\n”, x);

 

getchar ();

 

return 0;

 

}

 

Для проверки соответствия ввода пользователя требованиям программы мы сохраняем (=) результат выполнения scanf – количество успешно измененных переменных – в целочисленной переменной с именем r (int r), после чего требуем равенства её значения двум

 

(assert (r == 2);

 

Для этого и нужна директива препроцессора

 

#include <assert. h>

Назад: 2.2. Повторение (операторы цикла)
Дальше: 2.2.2. Цикл, который выполняется не меньше одного раза