1.program okay; {здесь я думаю, все понятно}var i, count: byte; {i — будет счетчиком, в переменную count мы запишем количество четных чисел}begincount: =0; {пока что мы не нашли ни одного четного числа}for i: =10 to 99 do {перебираем двузначные числа, т.е. от 10 до 99}If i mod 2=0 then count: =count+1; {если остаток от деления на 2 (mod) равен нулю, то число четное и мы к количеству найденых прибавляем единицу}write (count); {выводим на экран найденое количество четных чисел}end. {конец программы} 2.program okay; {здесь я думаю, все понятно}var i, count: byte; {i — будет счетчиком, в переменную count мы запишем количество чисел с четной первой цифрой}begincount: =0; {пока что мы не нашли ни одного нужного числа}for i: =10 to 99 do {перебираем двузначные числа, т.е. от 10 до 99}If (i div 10) mod 2=0 then count: =count+1; {находим целую часть от деления числа на 10 (т.е. первую цифру) и остаток от деления ее на 2 равен нулю, то эта цифра четная}write (count); {выводим на экран найденое количество искомых чисел}end. {конец программы} 3.program okay; {здесь я думаю, все понятно}var i: byte; {i — будет счетчиком}beginfor i: =10 to 99 do {перебираем двузначные числа, т.е. от 10 до 99}If (i mod 3=0) and (i mod 4=0) then write (i); {проверяем кратность путем нахождения остатков от деления на 3 и 4 и выводим число на экран в случае выполнения условия кратности}end. {конец программы} 4.program okay; {здесь я думаю, все понятно}var i: integer; {берем тип integer, т. К в тип байт не входят все трехзначные числа, i — будет счетчиком}*a, b, c: byte; {a — цифра сотен, b — десятков, c — единиц}beginfor i: =100 to 990 do begin {перебираем трехзначные числа, т.е. от 100 до 999}a: =i div 100; {находим целую часть от деления числа на 100, т.е. цифру сотен}b: =(i div 10) mod 10; {находим двузначное число являющееся целой частью данного числа на 10, а затем остаток от деления на 10, таким образом получаем число десятков}c: =i mod 10; {находим остаток от деления числа на 10, т.е. цифру единиц}if (a=b) and (b=c) then write (i); {Проверяем, выполняется ли условие равенства цифр числа и в случае выполнения, выводим данное число на экран}end; {закрываем цикл}end. {конец программы}*- тип byte может принимать значения от 0 до 255, а тип integer — от -32767 до 32768. Прим: все что выделено жирным, это код программы. Все остальное — это пояснение и вставлять их в программу не нужно.