Данная разработка содержит теоретический материал, примеры готовых программ, и задания для самостоятельного выполнения обучающимися.
К учебнику: Информатика. 10 класс. Углубленный уровень. В 2 ч. Поляков К.Ю., Еремин Е.А. М.: 2013 — Ч.1 - 344с., Ч.2 - 304с.
К уроку: § 58. Циклические алгоритмы
0014db37-daecd448.doc
ПРАКТИЧЕСКОЕ ЗАНЯТИЕ
ЦИКЛИЧЕСКИЕ ПРОЦЕССЫ
Циклические конструкции используются в тех случаях, когда необходимо повторять
какиелибо действия. Различают два вида циклов: с заданным количеством шагов и циклы,
в которых количество шагов заранее неизвестно, а цикл завершается при выполнении
условия.
1. ЦИКЛ С ПРЕДУСЛОВИЕМ или цикл "ПОКА".
Сначала проверяется условие и тело цикла выполняется ПОКА УСЛОВИЕ ИСТИННО,
если условие становится ЛОЖНЫМ, то происходит выход из цикла.
Реализуется этот цикл инструкцией:
WHILE <условие> DO <тело цикла>
while (вайл) пока, do (ду) – делать (выполнять).
В тело цикла входит только один оператор! Если нужно объединить в тело цикла
несколько операторов, то применяются операторные скобки beginend.
Условие может быть простым или сложным, если применить слова: NOT, AND, OR.
ПРИМЕРЫ ПРОСТЕЙШИХ ЦИКЛИЧЕСКИХ ПРОЦЕССОВ.
Пример 1. Вывести 20 одинаковых символов на экран.
Program Simwol;
var i,h,n: integer;
Begin
i:=1; h:=1; n:=20;
while i<=n do
begin
write('* ');
i:=i+h;
end;
End.
{Действительно ли на экране 20 символов?}
{пронумеруем символы:}
while i<=n do
begin
writeln(i,' * ');
i:=i+h;
end;
Пример 2. Вывести на экран
числа от 1 до 20.
Пример 3. Вывести на экран
числа от 20 до 1.
Program Ch;
var i,h,n: integer;
Begin
i:=1; h:=1; n:=20;
while i<=n do
begin
write(i,' ');
i:=i+h;
end;
Program Ch;
var i,h,n: integer;
Begin
i:=20; h:=1; n:=1;
while i>=n do
begin
write(i,' ');
i:=i+h;
end; End.
End.
ПРИЛОЖЕНИЕ К ПРАКТИЧЕСКОМУ ЗАНЯТИЮ
Пример 4. Вывести на экран числа, оканчивающиеся на 7 на интервале от 100 до 100.
Program Ch;
var i,h,n: integer;
Begin
i:=100; h:=1; n:=100;
while i<=n do
begin
if i mod 10=7 then write(i,' ');
i:=i+h;
end;
End.
нечетные:
четные:
делящиеся на 7:
нечетные и делящиеся на 7:
if odd(i) then write(i,' ');
if not(odd(i)) then write(i,' ');
if i mod 7=0 then write(i,' ')
if (odd(i)) and (i mod 7=0) then write(i,' ');
{ s:=0 обнуление суммы }
Пример5. Найти сумму ряда: 1, 2, ..20.
Тип переменной S может быть integer, если сумма чисел не более 32767.
Program Summa;
var i,n,h,s: integer;
Begin
i:=1; n:=20; h:=1; s:=0;
while i<=n do
begin
s:=s+i;
i:=i+h;
end;
write('Сумма чисел натурального ряда от 1 до 20 равна ',s);
End.
Пример 6. Найти сумму ряда: 0.1, 0.3, 0.5, .. , 32.5
Program Summa;
var x,h,n,s: real;
Begin
{ процесс суммирования }
{ s сумма }
{ h шаг }
{ x – начальное значение параметра цикла}
{ n конечное значение параметра цикла.}
s:=0; x:=0.1; h:=0.2; n:=32.5;
while (x<=n) do
begin
s:=s+x; { суммирование очередного элемента }
x:=x+h; { изменение параметра цикла на шаг }
end; writeln('Сумма ряда: 0.1, 0.3,.., 32.5 S=',s);
End. ПРИЛОЖЕНИЕ К ПРАКТИЧЕСКОМУ ЗАНЯТИЮ
продолжение
Пример 7. Вывести на экран таблицу функции Y=sin(х),
где х изменяется от 10 до 90 с шагом 5 градусов.
Program Tabl;
var x, h, n, y: real;
Begin
writeln(' Таблица функции y=sin(х)');
x:=10; h:=5; n:=90;
while x<=n do
begin
y:=sin(x*pi/180);
writeln('X=',x,' Y=',y);
x:=x+h;
end;
End.
З А Д А Н И Я:
1. Найти сумму ряда: 5.6, 5.9, .. ,9.7
2. Получить таблицу функции y=cos(5∙х), где х изменяется от 1 до 10 с шагом 0.5
2
3. Найти произведение чисел от 6.7 до 7.8 с шагом 0.4
4. Сравнить, что больше сумма ряда 8.5, 8.6,...,40.9 или произведение чисел от 1 до 3 с
шагом 0.25
Практическая работа в PascalABC с циклом While
Практическая работа в PascalABC с циклом While
Практическая работа в PascalABC с циклом While
Практическая работа в PascalABC с циклом While
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.