Презентация «Циклы»
Оценка 5

Презентация «Циклы»

Оценка 5
Презентации учебные
ppt
информатика
9 кл—10 кл
17.04.2024
Презентация «Циклы»
Данная презентация может использоваться на уроках при изучении темы «Программирование на языке Pascal», а так же на кружковых и факультативных занятиях по программированию. Презентация содержит 29 слайдов разделенных на 4 темы.
Циклы.ppt

Циклы Презентация по программированию

Циклы Презентация по программированию

Циклы

Презентация по программированию

Часть 1. Виды циклов.

Часть 1. Виды циклов.

Часть 1. Виды циклов.

I. Цикл с параметром. Выполняется заранее определенное количество раз

I. Цикл с параметром. Выполняется заранее определенное количество раз

I. Цикл с параметром.
Выполняется заранее определенное количество раз.

FOR – для
TO – до
DO - выполнить

ДЛЯ i:=1 ДО N ВЫПОЛНЯТЬ действие;

FOR i:=1 TO N DO действие;

FOR i:=1 TO N DO BEGIN
действие1;
действие2;
END;

FOR i:=N DOWNTO 1 DO действие;

Виды циклов. 1

если переменная i убывает

если в теле цикла несколько
действий

если в теле цикла одно действие

Действие 1 Действие 2 i,1,n Действие 1

Действие 1 Действие 2 i,1,n Действие 1

i,1,n

Действие 1

Действие 2

i,1,n

Действие 1

Действие 2

FOR i:=1 TO N DO BEGIN
действие1;
действие2;
END;

FOR i:=1 TO N DO действие1;
действие2;

Блок-схема цикла с параметром.

Виды циклов. 2

Program n1; Uses Crt, GraphABC; var x,y,i:Integer; begin x:=1; // устанавливаем координату

Program n1; Uses Crt, GraphABC; var x,y,i:Integer; begin x:=1; // устанавливаем координату

Program n1;   Uses Crt, GraphABC;   var x,y,i:Integer; begin        x:=1;             // устанавливаем координату  Х первой линии        For i:=1 to 64 do begin        // перебираем от 1 до 64                                       Line (x,0,x,400);   // рисуем очередную линию                                       x:=x + 10; // увеличиваем координату на 10                                     end; end.

Пример 1.

Вывести на экран 64 вертикальные
линии.

Виды циклов. 3

II. Цикл с постусловием. Выполняется всегда хотя бы один раз

II. Цикл с постусловием. Выполняется всегда хотя бы один раз

II. Цикл с постусловием.
Выполняется всегда хотя бы один раз.
Выполняется пока условие ложно.

REPEAT – повторять
UNTIL – до тех пор

ПОВТОРЯТЬ
действие1;
действие2;
ДО ТЕХ ПОР (ПОКА УСЛОВИЕ ЛОЖНО);

REPEAT
действие1;
действие2;
UNTIL (ПОКА УСЛОВИЕ ЛОЖНО);

Виды циклов. 4

Пример 2. Вывести на экран 64 вертикальные линии

Пример 2. Вывести на экран 64 вертикальные линии

Пример 2.

Вывести на экран 64 вертикальные
линии.

Program n2; Uses Crt, GraphABC; var x:Integer; begin     x:=1;       repeat            Line (x,0,x,400);            x:=x+10;      until (x>640) 
end.

Виды циклов. 5

повторять до тех пор пока условие ложно

WHILE (УСЛОВИЕ ИСТИННО) DO BEGIN действие1; действие2;

WHILE (УСЛОВИЕ ИСТИННО) DO BEGIN действие1; действие2;

WHILE (УСЛОВИЕ ИСТИННО) DO
BEGIN
действие1;
действие2;
END;

III. Цикл с предусловием.
Может не выполнится не разу.
Выполняется пока условие истинно.

WHILE – пока
DO – выполнять

ПОКА (УСЛОВИЕ ИСТИННО) ВЫПОЛНЯТЬ
НАЧАЛО
действие1;
действие2;
КОНЕЦ;

Виды циклов. 6

WHILE (УСЛОВИЕ ИСТИННО) DO BEGIN действие1; действие2;

WHILE (УСЛОВИЕ ИСТИННО) DO BEGIN действие1; действие2;

WHILE (УСЛОВИЕ ИСТИННО) DO
BEGIN
действие1;
действие2;
END;

условие

Действие 1

Действие 2

да

нет

WHILE (УСЛОВИЕ ИСТИННО) DO
действие1;
действие2;

условие

Действие 1

Действие 2

да

нет

Виды циклов. 7

Пример 3. Вывести на экран 64 вертикальные линии

Пример 3. Вывести на экран 64 вертикальные линии

Пример 3.

Вывести на экран 64 вертикальные
линии.

Program n3; Uses Crt, GraphABC; var x:Integer; begin      x:=1;        while(x<640) do begin                                         Line (x,0,x,400);                                       x:=x+10;                                  end; end.

Виды циклов. 8

повторять пока Х меньше 640

Часть 2. Графические задачи на циклы

Часть 2. Графические задачи на циклы

Часть 2. Графические задачи на циклы.

Задача 1. Составить программу выводящую на экран следующее изображение

Задача 1. Составить программу выводящую на экран следующее изображение

Задача 1.

Составить программу выводящую
на экран следующее изображение

Program n1;
Uses Crt, GraphABC;
var x,i:Integer;
begin
x:=1;
For i:=1 to 64 do begin
line(320,400,x,1);
x:=x+10;
end;
end.

Более короткое решение:
Program n1;
Uses Crt, GraphABC;
var x:Integer;
begin
For x:=1 to 64 do line(320,400,x*10,1);
end.

Графические задачи на циклы. 9

Задача 2. Составить программу выводящую на экран следующее изображение

Задача 2. Составить программу выводящую на экран следующее изображение

Задача 2.

Составить программу выводящую
на экран следующее изображение

Program n2;
Uses Crt, GraphABC;
var x,y:Integer;
begin
x:=1;
y:=1;
repeat
Line (x, 0 , 0 , y);
x:=x + 16;
y:=y + 10;
until (x>640);
end.

В теле цикла могут изменяться две переменные

Графические задачи на циклы. 10

Задача 3. Составить программу выводящую на экран следующее изображение

Задача 3. Составить программу выводящую на экран следующее изображение

Задача 3.

Составить программу выводящую
на экран следующее изображение

Program n3;
Uses Crt,GraphABC;
var i,j,x,y:Integer;
Begin
clrscr;
y:=10;
for i:=1 to 12 do begin
x:=10;
for j:=1 to 20 do begin
circle (x,y,10);
x:=x+30;
end;
y:=y+30;
end;
end.

Вывод i-ой строки

Изменение координаты Y строки

Графические задачи на циклы 12

Часть 3. Расчетные задачи на циклы

Часть 3. Расчетные задачи на циклы

Часть 3. Расчетные задачи на циклы.

Построить таблицу значений функции y = 3 sin x + cos 2x на интервале [-1 ; 1] с шагом Δх = 0,1

Построить таблицу значений функции y = 3 sin x + cos 2x на интервале [-1 ; 1] с шагом Δх = 0,1

Построить таблицу значений функции y = 3 sin x + cos 2x на интервале [-1 ; 1] с шагом Δх = 0,1.

Задача 1.

Program n1;
Uses Crt;
var x,y,dx:real;
begin
ClrScr;
x:= -1;
dx:=0.1;
repeat
y:= 3*sin(x) + cos(2*x);
writeln ('x= ',x:7:5,' y= ',y:7:5);
x:=x+dx;
until (x>1);
end.

Расчетные задачи на циклы 13

Построить таблицу значений функции, на интервале [-10 ; 10] с шагом Δх = 1

Построить таблицу значений функции, на интервале [-10 ; 10] с шагом Δх = 1

Построить таблицу значений функции, на интервале [-10 ; 10] с шагом Δх = 1.

Задача 2.

Построить таблицу значений функции на интервале [-1; 1] с шагом Δх = 0,1 если функция имеет вид:

x+1, при x<-0.5
Y= x2 , при -0.5<=x<=0.5
x -2, при x>0.5

Задача 3.

repeat
if (x<-0.5) then y:=x+1;
if (x>=-0.5) and (x<=0.5) then y:=x*x;
if (x>0.5) then y:=x-2;
writeln ('x= ',x:7:5,' y= ',y:7:5);
x:=x+dx;
until (x>1);

repeat
if (x<>1) then begin
y:= (x+1)/(1-x);
writeln ('x= ',x:7,' y= ',y:7:5);
end;
x:=x+dx;
until (x>10);

Расчетные задачи на циклы 14

Program n1; Uses Crt; var x,y,dx:real; begin

Program n1; Uses Crt; var x,y,dx:real; begin

Program n1;
Uses Crt;
var x,y,dx:real;
begin
ClrScr;
x:= -1;
dx:=0.1;
repeat
if (x<>0) then begin
y:= 1/x;
writeln ('x= ',x:7:5,' y= ',y:7:5);
end;
x:=x+dx;
until (x>1);
end.

Небольшое отступление:
Построить таблицу значений функции y = 1/х на интервале [-1; 1] с шагом 0,1

Program n1;
Uses Crt;
var x,y,dx:real;
begin
ClrScr;
x:= -1;
dx:=0.1;
repeat
if (x<>0) then begin
y:= 1/x;
writeln ('x= ',x,' y= ',y:7:5);
end;
x:=x+dx;
until (x>1);
end.

Изменим формат вывода

Нуля нет! А в место него число в минус шестнадцатой степени.

Расчетные задачи на циклы 15

Program n1; Uses Crt; var x,y,dx:real; begin

Program n1; Uses Crt; var x,y,dx:real; begin

Program n1;
Uses Crt;
var x,y,dx:real;
begin
ClrScr;
x:= -1;
dx:=0.1;
repeat
if (abs(x)>1e-12) then begin
y:= 1/x;
writeln ('x= ',x:7:5,' y= ',y:7:5);
end;
x:=x+dx;
until (x>1);
end.

Пусть все числа, по модулю меньшие 0,000000000001
будут для нас нулями.

Вот одно из возможных решений данной проблемы:

Расчетные задачи на циклы 16

Задача 4. Составить программу вычисления среднего арифметического числовой последовательности

Задача 4. Составить программу вычисления среднего арифметического числовой последовательности

Задача 4.

Составить программу вычисления среднего арифметического
числовой последовательности. Где количество элементов и
сами элементы вводятся с клавиатуры.

Program n4;
Uses Crt;
var i,n:integer;
a,s,sr:real;
Begin
ClrScr;
write('N=');readln(n);
s:=0;
for i:=1 to n do begin
write( ‘ Введи [ ‘ , i , ‘ ] = ‘ );Readln(a);
s:=s+a;
end;
sr:=s/n;
writeln(‘Среднее арифметическое = ',sr:10:5)
end.

Математическая запись задачи

Результат выполнения программы

Расчетные задачи на циклы 17

Задача 5. Дано целое число N (N>0)

Задача 5. Дано целое число N (N>0)

Задача 5.

Дано целое число N (N>0). Используя один цикл найти сумму
1+ 1/2 + 1/3 +…+1/N

Program n1;
Uses crt;
var s:real;
i,n:Integer;
begin
Clrscr;
Write(‘Введи n=');Readln(n);
s:=0;
For i:=1 to N do s:=s+1/i;
writeln('s=',s:10:5);
End.

Результат очень легко проверить в ручную

Расчетные задачи на циклы 18

Задача 6. Написать программу выводящую на экран все двузначные числа сумма цифр которых равна 10

Задача 6. Написать программу выводящую на экран все двузначные числа сумма цифр которых равна 10

Задача 6.

Написать программу выводящую на экран все двузначные
числа сумма цифр которых равна 10.

program n6;
Uses Crt;
var e,d:integer;
begin
ClrScr;
for d:=1 to 9 do
for e:=0 to 9 do
if d+e=10 then writeln(d*10+e);
end.

Расчетные задачи на циклы 19

Блок-схема к задаче 5 начало D,1,9

Блок-схема к задаче 5 начало D,1,9

Блок-схема к задаче 5

начало

D,1,9

E,0,9

d+e=10

Вывод
d*10+e

конец

Тело цикла

Внутренний цикл

Внешний цикл

да

нет

Расчетные задачи на циклы 20

Задача 7. ( Вычисление суммы бесконечного ряда с определенной точностью)

Задача 7. ( Вычисление суммы бесконечного ряда с определенной точностью)

Задача 7.

(Вычисление суммы бесконечного ряда с определенной
точностью).
Вычислите значение суммы ряда
с точностью Е=0,02

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

Program n7;
Uses crt;
var s,e:real; i:integer;
begin
clrscr;
s:=0; i:=1; e:=0.02;
Repeat
s:=s+1/i;
Writeln('i=',i,' слагаемое',1/i);
i:=i+1;
until (e>1/i);
writeln('S=',s:10:5);
end.

Расчетные задачи на циклы 21

Задача 8. Вычислить площадь фигуры ограниченной линиями:

Задача 8. Вычислить площадь фигуры ограниченной линиями:

Задача 8.

Вычислить площадь фигуры ограниченной линиями: X=1, X=4, Y=0,

.

Program n8;
Uses Crt;
Var x,h,s:Real;
Begin
ClrScr;
h:=(4-1)/1000;
x:=1;
Repeat
s:=s+h*1/x;
x:=x+h;
Until x>4;
writeln('Площадь = ',S:10:5);
end.

Ширина прямоугольника h:=(4-1)/1000;

Высота прямоугольника
1/x

Площадь одного прямоугольника
h*1/x

Расчетные задачи на циклы 22

Задача 9. Найти количество цифр в числе введенном с клавиатуры

Задача 9. Найти количество цифр в числе введенном с клавиатуры

Задача 9.

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

Program n8;
Uses Crt;
Var n:Real;
k:Integer;
Begin
ClrScr;
Write ('N= ');readln(n);
k:=0;
Repeat
n:=int(n/10);
k:=k+1;
Until n<0.1;
writeln('Кол-во = ',k:5);
end.

Расчетные задачи на циклы 23

Если n имеет тип integer то эту строку можно записать так: n:=n div 10;

Часть 4. Всегда ли нужны циклы

Часть 4. Всегда ли нужны циклы

Часть 4. Всегда ли нужны циклы.

Задача 10. Найти сумму целых четных чисел от 2 до 100

Задача 10. Найти сумму целых четных чисел от 2 до 100

Задача 10.

Найти сумму целых четных чисел от 2 до 100.

Program n10;
Uses crt;
var i,s:Integer;
begin
Clrscr;
s:=0;
For i:=2 to 100 do if (i mod 2 = 0) then s:=s+i;
writeln('s=',s:10);
End.

Всегда ли нужны циклы 23

Program n10; Uses crt; var s:Real; begin

Program n10; Uses crt; var s:Real; begin

Program n10;
Uses crt;
var s:Real;
begin
Clrscr;
s:=(2+100)/2*50;
writeln('s=',s:10:5);
End.

Вспомним формулу суммы n членов арифметической прогрессии

Всегда ли нужны циклы 24

Найдем количество n членов в этой последовательности:
an=a1+d(n-1)
100=2+2(n-1)
100=2+2n-2
100=2n
n=50

Подставим значения в формулу суммы

Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.
17.04.2024