Цикл с параметром For в Pascal

обучение PascalABC

Оператор for to do — цикл со счётчиком

В сегодняшней статье разберем самый популярный вид цикла в языках программирования. Это цикл с параметром. У него есть и другие названия: цикл-для, цикл со счетчиком (оператор for to do, оператор цикла с параметром).

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

Посмотрите на рисунок ниже. Там представлена блок схема for (блок-схема цикла с параметром) и его запись на языке программирования Паскаль.
цикл с параметром паскаль цикл for блок схемы
Параметр это целая величина, которая обозначается любой латинской буквой. Чаще всего используют символ — i. Начальные и конечные значения параметра тоже целые числа. Счетчик цикла может работать в двух направлениях: увеличение или уменьшение значения параметра.

Как работает цикл с параметром ?

Разберемся, как работает for в паскале. Выполнение начинается с получения переменной i начального значения а.  Затем проверяется это значение с конечным значением n. Выполнение операторов цикла происходит в случае, когда i меньше или равно n (при положительном шаге счетчика) или i больше или равно n (при отрицательном шаге счетчика).

Задачи на циклы For в паскале с решением 

Задание 1. Напишите программу, которая выводит на экран 10 строк следующего содержания: «**++==++**»

Решение:

program for1;          { название программы }
var i:integer;         { описание переменных }
begin	               { начало программы }
  for i:=1 to 10 do      { цикл выполняется 10 раз }
  writeln('**++==++**'); {вывод строки символов экран  }
end.	               { конец программы }

Задание 2. Напишите программу, которая выводит значения функции y=kx+b на интервале [2,8] с шагом 1.

Решение:

program for2;          { название программы }
var x,a,n:integer;       { x- параметр цикла, a,n - интервал}
k,b:real;                { коэффициенты функции}
begin	                 { начало программы }
  write('Введите значение k = ');readln(k);
  write('Введите значение b = ');readln(b);
  write('Введите значение начала интервала = ');readln(a);
  write('Введите значение конца интервала = ');readln(n);
  for x:=a to n do         { цикл с параметром }
    writeln('x=',x,' y=',k*x+b); {вывод значений аргумента и функции }
end.	                 { конец программы }

В результате выполнения программы получим следующий вывод на экране

цикл for в паскале пример задачи

Задание 3.  Найти сумму n первых элементов ряда чисел с точностью (е:=10**-6).

  • 1 ряд: 1/1*2 + 1/2*4 +1/3*6…
  • 2 ряд: 1/1*2*3 + 1/2*3*4 + 1/3*4*5….
  • 3 ряд: 1/1*3 + 1/2*4 +1/3*5…

Решение:

var s:real;
 i, n:integer;
begin
writeln('Введите количество элементов в ряду ');read(n);
 for i:=1 to n do
     s:=s+1/(i*i*2);
 write('Сумма ряда = ',s:1:6);
end.

Для второго ряда формула будет s:=s+1/(i*(i+1)*(i+2)); для третьего — s:=s+1/(i*(i+2));

Задание for12 (электронный задачник). Дано целое число N (>0). Найти произведение 1.1 · 1.2 · 1.3 · . . .(N сомножителей).

Решение:

uses PT4;
 var i,n:integer;
 p:real;
begin
  Task('For12');
  read(n);
  p:=1; {первоначальное произведение не должно быть нулевым}
   for i:=1 to n do
    p:=p*(1+i*0.1); { вычисление сомножителей}
  write(p);
end.

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

Решение:

uses PT4;
  var i,n,k:integer;
 s:real;
begin
  Task('For13');
   read(n);
  k:=1; {k - переменная, определяющая знак слагаемого}
   for i:=1 to n do
   begin
    s:=s+(1+i*0.1)*k; {вычисление суммы}
    k:=k*(-1); {чередование знака слагаемого}
    end;
  write(s);
end.

Вот так используется оператор цикла с параметром при решении задач.

Дополнительные задания:

iffor1 Составьте программу для проверки знаний таблицы умножения. Программа должна задать 5 вопросов на операцию умножения. Числа задаются случайным образом. Программа ведет подсчёт правильных ответов и в конце ставит оценку в соответствии с набранным количеством баллов.

iffor2 Составьте программу, которая выводит на экран все двузначные числа сумма цифр в которых равна заданному числу N. (N<19)

iffor3 Напишите программу определения количества трехзначных натуральных чисел, сумма цифр которых равна заданному числу N. Выведите эти числа на экран. Если таких чисел нет, то выведите сообщение об этом.

кнопка Код программы

Если у вас возникли трудности с пониманием решения, приведенных здесь задач, спрашивайте в комментариях.

Рекомендуем ознакомиться с темой Текстовые файлы в Pascal

Рейтинг
( 23 оценки, среднее 4.7 из 5 )
Понравилась статья? Поделиться с друзьями:
Инфоучка
Добавить комментарий

sixty − = 52

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: