Задачи на цикл for с решением 8 класс

Задачи на цикл for с решением 8 класс thumbnail

4 476

Сборник примеров задач с решениями при использовании команды цикла For
Вывод на экран
Спросить имя пользователя и вывести его на экран 10 раз.

Спросить имя пользователя и вывести его на экран Р раз, указывая порядковый номер вывода.

Вывести на экран числа от -5 до 15 через пробел

Вывести на экран числа от 1 до А (A>1)

Вывести на экран числа от -A до А

Вывести на экран числа от А до В

Вывести на экран все цифры

Вывести на экран квадратный корень чисел от 1 до А. (A>1)

Вывести на экран квадраты чисел от А до В

Вывести на экран все 2-ух цифровые числа

Вывести на экран все отрицательные цифры

Вывести на экран все отрицательные 2-ух цифровые числа

Вывести на экран 2-ух цифровые числа от А до В по 4 в строке 1 способ (не всегда правильный)

Вывести на экран 2-ух цифровые числа от А до В по 4 в строке (2 способ)

Вывести на экран таблицу умножения на А

Вывод числовых последовательностей
Вывести на экран через пробел нечетные числа от 1 до 50

Вывести на экран четные числа от 2 до 60 по 5 в строке

Вывести на экран 2-ух цифровые числа кратные 5

Вывести на экран 2-ухцифровые числа кратные Н

Вывести на экран 2-ухцифровые числа кратные Н с промежутка (А..В)

Вывести на экран 2-ух цифровые числа у которых сумма цифр равна 9

Вывести на экран 2-ух цифровые числа у которых сумма цифр не равна 5

Вывести на экран 3-ох цифровые числа у которых сумма цифр равна произведению

Нахождение значения функции
Распечатать таблицу значений Y=x*x на промежутке от -10 до 10

Распечатать таблицу значений Y=3*x-5 на промежутке от -A до A

Распечатать таблицу значений Y=3*x-5 на промежутке от A до B

Функция Промежуток [-5;5]

Функция Промежуток [a;b]

Нахождение сумм числовых последовательностей
Найти суму чисел от 1 до 100

Найти суму парных двухцифровых чисел и вывести результаты промежуточных вычислений

Найти суму 2-ух цифровых чисел на промежутке от А до В

Найти суму непарных 3-oх цифровых чисел}

Найти суму чисел не кратных 3 на промежутке от 1 до А

Найти суму чисел кратных Н на промежутке от -А до А

Найти суму чисел не кратных Н на промежутке от А до В

Найти суму корней из чисел от 1 до Н

Найти суму кубов из чисел от A до B

Нахождение колличеств чисел
Найти количество парных двухцифровых чисел

Найти количество непарных 3-oх цифровых чисел

Найти количество цифр не кратных 3 от А до В

Найти количество чисел кратных Н на промежутке от -А до А

Найти количество чисел не кратных Н на промежутке от А до В

Нахождение произведения числовых последовательностей
Найти произведение чисел от 1 до 10

Найти произведение двухцифровых чисел кратных 20

Найти произведение 2-ух цифровых чисел на промежутке от А до В c выводом промежуточных вычислений

Найти произведение цифр не кратных 3

Найти произведение чисел кратных Н на промежутке от -А до А

Найти произведение чисел не кратных Н на промежутке от А до В c промежуточными вычислениями

Среднее арифметическое числовых последовательностей
Найти среднее арифметическое чисел от 1 до 100 c точностью 2 знака после запятой

Найти среднее арифметическое парных 2-ух цифровых чисел

Найти среднее арифметическое 2-ух цифровых чисел на промежутке от А до В (A>10, BB)

Найти среднее арифметическое трёхцифровых чисел кратных 100 с выводом промежуточных результатов

Найти среднее арифметическое цифр не кратных 3

Найти среднее арифметическое чисел не кратных Н на промежутке от -А до А

Найти среднее арифметическое чисел кратных Н на промежутке от А до В

Нахождение сумм и произведений значений функции
Найти суму значений функции на промежутке от А до В
Y=x*x

Функция

Функция

Найти произведение значений функции на промежутке от А до В
Y=x*x

Функция

Функция

Найти среднее арифметическое значений функции на промежутке от А до В
Y=x*x

Функция

Функция

Найти минимальное значение функции на промежутке от А до В
Y=x*x

Функция

Функция

Найти максимальное значение функции на промежутке от А до В
Y=x*x

Функция

Функция

Найти разницу между максимальным и минимальным значением функции на промежутке от А до В
Y=x*x

Функция

Функция

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Практическая работа 7. Операторы циклов. Цикл For.

Оператор цикла For организует выполнение тела цикла, состоящего из одного оператора, с известным заранее или вычисляемым перед первой итерацией количеством итераций (повторений). Он является частным случаем цикла While. Цикл For называют циклом с параметром, так как он использует переменную порядкового типа, значение которой изменяется автоматически после каждой итерации.

Цикл For имеет два варианта: 1 вариант 2 вариант

For ИП:=НЗ to КЗ do <оператор>; For ИП:=НЗ downto КЗ do<оператор>;

где ИП – имя переменной порядкового типа; НЗ – выражение, определяющее начальное значение переменной ИП; КЗ – выражение, определяющее конечное значение переменной ИП.

Оператор For работает следующим образом:

  1. Вычисляются выражения НЗ и КЗ. Переменной ИП присваивается начальное значение НЗ.

  2. Если значение переменной больше (для 1 варианта) или меньше (для 2 варианта) конечного значения КЗ, то цикл прекращает свою работу и управление передается на оператор следующий за концом цикла. Иначе выполняется оператор тела цикла.

  3. Значение переменной ИП увеличивается (для 1 варианта) или уменьшается (для 2 варианта) на 1. Повторяются пункты, начиная с 2.

Читайте также:  Ms sql цикл insert

Во всех примерах программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, удовлетворяющее условию задачи.

Пример 1. Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 6. Программа должна вывести одно число – количество чисел, кратных 6.

Пример работы программы:

Выходные данные

3

12

25

6

2

vari, m, x, n: integer; //объявление переменных

begin

m:=0; //начальное значение m

readln(n); //ввод количества чисел

fori:=1 tondo //начало цикла от 1 до n

begin

readln(x); //вводим очередное число x

if (xmod 6=0) then //если x кратно 6, то

m:=m+1; увеличиваем счётчик m на 1

end; //конец цикла

writeln(m); //выводим количество чисел,

end. кратных 6

Пример 2. Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, кратное 3. Программа должна вывести одно число – минимальное число, кратное 3.

Пример работы программы:

Выходные данные

3

21

12

31

12

var i, n, x, m: integer; //объявление переменных

begin

readln(n); //ввод количества чисел

readln(m); //начальное значение m

fori:=1 ton-1 do //начало цикла от 1 до n-1

begin

readln(x); //вводим очередное число x

if (x

//если x < m и кратно 3, то

m:=x; запоминаем его в m

end; //конец цикла

writeln(m); //выводим минимальное число,

end. кратное 3

Пример 3. Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на 4. Программа должна вывести одно число – сумму чисел, оканчивающихся на 4.

Пример работы программы:

Выходные данные

3

14

25

24

38

vari, s, x, n: integer; //объявление переменных

begin

s:=0; //начальное значение s

readln(n); //ввод количества чисел

for i:=1 to n do //начало цикла от 1 до n

begin

readln(x); //вводим очередное число x

if (xmod 10=4) then //если x оканчивается на 4, то

s:=s+x; добавляем его в сумму s

end; //конец цикла

writeln(s); //выводим сумму чисел,

end. оканчивающихся на 4

Пример 4. Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, некратное 5.  Программа должна вывести одно число: максимальное число, некратное 5.

Пример работы программы:

Выходные данные

3

10

25

12

25

var i, n, x, m: integer; //объявление переменных

begin

m:=0; //начальное значение m

readln(n); //ввод количества чисел

fori:=1 tondo //начало цикла от 1 до n

begin

readln(x); //вводим очередное число x

if (x>m)and (x mod 5<>0) then

//если x > m и некратно 5, то

m:=x; запоминаем его в m

end; //конец цикла

writeln(m); //выводим максимальное число,

end. некратное 5

Задания.

Написать программу, которая выполняет действия, указанные ниже, и сохранить её под именем For в личной папке.

Во всех заданиях программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, удовлетворяющее условию задачи.

  1. Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, оканчивающихся на 3. Программа должна вывести одно число – количество чисел, оканчивающихся на 3.

Пример работы программы:

Выходные данные

5

13

23

24

103

340

3

  1. Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, оканчивающееся на 3. Программа должна вывести одно число – максимальное число, оканчивающееся на 3.

Пример работы программы:

Выходные данные

4

13

24

333

33

333

  1. Напишите программу, которая в последовательности натуральных чисел определяет сумму всех нечётных чисел. Программа должна вывести одно число: сумму всех нечётных чисел.

Пример работы программы:

Выходные данные

3

13

24

47

60

  1. Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, неделящееся 6. Программа должна вывести одно число – минимальное число, неделящееся на 6.

Пример работы программы:

Выходные данные

4

25

18

14

6

14

  1. Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, не оканчивающихся на 8.  Программа должна вывести одно число: количество чисел, не оканчивающихся на 8.

Пример работы программы:

Выходные данные

5

23

8

14

46

38

3

  1. Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, оканчивающихся на 0. Программа должна вывести одно число – количество чисел, оканчивающихся на 0.

Пример работы программы:

Выходные данные

5

18

10

48

50

44

2

  1. Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, оканчивающееся на 4. Программа должна вывести одно число – максимальное число, оканчивающееся на 4.

Пример работы программы:

Выходные данные

4

8

24

9

4

24

  1. Напишите программу, которая в последовательности натуральных чисел вычисляет сумму всех чисел, кратных 5. Программа должна вывести одно число: сумму всех чисел, кратных 5.

Пример работы программы:

Выходные данные

3

99

20

75

95

  1. Напишите программу, которая в последовательности натуральных чисел определяет количество всех трёхзначных чисел. Программа должна вывести одно число: количество всех трёхзначных чисел.

Пример работы программы:

Выходные данные

4

72

160

125

6

2

  1. Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, оканчивающихся на 7. Программа должна вывести одно число: количество чисел, оканчивающихся на 7.

Пример работы программы:

Выходные данные

5

57

147

630

27

72

3

Источник

for1-15

Приветствуем читателей нашего сайта! Сегодня мы с вами решим for1-15 из вот этого задачника.

For1. Даны целые числа K и N (N > 0). Вывести N раз число K.

Организовываем простой цикл от 1 до требуемого числа.

program for1;

var
K, N, i: integer;

begin
read(K, N);
for i := 1 to N do write(K, ‘ ‘); {Пишем К через пробел }
end.

Читайте также:  Как показать в блок схемах цикл for

For2. Даны два целых числа A и B (A < B). Вывести в порядке возрастания все целые числа, расположенные между A и B (включая сами числа A и B), а также количество N этих чисел.

Так как A < B, то цикл должен будет выводить все числа от А до B. Чтобы сосчитать количество чисел, используем формулу: <конечное_значение> — <начальное_значение> + 1.

program for2;

var
A, B, i, count: integer;

begin
read(A, B);
for i := A to B do write(i, ‘ ‘); {выписываем числа от меньшего к большему}
count := B – A + 1; {считаем количество чисел}
writeln;
write( ‘Количество чисел – ‘, count);
end.

For3. Даны два целых числа A и B (A < B). Вывести в порядке убывания все целые числа, расположенные между A и B (не включая числа A и B), а также количество N этих чисел.

Задача решается аналогично предыдущей. Только на этот раз используем  downto, так как числа будут двигаться сверху вниз. Чтобы исключить А и В из списка выводимых чисел, от В отнимаем 1, а к А наоборот прибавляем.

program for3;

var
A, B, i, count: integer;

begin
read(A, B);
for i := B – 1 downto A + 1 do write(i, ‘ ‘); {выписываем числа от большего к меньшему}
count := (B – 1) – (A + 1) + 1; {считаем количество чисел}
writeln;
write( ‘Количество чисел – ‘, count);
end.

For4. Дано вещественное число — цена 1 кг конфет. Вывести стоимость 1, 2, …, 10 кг конфет.
Каждую итерацию цикла выводим цену, умноженную на i.

program for4;

var
i: integer;
price_one: real;

begin
read(price_one);
for i := 1 to 10 do writeln(i, ‘ кг. стоит – ‘, price_one * i, ‘ ‘);
end.

For5°. Дано вещественное число — цена 1 кг конфет. Вывести стоимость 0.1, 0.2, …, 1 кг конфет.

Такая же программа, как предыдущая, только теперь умножаем на  i / 10.

program for5;

var
i: integer;
price_one: real;

begin
read(price_one);
for i := 1 to 10 do writeln(i / 10, ‘ кг. стоит – ‘, price_one * (i / 10), ‘ ‘);
end.

For6.Дано вещественное число — цена 1 кг конфет. Вывести стоимость 1.2, 1.4, …, 2 кг конфет.

program for6;

var
i: integer;
price_one: real;

begin
read(price_one);
for i := 1 to 5 do writeln(1 + i / 5, ‘ кг. стоит – ‘, price_one + price_one * (i / 5), ‘ ‘);
end.

For7. Даны два целых числа A и B (A < B). Найти сумму всех целых чисел от A до B включительно.

Организовываем цикл и складываем все числа.

program for7;

var
A, B, i, S: integer;

begin
read(A, B);
S := 0;
for i := A to B do S := S + i;
write( ‘Сумма – ‘, S);
end.

For8. Даны два целых числа A и B (A < B). Найти произведение всех целых чисел от A до B включительно.

Создаем цикл и умножаем все числа.

program for8;

var
A, B, i, P: integer;

begin
read(A, B);
P := 1;
for i := A to B do P := P * i;
write( ‘Произведение – ‘, P);
end.

For9. Даны два целых числа A и B (A < B). Найти сумму квадратов всех целых чисел от A до B включительно.

Организовываем такой же цикл, как и в предыдущей задаче, но одновременно суммируем квадраты всех чисел. Чтобы высчитать квадрат, используем функцию Sqr.

program for9;

var
A, B, i, S: integer;

begin
read(A, B);
S := 0; {PascalABC делает это автоматически, но если у вас другой компилятор советуем обнулять переменные вручную}
for i := A to B do S := S + Sqr(i); {складываем все квадраты}
writeln;
write( ‘Сумма квадратов – ‘, S);
end.

For10. Дано целое число N (> 0). Найти сумму 1 + 1/2 + 1/3 + … + 1/N (вещественное число).

program for10;

var
N, i: integer;
S : real;

begin
read(N);
S := 0;
for i := 1 to N do S := S + 1 / i;
write( ‘Сумма – ‘, S:1:2);
end.

For11.Дано целое число N (> 0). Найти сумму N2 + (N + 1)2 + (N + 2)2 + … + (2·N)2 (целое число).

program for11;

var
N, i: integer;
S : integer;

begin
read(N);
S := 0;
for i := N to 2 * N do S := S + Sqr(i);
write( ‘Сумма – ‘, S);
end.

For12°.Дано целое число N (> 0). Найти произведение 1.1 · 1.2 · 1.3 · …(N сомножителей).

program for12;

var
N, i: integer;
P: real;

begin
read(N);
P := 1;
for i := 1 to N do P := P * (1 + i / 10 );
write( ‘Произведение – ‘, P:1:2);
end.

For13°. Дано целое число N (> 0). Найти значение выражения 1.1 – 1.2 + 1.3 – … (N слагаемых, знаки чередуются). Условный оператор не использовать.

Для того, чтобы поменять знак, каждую итерацию цикла меняем значение специальной переменной на противоположное.

program for13;

var
N, A, i: integer;
S: real;

begin
Write(‘N = ‘);
readln(N);
S := 1.1;
A := 1; {Сначала положительное}
for i := 2 to N do {первую итерацию цикла мы уже произвели, поэтому начинаем отсчет с 2}
begin
A := -A; {Теперь отрицательное}
S := S + A * (1 + i / 10); {Складываем}
end;
Writeln(S:5:1); {Отдадим под дробную часть одно знакоместо}
end.

For14. Дано целое число N (> 0). Найти квадрат данного числа, используя для его вычисления следующую формулу:
N2 = 1 + 3 + 5 + … + (2·N – 1).
После добавления к сумме каждого слагаемого выводить текущее значение суммы (в результате будут выведены квадраты всех целых чисел от 1 до N).

program for14;

Читайте также:  Политический деловой цикл нордхауза

var
i, N: integer;
Pow: real;

begin
write(‘N = ‘);
read(N);
Pow := 0;
for i := 1 to N do
begin
Pow := Pow + (2 * i – 1);
writeln(Pow);
end;
end.

For15°. Дано вещественное число A и целое число N (> 0). Найти A в степени N: AN = A·A· … ·A (числа A перемножаются N раз).

program for15;

var
i, N: integer;
A, Pow: real;

begin
write(‘A = ‘);
read(A);
write(‘N = ‘);
read(N);
Pow := 1;
for i := 1 to N do Pow := Pow * A;
write(Pow:1:2);
end.

На сегодня все! Не забывайте кликать по кнопочкам и подписываться на обновления нашего сайта!

Источник

Решенные задачи Pascal: операторы цикла

Pascal операторы цикла — Repeat

Repeat 1: Даны положительные числа A и B (A>B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Не используя операции умножения и деления, найти количество отрезков B, размещенных на отрезке A.

Проверить:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var
a,b,temp,c:integer;
flag: boolean;
begin
writeln(‘A=’);
readln(a);
writeln(‘B=’);
readln(b);
temp:=a;
repeat
temp:=temp-b;
inc(c);
until temp-b>=0;
writeln(‘result: ‘,c);
end.

Pascal операторы цикла — While

While 1: Определите значение переменной P после выполнения следующего фрагмента программы:

1
2
3
4
5
P:=1; i:=3;
while i <= 9 do begin
P := P * (i div 3);
i := i + 1;
end;

Варианты:
1) 1
2) 3
3) 9
4) 24

Проверить:

While 2: Определите значение переменной S после выполнения следующего фрагмента программы:

1
2
3
4
5
S:=0; i:=7;
while i > 1 do begin
S := S + i div 2;
i := i – 1;
end;

Варианты:
1) S = 0
2) S = 7
3) S = 12
4) S = 24

Проверить:

While 3: Даны целые положительные числа N и K. Используя только операции сложения и вычитания, найти частное от деления нацело N на K, а также остаток от этого деления.

Решение данного задания смотрите в видео уроке по Паскалю:

While 4: Дано целое число N (> 0). С помощью операций деления нацело и взятия остатка от деления определить, имеется ли в записи числа N цифра «2». Если имеется, то вывести TRUE, если нет — вывести FALSE.

Проверить:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var
number:integer;
flag: boolean;
begin
writeln(‘введите целое число (number>0) number=’);
readln(number);
flag:=false;
while (number div 10)>0 do
begin
if (number mod 10) = 2 then flag:=true;
number:=number div 10;
end;
writeln(flag);
end.

While 5:
Дано целое число N (>1). Найти наибольшее целое число K, при котором выполняется неравенство 3K<N

* Из задачника М. Э. Абрамян (While10)

Предлагаем посмотреть разбор задачи на видео:

While 6:
Дано число A (>1). Вывести наибольшее из целых чисел K, для которых сумма 1+1/2+…+1/K будет меньше A, и саму эту сумму

* Из задачника М. Э. Абрамян (While14)

Проверить:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var
Temp:Real;
A,K :Integer;
begin
Write(‘Введите A: ‘);
Readln(A);
K:=0;
Temp:=0;
while Temp<=A do
begin
inc(K,1);
Temp:=Temp+1/K;
end;
Writeln(K-1,’ ‘,Temp-1/K);
end.

While 7:
Дано целое число K и набор ненулевых целых чисел; признак его завершения — число . Вывести количество чисел в наборе, меньших K

* Из задачника М. Э. Абрамян (Series14)

Проверить:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var
i,R,K:Longint;
begin
write(‘Введите K : ‘);
readln(K);
R:=1;
i:=0;
while(R<>0) do
begin
write(‘Введите число из набора: ‘);
Readln(R);
if R<K then i:=i+1;
end;
i:=i-1;
Writeln(i);
readln;
end.

While 8:
Спортсмен-лыжник начал тренировки, пробежав в первый день 10 км. Каждый следующий день он увеличивал длину пробега на P процентов от пробега предыдущего дня (P — вещественное, 0<P<50). По данному P определить, после какого дня суммарный пробег лыжника за все дни превысит 200 км, и вывести найденное количество дней K (целое) и суммарный пробег S (вещественное число).

* Из задачника М. Э. Абрамян (While16)

Проверить:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var
P, S, D:Real;
K :Integer;
begin
Write(‘Введите процент: ‘);
Readln(P);
K:=1;
D:=10;
S:=10;
while S<=200 do
begin
inc(K,1);
D:=D+D*P/100;
S:=S+D;
end;
Writeln(K,’ ‘,S);
end.

Pascal операторы цикла — For

For 1: Дано вещественное число — цена 1 кг конфет. Вывести стоимость 0.1, 0.2, …, 1 кг конфет.

* Из задачника М. Э. Абрамян

Проверить:

1
2
3
4
5
6
7
8
9
10
11
12
var c,m:real;
i:integer;
begin
writeln(‘Цена?’);
readln(c);
m:=0.1;
for i := 1 to 10 do
begin
writeln(‘ price of ‘,m, ‘ kg = ‘,c*m);
m:=m+0.1;
end;
end.

For 2: Даны два целых числа A и B ( A<B ). Вывести в порядке убывания все целые числа, расположенные между A и B (не включая числа A и B), а также количество N этих чисел.

* Из задачника М. Э. Абрамян

Проверить:

1
2
3
4
5
6
7
8
9
10
11
var a, b, i: integer;
begin
writeln(‘A:’);
readln(a);
writeln(‘B:’);
readln(b);
for i:= b-1 downto a+1 do
write(i:3 );
writeln;
writeln(‘kolvo: ‘,b-a-1);
end.

For 3:
Дано целое число N>0. Найти сумму

* Из задачника М. Э. Абрамян (For11)

Проверить:

1
2
3
4
5
6
7
8
9
var
N, Rez,i :Integer;
begin
Write(‘Введите N: ‘);
Readln(N);
rez:=0;
For i:=0 to N do Rez:=Rez+sqr(N+i);
Writeln(Rez);
end.

Сейчас предлагаем решить сложную олимпиадную задачу на Паскале:

Пять делителей: Найти сумму всех чисел от 1 до заданного n, имеющих ровно пять делителей. Единица и само число входят в число его делителей

Проверить:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var c,n,s,k,i:integer;
begin
c:=0;
s:=0;
readln(n);
for i:=2 to n do
begin
k:=i;
while k>0 do begin
if i mod k = 0 then
c:=c+1;
k:=k-1;
end;
if c= 5 then s:=s+i;
c:=0;
end;
writeln(s);
end.

Источник