Задачи Урок 12.1

Задачи Урок 12.1:

1) Вывести на экран все числа от 1 до N с помощью цикла repeat/until.

var i, n : integer;
begin
  writeln('Введите число n');
  readln(n);
  
  i := 1;
  repeat
    write(i, ' ');
    i := i + 1;
  until(i > n) ;
  
end.
3) Выведите на экран, все числа от 55 до 9236.
var i : integer;
begin
  for i := 55 to 9236 do
    write(i, ' '); 
  
  readln();
end.
5) Пользователь вводит целое число, если оно больше единицы, то выведите на экран все целые числа от этого числа до единицы (в обратном порядке), которые делятся на 23 без остатка. Иначе (если введённое пользователем число не больше единицы) сообщите об ошибке.
Как проверять:
1) Если мы введем число 55, то программа должна вывести в ответ: 46, 23
2) Если мы введем число 5, то программа должна вывести в ответ ноль чисел (вообще ничего)
3) Если мы введем число -4, то программа должна сообщить об ошибке
var a : integer;
begin
  writeln('Введите целое число');
  readln(a);
  
  if a > 1 then
    for a := a downto 1 do
    begin
      if a mod 23 = 0 then
        writeln(a);
    end
  else
    writeln('ошибка');
  
  writeln('пока!');
  readln();
end.
6) Пользователь вводит в консоль символы (после каждого нажимая Enter), в ответ выводите символ '&', до тех пор пока пользователь не введёт '#', после чего завершите программу (не выводя ничего в ответ).
var symbol : char;
begin
  repeat 
    writeln('Введите символ');
    readln(symbol);

    if symbol <> '#' then
      writeln('&');
  until symbol = '#';
end.

7) Решите с помощью цикла repeat/until: Выведите на экран, все четные числа, делящиеся на 3 и на 6 нацело , лежащие в диапазоне от 35 до 117.

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