Тема: «ПОВТОРЕНИЕ ТЕМЫ «КОНСТРУКЦИЯ ВЕТВЛЕНИЕ В PASCALL»». Тип урока: смешанный, объясне6ние нового материала, повторение старого, решение задач. Цели: I. Образовательные: 1. Изучить конструкцию Ветвление, ее виды. 2. Обеспечить обобщение и систематизацию новых знаний, выработать на основе приобретаемых знаний соответствующие умения и навыки. 3. Объединить старые знания с новыми. 4. Проверить знание полученных данных. II. Воспитательные: Воспитание трудолюбия, самостоятельности, организации своей собственной и совместной работы, дисциплинированности, аккуратности. III. Развивающие: 1. Развитие речи: обогащение, усложнение ее словарного запаса. 2. С помощью практических заданий развивать у учеников познавательный интерес, умение применить знания на практике. Прививать навыки самостоятельной работы на уроке. 3. Развивать логическое мышление. План урока: 1. 2. 3. 4. 5. 6. 7. Организационный момент. Разминка. Решение задач по теме: «Линейная конструкция». Домашнее задание по старой теме. Объяснение нового материала. Решение задач по новой теме. Домашнего задания. Ход урока: 1. Организационный момент Здравствуйте. Меня зовут Саида Дмитриевна. Этот урок мы посвятим повторению старой темы и изучению новой темы. Открываем тетради, записываем дату и тему «КОНСТРУКЦИЯ ВЕТВЛЕНИЕ В PASCALL». 2. Разминка. Что такое программа – это запись на языке программирования. Расскажите о строении или структуре программы: - заголовок (Program); - разделы описания с типами; - тело или раздел операторов. Какие команды могут составлять тело программы? - линейные; - ветвление. Какие операции относятся к линейным командам? - Readln; - Read; - Writeln; - Writen; - присвоение. №1. Найти среди приведённых ниже последовательностей символов те, которые могут быть именами переменных: a) A; + б) 1B_C; в) B1_C; + г) hello; + д) ABS(x); - е) a*4; - ж) 1 + 5; - з) Arctan; - №2. Запишите на языке Паскаль следующую формулу: (a b c) 2 2 ab ab bc (sqr(a+b+c)/(a+b)) - ((2*sqrt(a*b))/(b-c)) Запишите следующую формулу на математическом языке: (abs(a-b)/sqr(a*b))+((a+b)/sqr(a+sqrt(b))) |𝑎−𝑏| (𝑎∗𝑏) + 𝑎+𝑏 (𝑎+𝑏 ) №3. Вычислить значение выражений: а) SQRT(4)+5/3-2; (5/3) б) –ABS(-SQRT(36-32)); (-2) в) 8 div 2 – sqr (2); (div - деление на цело = 0) г) 1 mod 1; (mod - остаток от деления = 0) д) 2.1 div 3; (решение не возможно) е) trunc(1.5)+round(1.5); (trunk – отбрасывает дробную часть, round – округляет в большую сторону = 3) ж) 7+6 mod 3 + succ(2). (succ – возвращает следующее целое число = 10) №4. Определить тип результата: а) 18/2; (real) б) trunc(25.2); (integer, byte, longint) в) 5.2*1.5; (real) г) 15 mod 10; (integer, byte, longint) д) 5 – 2*1.5; (real) е) round (-7.56). (integer, byte, longint) №5. Определить типы, в диапазон которых могли бы входить следующие значения: а)0; (integer, byte, longint) б)’h’; (char) в) –32768; (integer, byte, longint) г)TRUE; (boolean) д)5; (integer, byte, longint) е)32769; (real) ж)-3.0; (real) з)’*’. (char) 3. Решение задач по теме: «Линейная конструкция». Пример 1. Ввести трехзначное число и проверить, равна ли сумма первых двух чисел сумме последних двух чисел. A+B=B+C ? X A B C 158 1 5 8 начало Ввести Х, A, B, C A:=x div 100 C:=x mod 10 B1:=x div 10 B:=x mod 10 Вывести ‘’Суммы равны, A+B=B+C’’ конец Program prim1; Var X, A, B, B1, C: integer; Begin Write (‘Введите Х’); Readln (X); A:=x div 100; C:=x mod 10; B1:=x div 10; (15) B:=x mod 10; (5) Writeln (‘Суммы равны’, A+B=B+C); Readln; End. Пример 2. Проверить, будет ли квадрат заданного трехзначного числа равен кубу суммы цифр этого числа. Х2=(А+B+C)3 ? X A B C 158 1 5 8 начало Ввести Х, A, B, C A:=x div 100 C:=x mod 10 B1:=x div 10 B:=x mod 10 Вывести ‘’квадрат числа равен кубу суммы цифр, sqr(X)= sqr(A+B+C)*(A+B+C)’’ конец Program prim1; Var X, A, B, B1, C: integer; Begin Write (‘Введите Х’); Readln (X); A:=x div 100; C:=x mod 10; B1:=x div 10; B:=x mod 10; Writeln (‘квадрат числа равен кубу суммы цифр’ , sqr(X)= sqr (A+B+C) * *(A+B+C)); Readln; End. Пример 3. (персонально) 1) Дано четырехзначное число. Выяснить читается ли оно одинаково справа на лево и наоборот. Program prim1; Var X, A, B, B1, C, D, D1: integer; Begin Write (‘Введите Х’); Readln (X); A:=x div 1000; C:=x mod 10; B1:=x div 100; B:=B1 mod 10; D1:= x div 100; D:= D1 mod 10; Writeln (‘число читается одинаково справа на лево и наоборот’ ,(A=D) and (B=C)); Readln; End. 2) Выяснить, будет ли введенное целое число четным двухзначным числом. 4. Домашнее задание. Найти сумму цифр трехзначного числа и выяснить является ли оно четным. 5. Объяснение нового материала. Как вы уже знаете, существует 2 вида команд: линейная и ветвление. Сегодня мы и будем изучать конструкцию ветвление. Давайте для начала Вы приведете примеры таких конструкций из жизни. А теперь попытайтесь своими словами сказать, что же такое алгоритм с ветвлением. Ветвление Вычислительный процесс называется разветвляющимся, если в зависимости от выполнения определённых условий он реализуется по одному из нескольких, заранее предусмотренных (возможных) направлений. Каждое отдельное направление называется ветвью вычислений. Выбор той или иной ветви осуществляется уже при выполнении программы в результате проверки некоторых условий и определяется свойствами исходных данных и промежуточных результатов. При составлении программы должны быть учтены все возможные ветви вычисления. Ветвление имеет полную и неполную форму. Полная форма ветвления Формат записи полной формы ветвления: 1) алгоритмический язык: если <условие> то <действие 1> иначе <действие 2> всё 2) блок-схема: 3) язык Pascal: IF <условие> THEN <действие 1> ELSE <действие 1>; Перед ELSE “;” не ставится, после THEN и ELSE допускается только 1 оператор, иначе ставятся операторные скобки. Неполная форма ветвления Формат записи полной формы ветвления: 1) алгоритмический язык: если <условие> то <действие 1> всё 2)блок-схема: 3) язык Pascal: IF <условие> THEN <действие 1>; После THEN допускается только 1 оператор, иначе ставятся операторные скобки. 6. Решение задач по новой теме. Пример 1. Ввести трехзначное число и проверить, равна ли сумма первых двух чисел сумме последних двух чисел. начало Ввести Х, A, B, C A:=x div 100 C:=x mod 10 B1:=x div 10 B:=x mod 10 + A+B=B+C Вывод ‘истина’ Program prim1; Var X, A, B, B1, C: integer; Вывод ‘ложь’ конец Begin Write (‘Введите Х’); Readln (X); A:=x div 100; C:=x mod 10; B1:=x div 10; B:=x mod 10; If (A+B=B+C) then Writeln (True) Else writeln (False); Readln; End. Пример 2. Составьте решение для системы: 2х , если х > 0, У= { х , если х ≤ 0. начало Ввести Х, У + х>0 у:=2*х у:=sqr(х) Вывести У Program prim1; Var X, У: integer; Begin Write (‘Введите Х’); Readln (X); If х > 0 then у:=2*х Else у:=sqr(х); конец Writeln (y); Readln; End. Пример 3. (персональный) Даны 2 точки в плоскости прямоугольной системы координат. Составить алгоритм определяющий, какая из точек находится ближе к началу координат. Пример 4. (персональный) Написать алгоритм определяющий: поместится круг площадью s1 в квадрат площадью s2? 7. Домашнее задание. Проверить, будет ли квадрат заданного трехзначного числа равен кубу суммы цифр этого числа. Муниципальное бюджетное общеобразовательное учреждение - средняя общеобразовательная школа №27 им. Н.С. Лескова с углубленным изучением английского языка г. Орла Конспект урока в 9 классе по теме: «ПОВТОРЕНИЕ ТЕМЫ «КОНСТРУКЦИЯ ВЕТВЛЕНИЕ В PASCALL» Учитель: Щёлокова С.Д.