ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 28.03.2024
Просмотров: 8
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Раздел | | |||||||
ФИО педагога | Муханова Э.А. | |||||||
Дата | 10.01-11.01-13.01 | |||||||
Класс 8 кл | Количество присутствующих: | отсутствующих: | ||||||
Тема урока | Цикл с предусловием. While | |||||||
Цели обучения, которые достигаются на данном уроке (ссылка на учебную программу) | 8.3.3.1 использовать операторы выбора и циклов в интегрированной среде разработки программ | |||||||
Цель урока | Формировать у учащихся умения строить блок схему алгоритма и решать жизненные задачи используя цикл с постусловием | |||||||
Критерии успеха | формулируют правила записи оператора цикла while - определяют значение переменных после выполнения оператора цикла while - используют оператор цикла с предусловием whileпри написании программ | |||||||
Ход урока | ||||||||
Этапы урока | Деятельность учителя | Деятельность обучающихся | Оценивание | Ресурсы | ||||
Организационный этап | Организационный момент. Учащиеся и учитель приветствуют друг друга. Соблюдение норм речевого этикета, эмоциональный настрой на урок способствует воспитанию уважения к себе и другим. Scheduled Lesson Activities) - Hello? How are you? Who is not in class? What is the date today? Актуализация знаний: «Вопрос - ответ»: Какие виды циклов вы знаете? Что такое тело цикла? Как вы понимаете условие повторения цикла? Можно ли вначале проверить условие повторения цикла, а потом выполнить тело цикла? Постановка цели урока(совместно с учащимися): Improve understanding of loops; Apply ‘While’ loop | Показывают решения задач, при возникновении вопросов разбирают с учителем | Интерактивное обучение | Диалогическое обучение Саморегулируемое обучение Критическое мышление | ||||
Изучение нового материала | Циклспредусловием–этоцикл,которыйповторяетсядотехпор,покаусловиевыполняется(истинно).Блок-схемацикласпредусловиемпредставленанарисунке1. Рис.1. ДляреализациицикласпредусловиемиспользуетсяоператорWhile.ВобщемвидеоператорWhileнаязыкепрограммированияПаскальможетбытьпредставлентак: While<условие>doзаголовокцикла Begin <оператор_1>;телоцикла <оператор_2>; End; Важнопомнить: Еслиусловиесразуоказываетсяложным,циклспредусловиемневыполнитсяниразу! Втелецикладолжныбытьоператоры,которыевкакой-томоментизменятзначениеусловия,сделавеголожным.Еслиэтогонеслучится,циклбудетбесконечным,тоестьпрограмма«зациклится». Зациклившуюсяпрограммуследуетостановитьспомощьюкоманды Программа->Завершить,иначеонабудетвыполнятьсябесконечно(точнее,довыключениякомпьютера). Воператорахforиwhileточкасзапятойнеставитсянипередсловомdo,нипосленего! Пример1.ВычислитьсуммупервыхNнатуральныхчисел. programsumma_N_2; vari,n,sum:integer; begin write('n=');{вводисходныхданныхсклавиатуры} readln(n);{n-количествопервыхнатуральныхчисел} sum:=0;{присвоимпеременнойsumначальноезначение0,} i:=1;{апеременнойi-начальноезначение1} whilei<=ndo{покаi<=nвыполнить} begin sum:=sum+i;{телоцикла} i:=i+1;{переменнаяIменяетсявнутрицикла,иеевеличинаопределяеточередноеповторениециклаилизавершениеего} end; writeln('Sum=',sum);{выводрезультата} end. Результатвыполненияпрограммывслучаевводаn=10:
Пример2.Сколькослагаемыхдолжнобытьвсумме2+4+6+8+….,чтобыэтасуммаоказаласьбольшенекоторогоданногонатуральногочислаN. Программарешениязадачиможетиметьвид: ProgramKol_slag; vari,x,sum,n:integer;{i-счетчикслагаемых, впеременнуюxбудутзаписыватьсяслагаемые, впеременнойsumбудетнакапливатьсясумма} begin x:=2;{первоеслагаемоеравно2} i:=1;{начальноезначениесчетчикаслагаемыхравно1} sum:=2; write('n='); readln(n);{вводчислаn} whilesum<=ndo{покаsum<=nвыполнитьтелоцикла} begin x:=x+2;{следующееслагаемоена2большепредыдущего} i:=i+1;{увеличениесчетчикаслагаемыхна1} sum:=sum+x;{прибавлениеочередногослагаемогоксумме} end; writeln(i,'слагаемых'); end. РезультатвыполненияпрограммыприN=30:
CпомощьюоператораWhileможнорисоватьразличноеколичествографическихфигур.Например,заполнятьэкранкругамиразличнымспособом:вдольверхнегокраяэкрана,вдольнижнегокрая,вдольлевогокраяит.д.. Пример3.Нарисоватьрядзакрашенныхвзеленыйцветкруговрадиуса20пикселейвдольверхнегокраяэкранамонитора. Программарешениязадачиможетиметьвид: programkrugi; usesgraphabc; varx,y,r:integer; begin clearWindow(clViolet); setBrushColor(clGreen);{устанавливаетзеленыйцветкисти} x:=22;y:=22;r:=20;{начальныезначенияx,y,r} whilex<660do begin circle(x,y,r);{рисуеточереднойкруг} x:=x+40;{смещаеткоординатуxдляследующегокруга} end; end. Спомощьюоператораwhileможнореализоватьимитациюдвиженияграфическихобъектов. Пример4.Организоватьимитациюдвиженияшарикапоэкранумонитора. Длятогочтобыграфическийобъектдвигалсяпоэкрану,необходимоорганизоватьповторениеследующихкоманд: 1)Нарисоватьобъект; 2)Организоватьвременнуюпаузу; 3)Стеретьобъект; 4)Изменитькоординатыобъекта. Программарешениязадачиможетиметьвид: programdvigenie; usesgraphabc; varx,y,r:integer; begin x:=22;y:=22;r:=20;{начальныекоординатыобъекта} whilex<800do{повторениеследующихдействий} begin setBrushColor(clGreen);{задаемцветобъекта} circle(x,y,r);{рисуемобъект} Sleep(10);{паузавмиллисекундах} setBrushColor(clWhite);{выбираемцветфона} setPenColor(clWhite);{стираем(закрашиваемобъект} circle(x,y,r);{цветомфона)} x:=x+4;{изменяемкоординатыобъекта} end; end. Реализуйтепрограммуdvigenieнакомпьютереиувидитерезультатеевыполнения. Израссмотренныхвышепримеровможносделатьвывод:переменным,входящимвусловиезаголовкацикласпредусловиемдолжныбытьприсвоеныопределенныеначальныезначениядовходавцикл,автелецикладолжныбытьоператоры,которыеизменяютзначенияусловиядотехпор,покаононестанетложным. Как переводится слово While? В программировании оно означает «пока условие верно, нужно выполнять действия». A ‘for’ loop is usually used when we repeat something for definite number of times. A ‘while’ loop is used when a program needs to loop until a particular condition happens. For example, while wheels of the train rotate, the train keeps moving. If they stop the train also will stop. Блок-схема цикла с предусловием: Общий вид оператора: while (условие) { Блок действий; } Давайте попробуем, соблюдая перечисленные выше правила записи цикла с предусловием, составить блок-схему и записать код с использованием оператора while для решения задачи, которую мы решали на прошлом уроке (сумма чисел от 1 до 1000). #include using namespace std; int main() { setlocale(0, ""); int i = 0; int sum = 0; while (i < 1000) { i++; sum += i; // краткая запись выражения sum=sum+i } cout << "Сумма чисел от 1 до 1000 = " << sum << endl; return 0; } Работа в парах. Написать программу, которая выводит на экран квадраты всех целых чисел от 1 до 10. Вывести на экран все четные числа от 1 до 20 var k: integer; Begin k:=2; while k<=20 do begin writeln (k); k := k+2; end; end. Маше надо решить 100 примеров. Она решила, что в первый день решит - 1 пример, во второй - 2, в третий - 3 и так далее. Сколько дней Маша будет решать примеры? var p, sum: integer; Begin sum := 0; p:=1; while sum<=100 do begin sum := sum+p; p := p+1; end; writeln (p); end. | Ученики отвечают на вопросы, дают подробные пояснения к ответам: Ученики выполняют задания, ответ записывают в тетрадь. Выполняют самопроверку. | Словесная оценка учителя . Взаимооценивание Стратегия «Стикер | Критическое мышление. Саморегулируемое обучение (самонаправленность в процессе работы над заданиями). | ||||
Рефлексия | Повторить формулы и определения по теме: «Погрешности» В конце урока учащиеся проводят рефлексию: - что узнал, чему научился - что осталось непонятным - над чем необходимо работать | Учащиеся подытоживают свои знания по изучаемой теме. | | |