Для удобства написания я разбил на код символа в строке по 8
в 16-ричной СС
48 61 70 70 79 20 42 69
72 74 68 64 61 79 20 74
<span>6F 20 79 6F 75 21 21
в двоичной СС
</span>1001000 1100001 1110000 1110000 1111001 0100000 1000010 <span>1101001
</span>1110010 1110100 1101000 1100100 1100001 1111001 0100000 1110100
1101111 0100000 1111001 1101111 1110101 0100001 0<span>100001
</span>
P.S. Будут вопросы пишите
begin
for var a:integer:=1 to 100 do
if a mod 2=0 then
writeln(a);
end.
<em><u>Вычисляем значение выражения 2 - 13 mod 7 / 3 + sqr(4)</u></em>
1) 13 mod 7 = 13 - 7 = 6
2) 6 / 3 = 2.0
3) 2 - 2.0 = 0.0
4) sqr(4) = 4 * 4 = 16
5) 0.0 + 16 = 16.0
6) 16.0 округлить до целых: 16
<em><u>В Паскале:</u></em>
var
i:integer;
begin
i:=Trunc(2-13 mod 7/3+sqr(4));
Writeln(i)
end.
Сложно понять, что нужно было сделать автору программы, но в любом случае сделано криво. Ввод и вывод организованы так, что выводимые значения сливаются с вводимыми, образуя непонятные комбинации.
Программа запрашивает некоторое значение "В", на превышение которого потом она реагирует один раз. Затем запрашивается количество чисел, которые надо ввести. Эти числа вводятся в цикле (почему это цикл while - непонятно, обычно подобные вещи делают в цикле for) и тут же выводится, т.е. программа повторяет введенное число. В случае, когда введенное число первый раз превышает "В", перед этим числом выводится значение "В". Именно для этого использована логическая переменная bol: после возникшего превышения она принимает значение false и отключает дальнейшую проверку на превышение.
Маркированный и нумированный