Практическое задание №25 Тема: Разработка программы с использование циклов
план-конспект занятия по информатике и икт (9 класс) по теме
Практическое задание №25
Тема: Разработка программы с использование циклов
Скачать:
Вложение | Размер |
---|---|
pr_razrabotka_programmy_s_ispolzovanie_tsiklov.docx | 34.87 КБ |
Предварительный просмотр:
Практическое задание №25
Тема: Разработка программы с использование циклов
Задание:
- Прочитать текст «Цикл с предусловием», изучите примеры.
- Составить блок-схему по готовому фрагменту программы.
- Прочитать текст «Цикл с параметром (арифметический)», изучите примеры.
- Определить значение переменной S.
- Определить сколько раз будет выполняться тело цикла.
- Прочитать текст «Цикл с постусловием», изучите примеры.
- Определить сколько раз будет выполняться тело цикла.
Порядок выполнения:
Задание №1. Цикл с предусловием.
Цикл – это такая структура, которая позволяет многократно повторять одни и те же действия.
Существует три вида циклов:
- Цикл с предусловием;
- Цикл с параметром (арифметический цикл);
- Цикл с постусловием.
Цикл с предусловием организует циклическое выполнение некоторой последовательности операторов, пока условие выхода из цикла имеет значение «истина».
ПОКА условие истина ПОВТОРЯТЬ
Тело цикла
КОНЕЦ ЦИКЛА
While <условие> Do
<тело цикла>;
Примеры:
a:=7; a:= -7;
While a>5 Do While a<5 Do
a:=a-1; a:=a+1;
- Условие выхода из цикла всегда имеет переменную <параметр>. Значение этой переменной необходимо явно изменять в теле цикла таким образом, чтобы условие выхода из цикла в какой-то момент времени приняло значение «ложь» (т.е., чтобы произошел выход из цикла).
Например:
s:=4;
While s>=0 Do
s:=s-1;
В данном примере параметром цикла является переменная s. Значение этой переменной в цикле уменьшается каждый раз на 1. В какой то момент времени значение переменной s станет меньше нуля и произойдет выход из цикла.
- Если в теле цикла значение параметра не изменяется или изменяется не правильно, то происходит зацикливание, т.е. цикл выполняется бесконечно.
Например:
s:=1;
While s>0 Do
Writeln(s);
В данном примере параметром является переменная s, но ее значение не изменяется в теле цикла, поэтому условие выхода из цикла всегда будет иметь значение «Истина» и цикл будет выполняться бесконечно.
- Если условие выхода сразу имеет значение «ложь», то тело цикла не выполнится ни разу.
Например:
a:=1;
While a<0 Do
Writeln(a);
- Если тело цикла содержит более одного оператора, то его заключают в операторные скобки.
Например:
a:=1;
While a>0 Do
Begin
Writeln(a);
a:=a-1;
End;
Пример составления блок-схемы по готовому фрагменту программы:
Program summa;
Var A, S: real;
Begin
S:=0;
A:=0;
While A<=2.0 do
Begin
S:=S+A;
A:=A+0.1;
End;
Writeln(‘Сумма=’, S);
End.
Задание №2. Составить блок-схему по готовому фрагменту программы.
Program cikl;
Var
K, Max: real;
N:byte;
Begin
Max:=0;
N:=0;
While N<=10 do
Begin
Write (‘Введите число’);
Readln (K);
IF Max
Max:=K;
N:=N+1;
End;
End.
Задание №3. Цикл с параметром.
Арифметический цикл – это цикл, в котором заранее известно число его повторений.
Параметр – это простая переменная целого типа.
Начальное и конечное значение – это переменные или выражения целого типа.
Шаг может быть равен +1 или -1.
Цикл повторяется до тех пор, пока значение параметра лежит в интервале между начальным значением и конечным значение включительно.
Формат оператора:
- Если Шаг равен +1
FOR <параметр>:= <н.з.> TO <к.з.> DO
<тело цикла>;
Примеры:
For i:=1 to 5 do или For i:= -5 to -1 do
Writeln (i); Writeln (i);
- Если Шаг равен -1
FOR <параметр>:= <н.з.> DOWNTO <к.з.> DO
<тело цикла>;
Примеры:
For i:=5 downto 1 do или For i:= -1 downto -5 do
Writeln (i); Writeln (i);
!!! При этом если н.з.< к.з, то оператор не выполнится ни разу
Нельзя явно изменять параметр цикла в теле арифметического цикла, но можно использовать его в выражениях в качестве операнда.
Если тело цикла содержит более одного оператора, то оно заключается в операторные скобки begin … end.
Например:
For i:=1 to 5 do
Begin
K:=K+2;
Writeln (K);
End;
Задание №4. Определить значение переменной S после выполнения следующих операторов:
S:=1; I:=1 For I:=2 to 2 do S:=S+1/I; S=________ | S:=0; I:=1 For I:=2 to -5 do S:=S+1/I; S=________ | S:=1; I:=1 For I:=2 downto 2 do S:=S+1/I; S=________ |
Задание №5. Определить сколько раз будет выполняться тело следующих операторов цикла.
K:=0; For i:=1 to K+3 do K:=K+1; ______________ | K:=0; For i:=1 to 9 do K:=K+sqr(i); ______________ | K:=0; For i:=9 to 1 do K:=K+1; ______________ | K:=0; For i:=1 to 1 do K:=K+1; ______________ |
Задание №6. Цикл с постусловием
Цикл с постусловием – это цикл, у которого условие выхода располагается после его тела.
Условие выхода проверяется после выполнения тела цикла, поэтому тело в цикле с постусловием всегда выполняется хотя бы один раз.
ПОВТОРЯТЬ
Тело цикла
ДО выполнения Условия выхода;
REPEAT
<тело цикла>
UNTIL <условие выхода>;
Примеры:
A:=1; REPEAT A:=A+1; UNTIL A=5; | A:=1; REPEAT A:=A-1; UNTIL A= -5; | A:=5; REPEAT A:=A+1; UNTIL A>=5; |
Переменная (параметр), которая используется в условии выхода из цикла обязательно должна изменятся в теле цикла таким образом, чтобы условие выхода в какой-то момент времени стало равно «истина».
A:=1; REPEAT A:=A+1; S:=S+A; UNTIL A=5; |
Если параметр не изменяется в теле цикла или изменяется не правильно, то произойдет зацикливание (т.е. цикл будет выполняться бесконечно).
Ключевые слова REPEAT и UNTIL играют роль операторных скобок, поэтому если тело цикла содержит более одного оператора, то необходимости в использовании операторных скобок begin…end нет.
Пример:
Задача: Дано натуральное число N. Получить наименьшее число вида 2 в степени R, превосходящее число N.
Постановка задачи
Ид. N – число: integer.
Рез. K – число: integer.
Мм. K=2R
В языке программирования Turbo Pascal
отсутствует функция вычисления степени
числа.
Степень числа вычисляется как произведение
2 R = 2*2*2*2*2
R раз
Для вычисления произведения используется
стандартный алгоритм.
Словесное описание алгоритма
- Ввести число N.
- Произведению присвоить начальное значение 1.
- Вычислить число вида 2R
- Если полученное число не больше N, то повторить п.3.
- Вывести полученное число.
Трассировочная таблица
N | K | K>N | |
50 | 1 | ||
1 | 2 | ложь | |
2 | 4 | ложь | |
3 | 8 | ложь | |
4 | 16 | ложь | |
5 | 32 | ложь | |
6 | 64 | истина |
Ответ. Наименьшее число вида 2R, большее 50 равно 64
Задание №7. Определить сколько раз будет выполняться тело цикла.
S:=0; I:=0; REPEAT I:=I-1; S:=S+1/I; UNTIL I<=1; ______________ | S:=0; I:=1; REPEAT I:=I+1; UNTIL I>=2; S:=S+1/I; ______________ | S:=0; I:=1; REPEAT S:=S+1/I; I:=I+1; UNTIL I<1; ______________ |
По теме: методические разработки, презентации и конспекты
Практическое задание по теме "Вложенные циклы"
задания-шаблоны...
Практическое задание по теме "Вложенные циклы"
задания-шаблоны...
Практическая работа №23 Тема: Разработка программы на языке Паскаль с использованием операторов ввода, вывода, присваивания и простых ветвлений
Практическая работа №23Тема: Разработка программы на языке Паскаль с использованием операторов ввода, вывода, присваивания и простых ветвлений...
Практическое задание №5 Тема: Разработка Web - страницы
Практическое задание №5Тема: Разработка Web - страницы...
Практическое задание №24 Тема: Разработка программы с использование оператора ветвления и логических операций
Практическое задание №24Тема: Разработка программы с использование оператора ветвления и логических операций...
Практическое задание №26 Тема: Разработка программы с использованием одномерных массивов на языке Паскаль
Практическое задание №26Тема: Разработка программы с использованием одномерных массивов на языке Паскаль...
Практическое задание №6 Тема: Разработка сайта «Мой город»
Практическое задание №6Тема: Разработка сайта «Мой город»...