Задача 16 Урок 11

Задача 16 Урок 11

У вас есть число z=5. Пользователь вводит числа в цикле, если за последние 4 попытки ввода было хотя бы одно число больше или равно 15, то увеличивайте число z на 1 в ответ на каждое введенное число, а если такого числа не было, то уменьшайте на 1 в ответ на каждый ввод.
Цикл и программа должны завершиться, когда число z станет отрицательным.

program lesson11_16;
var
    b : boolean;
    z, a, n : integer;
begin
    z := 5;
    b := true;
    n := 0;
    while z >= 0 do
    begin
        writeln('enter number a');
        readln(a);
        if a >= 15 then
        begin
            n := 4;
            b := true
        end
        else
            b := false;

        if b or (n >= 1) then
        begin
            n := n - 1;
            z := z + 1
        end
        else
            z := z - 1;

        if z >= 0 then
            writeln('z = ', z)
    end;
    readln()
end.
program lesson11_16;
var
    z, a, n : integer;
begin
    z := 5;
    n := 0;
    while z >= 0 do
    begin
        writeln('enter number a');
        readln(a);
        if a >= 15 then
            n := 4
        else
            n := n - 1;

        if n >= 1 then
            z := z + 1
        else
            z := z - 1;

        if z >= 0 then
            writeln('z = ', z)
    end;
    readln()
end. 
vedro-compota's picture

Решение засчитано

_____________
матфак вгу и остальная классика =)