Урок 11 (Решенные здачи)
Primary tabs
Урок 11 (Решеннные задачи)
1)Пользователь вводит целые числа. Пока он не введёт число большее 15, в ответ на каждое введённое число выводите сумму этого числа и числа 7, если же введённое число больше 15, то цикл необходимо завершить.
var a: integer; begin a := 1; while (a <= 15) do begin writeln('vvedite a'); readln(a); writeln(a + 7, ' '); end; writeln('osibka'); end.
2) Пользователь вводит целые числа. Пока он не введёт число большее 15, в ответ на каждое введённое число выводите сумму этого числа и предыдущего введённого им числа, если же введённое число больше 15, то цикл необходимо завершить.Первое введенное пользователем число можно сложить с единицей.
var a,b: integer; begin a := 1; b := 1; while (a <= 15) do begin writeln('vvedite celoe cislo'); readln(a); writeln(a + b); b := a; end; end.
3)Решите с помощью цикла while:
Выведите на экран, все нечетные числа, делящиеся на 3 нацело, лежащие в диапазоне от 35 до 117.
var i: integer; begin i := 35; while (i >= 35) and (i <= 117) do begin if ((i mod 2) = 1) and ((i mod 3) = 0) then writeln(i, ' '); i := i + 1; end; end.
4) Решите с помощью цикла while:
Выведите на экран, все четные числа от 35 до 117 и нечетные числа, лежащие в диапазоне от 45 до 99.
Указание: сначала можно решить задачу двумя циклами, но потом перепишите с использованием одного цикла, в теле которого составьте логическое выражение, описывающее подходящие числа (используйте логические операции).
var i: integer; begin i := 35; while (i >= 35) and (i <= 117) do begin i := i + 1; if ((i mod 2) = 0) then begin writeln(i, ' '); end else if (i >= 45) and (i <= 99) then begin writeln(i, ' '); end; end; end.
5) Модификация одной из пред. задач: Пользователь вводит целые числа. Пока он не введёт число большее 15, в ответ на каждое введённое число выводите сумму этого числа и двух предыдущих введённых им чисел (предыдущего и пред-предыдущего), если же введённое число больше 15, то цикл необходимо завершить.В первом витке цикла все "предыдущие" числа можно считать единицами.
var i,b, c: integer; begin i := 1; b := 1; c := 1; while (i <= 15) do begin writeln('vvedite celoe cislo'); readln(i); writeln(i + b + c); c := b; b := i; end; writeln('osibka'); end.
6) Модификация одной из пред. задач: Пользователь вводит целые числа. Пока он не введёт число большее 15, в ответ на каждое введённое число выводите сумму этого числа и пред-предыдущего введённого им числа, если это число чётное, иначе просто запрашивать новое число. Если же введённое число больше 15, то цикл необходимо завершить.В первом витке цикла все "предыдущие" числа можно считать единицами.
var i, b,c: integer; begin i := 2; b := 1; c := 1; while (i <= 15) do if ((i mod 2) = 0) then begin writeln('vvedite cislo'); readln(i); writeln(i + b + c); c := b; b := i; end else begin writeln('vvedite cislo'); readln(i); end; writeln('osibka'); end.
7)Пользователь вводит целые числа, в ответ выводите символ #. Если введенное пользователем число равно 22, то завершите цикл не выводя ничего в ответ. Решите эту задачу 2-мя способами:С использованием if()
С использованием break;
Первый способ
(бонусный от меня:) самый простой)
var i: integer; begin writeln('vvedite cislo'); readln(i); while (i <> 22) do begin writeln('#'); writeln('vvedite cislo'); readln(i); end; end.
Второй способ
(с "if")
var i: integer; begin while (i <> 22) do begin writeln('vvedite cislo'); readln(i); if (i <> 22) then writeln('#') end; end.
Третий способ
(с break)
var i: integer; begin writeln('vvedite cislo'); readln(i); while (i <> 22) do if (i <> 22) then begin writeln('#'); writeln('vvedite cislo'); readln(i); end else break; end.
9) Пользователь вводит в числа последовательно три произвольных целых числа. Заведите три переменных и сохраните эти числа в эти переменные. Пользовательский ввод обрабатывайте в цикле.
var i, b, c: integer; begin while (true) do begin writeln('vvedite cislo'); readln(i); writeln('vvedite cislo'); readln(b); writeln('vvedite cislo'); readln(c); writeln(i,' ', b,' ', c); break; end; end.
- Log in to post comments
- 2437 reads
vedro-compota
Wed, 09/16/2020 - 19:33
Permalink
var i: integer;
переделать так чтобы печать # была вне оператора if
_____________
матфак вгу и остальная классика =)
Romakip
Thu, 09/17/2020 - 12:41
Permalink
var i: integer;