Задать вопрос
18 августа, 17:53

Program Series17;

var

a, B, N, i:integer;

bol:boolean;

begin

i:=0;

n:=0;

bol:=true;

Writeln ('Введите число B');

readln (B);

Writeln ('Введите число N');

Readln (N);

Writeln ('Введите ', N,' целых чисел.');

While i < n do

begin

Read (a);

if (a>b) and (bol) then begin Write (' ', b); bol:=false; end;

Write (' ', a);

inc (i);

end;

end.

причем здесь bol и как он работает объясните

+1
Ответы (2)
  1. 18 августа, 18:51
    0
    Var

    a, b, n, i:integer;

    bol:boolean;

    begin

    //Инициализируем переменные

    i:=0;

    n:=0;

    bol:=true;

    //Осуществляется ввод

    Writeln ('Введите число B: '); readln (b);

    Writeln ('Введите число N: '); Readln (n);

    Writeln ('Введите ', n,' целых чисел.');

    //цикл (с пред условием) будет повоторятся n раз

    While i < n do

    begin

    //Осуществляется ввод с клавиатуры

    Read (a);

    //Проверяем является (A больше B) и (bol = true)

    if (a>b) and (bol) then

    //Если является

    begin

    //выводит значение B через пробел

    Write (' ', b);

    //и присваивает bol = ложь

    bol:=false;

    end;

    //выводит значение А через пробел

    Write (' ', a);

    //инкрементирует i, тоесть i:=i+1

    inc (i);

    end;

    end.
  2. 18 августа, 19:53
    0
    Сложно понять, что нужно было сделать автору программы, но в любом случае сделано криво. Ввод и вывод организованы так, что выводимые значения сливаются с вводимыми, образуя непонятные комбинации.

    Программа запрашивает некоторое значение "В", на превышение которого потом она реагирует один раз. Затем запрашивается количество чисел, которые надо ввести. Эти числа вводятся в цикле (почему это цикл while - непонятно, обычно подобные вещи делают в цикле for) и тут же выводится, т. е. программа повторяет введенное число. В случае, когда введенное число первый раз превышает "В", перед этим числом выводится значение "В". Именно для этого использована логическая переменная bol: после возникшего превышения она принимает значение false и отключает дальнейшую проверку на превышение.
Знаешь ответ?
Не уверен в ответе?
Найди верный ответ на вопрос ✅ «Program Series17; var a, B, N, i:integer; bol:boolean; begin i:=0; n:=0; bol:=true; Writeln ('Введите число B'); readln (B); Writeln ...» по предмету 📙 Информатика, а если ответа нет или никто не дал верного ответа, то воспользуйся поиском и попробуй найти ответ среди похожих вопросов.
Искать другие ответы