Напишите программу, которая в последовательности натуральных чисел находит наименьшее четное число. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не является членом последовательности). Количество чисел не превышает 100. Введённые числа не превышают 30 000. Гарантируется, что в последовательности есть хотя бы одно четное число. Программа должна вывести наименьшее четное число.
ТОЛЬКО паскаль 9 класс
Проект 6к8 планнульомрртоооэмма
1. Сначала нам нужно объявить переменные. В данном случае нам понадобятся следующие переменные:
- `number` - переменная для хранения введенного числа;
- `smallestEven` - переменная для хранения наименьшего четного числа, которое мы найдем.
Начальное значение `smallestEven` стоит установить на максимально возможное число, чтобы в дальнейшем мы могли его корректно обновить.
```
var
number, smallestEven: integer;
begin
smallestEven := 30000; // устанавливаем начальное значение наименьшего четного числа
```
2. Теперь мы готовы приступить к вводу последовательности чисел. Мы будем использовать цикл, который будет выполняться до тех пор, пока не будет введено число 0:
```
repeat
read(number); // считываем очередное число
until number = 0; // выполняем цикл до тех пор, пока не будет введено число 0
```
3. Внутри цикла нам нужно проверить, является ли введенное число четным и если оно меньше текущего значения наименьшего четного числа (`smallestEven`), то обновить значение переменной `smallestEven`:
```
if (number mod 2 = 0) and (number < smallestEven) then
smallestEven := number; // обновляем значение наименьшего четного числа
```
4. После окончания цикла, когда будет введено число 0, мы уже найдем наименьшее четное число. Мы можем его вывести на экран:
```
writeln('Наименьшее четное число:', smallestEven);
```
5. Весь код программы будет выглядеть следующим образом:
```
var
number, smallestEven: integer;
begin
smallestEven := 30000; // устанавливаем начальное значение наименьшего четного числа
repeat
read(number); // считываем очередное число
if (number mod 2 = 0) and (number < smallestEven) then
smallestEven := number; // обновляем значение наименьшего четного числа
until number = 0; // выполняем цикл до тех пор, пока не будет введено число 0
writeln('Наименьшее четное число:', smallestEven);
end.
```
Эта программа будет последовательно считывать числа до тех пор, пока не будет введено число 0. Она проверяет каждое число на четность и, если оно является четным и меньше текущего значения наименьшего четного числа, обновляет это значение. По завершении цикла программа выводит наименьшее четное число.