Задачи Урок 10.1.
Primary tabs
1) Выведите на экран, все числа N единиц (число задает пользователь), например, для N=2, должно быть выведено:: 11
для N=9, должно быть выведено: 111111111
var N,i : integer;
begin
writeln('Введите число N');
readln(N);
for i:= 1 to N do
write(1);
readln();
end.
2) Выведите на экран, все числа от 35 до 64.
var i : integer;
begin
for i:= 35 to 64 do
write(i, ' ');
readln();
end.
3) Пользователь вводит два целых числа, выведите на экран все числа между ними, причем:
Если первое меньше второго, то в порядке возрастания, пример консоли:
1
5
ответ: 1 2 3 4 5Иначе в порядке убывания, пример консоли:
5
3
ответ: 5 4 3Проверить решение для пар значений:
10 20
-- должны увидеть все числа от 10 до 20, и для:20 10
-- все числа от 20 до 10 в обратном порядке
var i, a, b : integer;
begin
writeln('Введите 2 целых числа');
readln(a, b);
if a < b then
begin
for i := a to b do
write(i, ' ');
end
else
begin
for i := a downto b do
write(i, ' ');
end;
readln();
end.
4) Выведите на экран, все четные числа от 35 до 64.
var i : integer;
begin
for i := 35 to 64 do
if ((i mod 2) = 0) then
write(i, ' ');
readln();
end.
5) Пользователь вводит целое число, если оно больше единицы, то выведите на экран все целые числа от этого числа до единицы (в обратном порядке), которые делятся на 5 без остатка. Иначе (если введённое пользователем число не больше единицы) сообщите об ошибке.
var i, a : integer;
begin
writeln('Введите целое число');
readln(a);
if a > 1 then
begin
for i:= a downto 1 do
if (i mod 5 = 0) then
write (i, ' ');
writeln();
end
else
writeln('ошибка');
readln();
end.
6) Пользователь вводит целое число, если оно больше 100, то выведите на экран все числа от этого числа до 1, иначе же все числа от 1 до этого числа.
Подсказка: в каждой ветке условного оператора тут должно быть по одному циклу.
var i, a : integer;
begin
writeln('Введите целое число');
readln(a);
if a > 100 then
begin
for i:= a downto 1 do
write(i, ' ');
writeln()
end
else
begin
for i:= 1 to a do
write(i, ' ');
end;
readln();
end.
7) Выведите на экран, все нечетные числа, делящиеся на 3 нацело, лежащие в диапазоне от 35 до 117.
var i : integer;
begin
for i:= 35 to 117 do
if (i mod 2 = 1) AND (i mod 3 = 0) then
write(i, ' ');
readln();
end.
8) Выведите на экран, все четные числа от 35 до 117 и нечетные числа, лежащие в диапазоне от 45 до 99.
Указание: сначала можно решить задачу двумя циклами, но потом перепишите с использованием одного цикла, в теле которого составьте логическое выражение, описывающее подходящие числа (используйте логические операции).
2 циклами:
var i : integer;
begin
for i := 35 to 117 do
if i mod 2 = 0 then
write(i, ' ');
writeln();
for i := 45 to 99 do
if i mod 2 = 1 then
write(i, ' ');
readln();
end.1 циклом:
var i : integer;
begin
for i := 35 to 117 do
begin
if ((i >= 35) AND (i <= 117) AND (i mod 2 = 0)) then
write(i, ' ')
else if ((i >= 45) AND (i mod 2 = 1)) then
write(i, ' ');
end;
readln();
end.
9) Выведите на экран, все числа делящиеся на 3 из диапазона от 35 до 117 и нечетные числа, лежащие в диапазоне от 45 до 99.
var i : integer;
begin
for i := 35 to 117 do
begin
if ((i >= 35) AND (i <= 117) AND (i mod 3 = 0)) then
write(i, ' ')
else if ((i >= 45) AND (i mod 2 = 1)) then
write(i, ' ');
end;
readln();
end.
10) Переберите в цикле все числа от 1 до 100, выведите на экран каждое 7-е число.
var i : integer;
begin
for i := 1 to 100 do
if (i mod 7 = 0) then
write(i, ' ');
readln();
end.
11) Есть код -- перепишите его так, чтобы логика программы не изменилась, но количество проверок в теле цикла стало меньше.
var i, a: integer;
begin
readln(a);
if (a > 2) then
for i := 1 to 10 do
write('*')
else
write('#');
readln();
end. - Log in to post comments
- 310 reads