Вложенные циклы
Повторение 1. Какие виды циклов вы знаете? В каких случаях применяется каждый из этих циклов? 2. Сколько раз выполняется тело цикла в следующих случаях? a) For i: =1 to 10 Do x: =x+1; b) For k: =2 to 22 do If k mod 2 =0 then s: =s+1; c) For x: =-5 to 5 do Writeln (‘*’); 3. Составить фрагмент программы возведения числа x в степень n.
Вложенные циклы Структура операторов, в которой один оператор цикла находится внутри тела цикла другого называется вложенными циклами. Оператором цикла может быть любой оператор цикла в Паскале (условный или с параметром). Например: for i: =1 to n do for j: =1 to m do <тело цикла> Тело цикла выполнится n×m раз.
Writeln (‘введите x и n ’); Readln (x, n); P: =1; For i: =1 to n do P: =p*x; Writeln (n, ’степень числа ‘, x, ‘=‘, p); Задача. Даны натуральные числа n и k. Составить программу вычисления выражения 1 k +2 k +3 k + 4 k +…nk
Решение Program ex 1; Var n, k, p, i, s, m: integer; Begin Writeln (‘введите n и k ’); Readln (n, k); S: =0; For i: =1 to n do begin P: =1; For i: =1 to k do P: =p*i; {нахождение степени k числа i } S: =s+p; End; Writeln (’Ответ: ‘, s); Readln End.
1. Модифицировать предыдущую программу так, чтобы в ней вычислялась сумма 11 +22+33 + 44+…nn 2. Найти все натуральные числа a, b и c из интервала от 1 до 20, для которых выполняется равенство: a 2+b 2=c 2
Домашнее задание 1. Найти количество делителей натурального числа. Сколько из них четных? 2. Найти все равновеликие прямоугольники, стороны которых выражены целыми числами a и b, а площадь равна S (a и b принадлежат интервалу от 1 до 20, а S вводится с клавиатуры). 3. Факториал некоторого числа равен p, найти само число.