Программирование на языке Паскаль для начинающих
презентация к уроку по информатике и икт (9 класс) на тему

Кривцова Юлия Викторовна

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

Скачать:

ВложениеРазмер
Файл programmirovanie_v_urokah.pptx888.16 КБ

Предварительный просмотр:


Подписи к слайдам:

Слайд 1

Алгоритмы и решение задач. Программирование на языке Паскаль Урок 1 .

Слайд 3

Линейные алгоритмы Пример 1. Пешеход шел по пересеченной местности. Его скорость движения по равнине v1 км/ч, в гору — v2 км/ч и под гору — v3 км/ч. Время движения соответственно t1, t2 и t3 ч. Какой путь прошел пешеход? Линейные алгоритмы - это такие алгоритмы, когда действия выполняются в одну линию друг за другом.

Слайд 4

1. Ввести v1, v2, v3, t1, t2, t3. 2. S1 := v1 * t1. 3. S2 := v2 * t2. 4. S3 := v3 * t3. 5. S := S1 + S2 + S3. 6. Вывести значение S. 7. Конец.

Слайд 5

Развилка Пример 1. Вычислить значение функции Достаточно часто то или иное действие должно быть выполнено в зависимости от значения логического выражения, выступающего в качестве условия. В таких случаях используется развилка.

Слайд 6

1. Ввести x . 2. Если x <= –12 , то y:=–x 2 3. Если x <0, то y:=x 4 4. y := x –2 5. Вывести y 6. Конец

Слайд 7

Пример 2. Дано натуральное число n . Если число нечётное и его удвоение не приведет к выходу за 32767 (двухбайтовое целое число со знаком), удвоить его, иначе — оставить без изменения. Чтобы удовлетворить условию удвоения, число n должно быть нечетным и меньше 16384. Немного теории Проверка

Слайд 8

В паскале за целочисленное деление отвечает оператор div . z := x div y x - число , которое будем делить на y (делимое) y - число , на которое будем делить число x (делитель) z - результат целочисленного деления (целочисленное частное) Таким образом, вот такая запись (55 / 6) нацело = 9 в результате использования оператора div будет выглядеть так z := 55 div 6 Запомните ! При использовании оператора div дробная часть будет отброшена!

Слайд 9

z := x mod y x - число , которое будем делить на y (делимое) y - число , на которое будем делить число x (делитель) z - остаток Например (40 / 6) с остатком = 4 с оператором mod будет такой z := 55 mod 6 И как результат получим z=1 . При делении с остатком потребуется оператор mod Запомните ! При использовании оператора mod целая часть будет отброшена!

Слайд 11

Кстати оператор mod часто используют , для определения кратности чисел. Если число кратное , то у него остаток равен 0 if v mod m = 0 then … Вернуться к задаче

Слайд 12

1. Ввести число n 2. Если число n нечетное и меньше 16384, то n := n * 2 3. Вывод n 4. Конец

Слайд 13

Циклы Если какие-либо операторы необходимо выполнить несколько раз, то их не переписывают каждый раз заново, а организуют цикл. Пример 1. Подсчитать количество нечетных цифр в записи натурального числа n .

Слайд 14

1. Ввести число n 2. K := 0 {подготавливаем счётчик} 3. Если n = 0, переход к п. 7 4. Если n mod 10 mod 2 = 1, то K := K +1 5. n := n div 10 6. Переход к п. 3 7. Вывод K 8. Конец

Слайд 15

З адача 1 : Найти произведение первых k натуральных чисел, кратных трём. Задача 2: Дана последовательность, общий член которой определяется формулой: Вычислить при n >2 сумму тех ее членов, которые больше заданного числа e .

Слайд 16

1. Ввод k 2. P := 1 {здесь накапливаем произведение} 3. T := 0 {здесь будут числа, кратные 3} 4. I := 1 5. Если I > k , переход к п. 10 6. T := T + 3 7. P := P * T 8. I := I + 1 9. Перейти к п . 5 10. Вывод P 11. Конец

Слайд 17

1. Ввести e 2. S := 0 3. A := 1/4 4. n := 3 5. Сравнить А с e . Если A> =e , переход к п. 10 6. S := S + A 7. A := (n-1)/(n*n) 8. n := n + 1 9. Переход к п . 5 10. Вывод S 11. Конец

Слайд 18

Основный операторы языка программирования Pascal . Программирование на языке Паскаль Урок 2 .

Слайд 19

Оператор Назначение Program < имя программы >; Начало программы Var < список однотипных переменных >: < тип >; Описание переменных integer Целый тип real Вещественный тип boolean Логический тип char Символьный тип string Строковый тип Const < имя константы > = < значение > Описание констант Begin < операторы > end. Операторные скобки Read ( < переменные > ) ; readln ( < переменные > ) Ввод данных

Слайд 20

Оператор Назначение < переменная >:=< выражение >; Присваивание значений Write ( < список вывода > ) ; writeln ( < список вывода > ) ; Вывод результатов If < условие > then < оператор 1 > [else < оператор 2 >]; Ветвление While < условие > do < оператор >; Цикл с предусловием Repeat < операторы > until < условие > Цикл с постусловием For < переменная >:=< н.з . > to < к.з . > do < оператор >; Цикл с параметром { любой текст в фигурных скобках } Комментарии

Слайд 21

Название Служебное слово Диапазон Объем памяти Короткое целое без знака BYTE 0…255 1 байт, без знака Короткое целое со знаком SHORTINT -128…127 1 байт, со знаком Целое без знака WORD 0…65535 2 байта, без знака Целое со знаком INTEGER -32768…32767 2 байта, со знаком Длинное целое со знаком LONGINT -2147483648… 214783647 4 байта, со знаком Целочисленные типы Операции с величинами целого типа: сложение (+), вычитание (-), умножение (*), нахождение целой части деления ( div ), нахождение остатка от деления ( mod ). Внимание! Переменной целого типа нельзя присваивать результат операции вещественного деления (/).

Слайд 22

ТИП ЗНАЧЕНИЯ ОПЕРАЦИИ ПРЕДСТАВЛЕНИЕ Вещественный ( real) От 2,9*10-39 до 1,7 *10 +38 Арифметические операции(+,-,*,/), операции отношений Формат с плавающей точкой (6 байт) single 1.5*10E – 45..3.4*10E38 4 байта double 5.0*10E – 324..1.7*10E308 8 байт

Слайд 23

ТИП ЗНАЧЕНИЯ ОПЕРАЦИИ ПРЕДСТАВЛЕНИЕ Логический ( boolean ) True , false Логические операции, операции отношений 1 – True , 0- false (1 бит)

Слайд 24

ТИП ЗНАЧЕНИЯ ОПЕРАЦИИ ПРЕДСТАВЛЕНИЕ Символьный тип ( char) Символы компьютерного алфавита Операции отношений Коды таблицы символьной кодировки( 1 байт) char -переменная «символ», Например, если нужно узнать 5 букву в слове "слон" и поместить ее в переменную типа char то будет ошибка. Код таблицы символьной кодировки состоит из 256 символов, и каждый имеет свой номер. Чтобы узнать например номер буквы " п " нужно ввести команду ord (' п '); Чтобы узнать чей номер 115 в этом словаре, нужно набрать команду chr (115) ; которая нам вернет букву, которая в этом "букваре" под номером 115.

Слайд 25

ТИП ЗНАЧЕНИЯ ОПЕРАЦИИ ПРЕДСТАВЛЕНИЕ Строковый тип ( string) var s: string [ n ]; var s: string ; n - максимально возможная длина строки - целое число в диапазоне 1..255. Если этот параметр опущен, то по умолчанию он принимается равным 255. Строковые константы записываются как последовательности символов, ограниченные апострофами. Пустой символ обозначается двумя подряд стоящими апострофами. Если апостроф входит в строку как литера, то при записи он удваивается.

Слайд 26

program Modul1_1; {Заголовок программы.} var {Начало раздела описания переменных.} a, b, c: integer; {Описание трех переменных целого типа.} begin {Начало тела программы.} writeln ('Введите два целых числа => '); {Вывод на экран запроса входных данных. Данный оператор writeln выведет на экран фразу заключенную в апострофы.} readln (a, b); {Ввод значений переменных a и b .} c:= a+b ; {Переменной c присваивается значение суммы переменных a и b .} writeln ('Сумма введенных чисел равна ', c ); {Вывод на экран полученной суммы ..} writeln (' Нажмите Enter'); {Вывод на экран сообщения.} readln ; {Ожидание нажатия клавиши Enter.} end.

Слайд 27

Экспериментальные задачи

Слайд 28

Измените программу Modul1_1 так, чтобы она находила произведение двух целых чисел. Запустите измененную программу со следующими входными данными: a=3456, b=789. Выполнение вашей программы или прервется сообщением Run-time error , или вы получите неправдоподобный (отрицательный) результат. Найдите экспериментальным путем тот интервал значений переменных a и b , когда результат умножения будет правильным. Объясните, почему это так. Тип результата должен соответствовать типу операндов, а если операнды относятся к различным целым типам, то выдается ошибка. Диапазон значений типа integer от -32768 до +32767. В данном случае результат вычисления будет верным если вводить числа от -181 до +181.

Слайд 29

Измените в программе Modul1_1 оператор c:=a+b на c:=a-(a div b )* b . Какое действие производит операция div над переменными целого типа? Измените вывод результата так, чтобы текстовая строка отражала результат вашего исследования. var a,b,c : integer; begin writeln (' введите два целых числа'); readln ( a,b ); c:= a- (a div b)*b; writeln (' Остаток от деления числа а на b равен', c); readln ; end.

Слайд 30

Добавьте к программе предыдущего задания (№2) переменную с именем d , оператор присваивания d:=a mod b ; и оператор вывода на экран writeln ('????', d );. Какое действие выполняется операцией mod ? Замените знаки вопроса пояснениями его работы. var a,b,d : integer; begin writeln (' введите два целых числа'); readln ( a,b ); d:= a mod b; writeln (' Остаток от деления a на b',d ); readln ; end.

Слайд 31

Целый тип данных. Программирование на языке Паскаль Урок 3 .

Слайд 32

a:=19 div 4; {a=4} a:=19 mod 4; {a=3} a:=19 div -4; {a=-4} a:=19 mod -4; {a=3} a:=-19 div 4; {a=-4} a:=-19 mod 4; {a=-3} a:=-19 div -4; {a=4} a:=-19 mod -4; {a=-3}

Слайд 33

Задача 1. Дано целое трехзначное число n . Составить программу, находящую сумму его цифр. Разберем алгоритм решения поставленной задачи. Пусть дано число n =572 Разложим n =5×100+7×10+2=5×10 2 +7×10 1 +2. Для того, чтобы найти цифру единиц данного числа n (в нашем случае - это 2), необходимо найти остаток от деления данного числа n на 10. Для нахождения цифры десятков необходимо разделить данное число нацело на 10 (в нашем случае в результате получим 57), а затем найдем остаток от деления найденного числа на 10 (57 mod 10=7). Для нахождения цифры сотен необходимо разделить нацело на 100 данное число n . Для нахождения требуемого результата сложим все найденные цифры.

Слайд 34

program Modul1_2; var n, one, dec , hun , s: integer; begin writeln (' Введите трехзначное число:'); readln ( n ); one:=n mod 10; { находим цифру единиц} dec :=(n div 10) mod 10; { находим цифру десятков} hun :=n div 100; { находим цифру сотен} s:= one+dec+hun ; { находим результат - сумму цифр трехзначного числа} writeln (' Сумма цифр данного числа равна: ', s); writeln (' Нажмите Enter'); readln ; end.

Слайд 35

Задача 1. Дано натуральное трехзначное число . Определить произведение его цифр . Пройти тест

Слайд 36

Практикум линейные алгоритмы. Программирование на языке Паскаль Урок 4 .

Слайд 37

Оператор ветвления. Программирование на языке Паскаль Урок 5 .

Слайд 38

If <условие> then <оператор 1> else <оператор 2>; Процедуры ввода-вывода и оператор присваивания позволяют писать только линейные программы, в которых все команды выполняются последовательно, одна за другой. Но очень часто возникает необходимость выполнять различные команды в зависимости от выполнения какого-то условия (например, надо найти наибольшее из двух чисел). Для таких целей существует оператор ветвления (или условный оператор): Примечание: Обратите внимание, что точка с запятой (разделитель операторов) стоит после <оператор 2>, то есть после ВСЕЙ конструкции ветвления.

Слайд 39

Экспериментальная задача: Н айти наибольшее из трех чисел x , y и z . Предположим, что нет равенств, то есть все числа различны. Возможны шесть различных случаев, они приведены на рисунке.

Слайд 40

Программа определения значения наибольшего из трех чисел имеет вид: program ex4; var x, y, z: integer; begin writeln (' Введите три числа через пробел'); readln (x, y, z); if (x>y) and (x>z) then writeln (x) else if (y>x) and (y>z) then writeln ( y ) else writeln (z); readln ; end.

Слайд 41

Предложите иную версию решения данной задачи. var x, y, z, max: integer; begin write (' Введите три числа: '); readln (x, y, z); if x >= y then max := x else max := y; if z > max then max := z; writeln (' Максимальное из них: ', max); readln end.

Слайд 42

Оператор ветвления. Практикум по решению задач Программирование на языке Паскаль Урок 6 .

Слайд 43

Оператор выбора Программирование на языке Паскаль Урок 7 .

Слайд 44

Задача 1. Даны действительные числа x , y . Если x и y отрицательны, то каждое значение заменить модулем; если отрицательно только одно из них, то оба значения увеличить на 0,5; если оба значения неотрицательны и ни одно из них не принадлежит отрезку [0,5; 2,0], то оба значения уменьшить в 10 раз; в остальных случаях x и y оставить без изменения. (10 минут)

Слайд 45

Program Usl ; Var X, Y : Real; Begin Write ('Введите два действительных числа '); ReadLn (X, Y); If (X < 0) AND (Y < 0) THEN Begin X = ABS(X); Y = ABS(Y) End ELSE IF (X < 0) OR (Y < 0) THEN Begin X = X + 0.5; Y = Y + 0.5 End ELSE IF NOT (((X >= 0.5) AND (X <= 2)) OR ((Y >= 0.5) AND (Y <= 2))) THEN Begin X = X / 10; Y = Y / 10 End; WriteLn (' Результат :'); WriteLn ('X= ', X:10:6); WriteLn ('Y= ', Y:10:6 ) ; END.

Слайд 46

О ператор выбора CASE Здесь case , of , else , end – зарезервированные слова (случай, из, иначе, конец); Формат: CASE [ ключ_выбора ] OF [константа_выбора_1]:[оператор_1]; [константа_выбора_2]:[оператор_2]; … [ константа_выбора_N ]:[ оператор_N ]; ELSE [оператор]; End ;

Слайд 47

C оставить программу задачи, моделирующей работу светофора. При вводе символа первой буквы цветов светофора, программа должна выводить сообщение о соответствующем цвете и действиях.

Слайд 48

Задача 1. В старо японском календаре был принят двенадцатилетний цикл. Годы внутри цикла носили названия животных: крысы, коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, петуха, собаки и свиньи. Написать программу, которая позволяет ввести номер года и печатает его название по старо японскому календарю. Справка: 1996 г. — год крысы — начало очередного цикла.

Слайд 49

Program Goroskop ; Var Year : Integer; Begin Write(' Введите год '); ReadLn (Year ); CASE Year MOD 12 OF 0 : WriteLn ( ' Год Обезьяны '); 1 : WriteLn ( 'Год Петуха'); 2 : WriteLn ( 'Год Собаки'); 3 : WriteLn ( 'Год Свиньи'); 4 : WriteLn ( 'Год Крысы'); 5 : WriteLn ( 'Год Коровы'); 6 : WriteLn ( 'Год Тигра'); 7 : WriteLn ( 'Год Зайца'); 8 : WriteLn ( 'Год Дракона'); 9 : WriteLn ( 'Год Змеи'); 10 : WriteLn ( 'Год Лошади'); 11 : WriteLn ( ' Год Овцы ') END; END.

Слайд 50

Циклы: трассировка алгоритма Программирование на языке Паскаль Урок 8 .

Слайд 51

Цикл с предусловием (цикл ПОКА) условие Блок команд Цикл с постусловием (цикл ДО) Блок команд условие Цикл с параметром (цикл ДЛЯ) В цикле с параметром количество выполнений тел цикла задано жестко и однозначно. В циклах ПОКА и ДО количество выполнений тела цикла заранее не известно и определяется ситуацией. Поэтому необходимо проследить, чтобы во время выполнения циклов ПОКА и ДО происходило какое то изменение переменных, задействованных в условии цикла. Несоблюдение этого условия приведет к «зацикливанию» программы.

Слайд 52

Конструкция циклов Цикл с предусловием (цикл ПОКА) While < условие > Begin < блок команд > e nd; Или Do while < условие > do < команда >; Цикл с постусловием (цикл ДО) Repeat < команды > until < условие >; Цикл с параметром (цикл ДЛЯ) For < i > := To < ik > do Begin < блок команд > End; ИЛИ For < i > := To < ik > do < команда >;

Слайд 53

Разбор типовых задач Определите значение целочисленной переменной Х после выполнения следующего фрагмента программы Х:= 55 У:= 75 Х <> У Х > У Х:= Х-У У := У-Х НЕТ НЕТ ДА ДА

Слайд 54

Операторы в блоке Х У Х:= 55 У:= 75 55 75 Х <> У Условие выполняется- Ветвь «ДА» 55 75 Х > У Условие не выполняется- Ветвь «НЕТ» 55 75 У:= У-Х 55 20 Х <> У Условие выполняется- Ветвь «ДА» 55 20 Х > У Условие выполняется- Ветвь «ДА» 55 20 Х:= Х-У 35 20 И т.д. МЕТОД ТРАССИРОВКИ Ответ 5 5

Слайд 55

Разбор типовых задач Определите значение переменной У после выполнения фрагмента алгоритма: Х:= 0 У:= 0 Х=11 У := У+Х Х: = Х+1 НЕТ ДА Ответ У = 55

Слайд 56

Разбор типовых задач Определите, что будет напечатано в результате работы следующего фрагмента программы: Var k, s : integer; Begin S:=0; K:= 0; While s<1024 do Begin S:= s+10; K:= k+1; End; Writeln (k); Readln ; end. Ответ У = 103


По теме: методические разработки, презентации и конспекты

Проверочная работа по теме "Начала программирования на языке Паскаль" (9 класс)

Прорверочная работа позволяет проконтролировать усвоение учащимися базовых конструкций языка программирования и основных команд: присваивания, ввода и вывода....

Основы программирования на языке Паскаль, 7 класс

Основы программирования на языке Паскаль. Учебное пособие, - Пермь, 2004    Составитель: Волкова Евгения Игоревна.    МАОУ СОШ № 9 с углубленным изучен...

Основы программирования на языке Паскаль, 8 класс

Основы программирования на языке Паскаль. Учебное пособие, - Пермь, 2005    Составитель: Волкова Евгения Игоревна.    МАОУ СОШ № 9 с углубленным изучен...

Обобщающий урок-игра по теме «Основы программирования на языке Паскаль»

Обобщающий урок по теме «Основы программирования на языке Паскаль». Игра «Информатик — бизнесмен» 9 – 10 класс. Архив содержит блок-схемы для задания № 8....

Обучение программированию на языке Паскаль детей с нарушениями слуха

Современный выпускник школы, шагая в информационном XXI веке, должен обладать широким спектром информационно-коммуникационных компетенций. А выпускник, желающий поступить в ВУЗ на специальности в обла...

Дистанционное обучение по программированию на языке Паскаль

Материалы уроков для изучения языка программрования Паскаль...