Урок 12.1 (Решенные задачи)

lesson 12

1)Выведите на экран, все числа от 55 до 9236.

var i, b, c: integer;

begin
  i := 55;
  repeat
    writeln(i, ' ');
    i := i + 1;
  until (i > 9236) ;
end.
2) Пользователь вводит целое число, если оно больше единицы, то выведите на экран все целые числа от этого числа до единицы (в обратном порядке), которые делятся на 23 без остатка. Иначе (если введённое пользователем число не больше единицы) сообщите об ошибке.
var i: integer;

begin
  writeln('vvedite celoe cislo');
  readln(i);
  if (i > 0) then
  repeat
    if ((i mod 23) = 0) then
       writeln(i, ' ');
       i := i - 1;
  until(i < 1)
  else writeln('osibka');
end.
3) Пользователь вводит в консоль символы (после каждого нажимая Enter), в ответ выводите символ '&', до тех пор пока пользователь не введёт '#', после чего завершите программу.

var i: char;

begin
   writeln('vvedite simvol');
   readln(i);
   repeat
     writeln('&');
     writeln('vvedite simvol');
     readln(i);
   until(i = '#');
end.  
4) Решите с помощью цикла repeat/until:
Выведите на экран, все четные числа, делящиеся на 3 и на 6 нацело , лежащие в диапазоне от 35 до 117.
var i: integer;

begin
i := 55;
  repeat
    if ((i mod 3) = 0) and ((i mod 6) = 0) and ((i mod 2) = 0) then
    writeln(i,' ');
    i := i + 1;
    until(i > 117);
end.
5)Решите с помощью цикла repeat/until:
Выведите на экран, все четные числа от 35 до 117 и нечетные числа, делящиеся на 7 и 3 нацело и при этом лежащие в диапазоне от 45 до 99.
Указание: сначала можно решить задачу двумя циклами, но потом перепишите с использованием одного цикла, в теле которого составьте логическое выражение, описывающее подходящие числа (используйте логические операции).

var i,a: integer;

begin
  i := 35;
  repeat
    if ((i mod 2) = 0) then
    writeln(i, ' ');
    i := i + 1;
    if ((i mod 7)=0) and ((i mod 3) = 0)
    and ((i mod 2) = 1) and (i >= 45) and (i <= 99) then
  until (i > 117);
end.