СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Материалы по программированию - Паскаль (Раздаточный материал - опорный конспект)

Категория: Информатика

Нажмите, чтобы узнать подробности

Просмотр содержимого документа
«1. Системы счисления. Опорный конспект»

9-й класс. Язык программирования Паскаль

Урок №1. «Системы счисления». Опорный конспект



Система счисления – набор правил для визуального отображения чисел.



Различные системы счисления

Унарная. Первая система счисления в истории человечества.

Двоичная. Основа IT. Наиболее удобна для работы с компьютерной паматью.

Троичная. В 50-х-70-х годах рассматривалась как альтернатива двоичной системе в IT.

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

Восьмеричная. Широко применяется в IT, поскольку 8 = 23.

Десятичная. Наиболее широко используемая людьми. Анатомического происхождения, связана с количеством пальцев на руках.

Двенадцатеричная. Шумерское царство, IV-III тыс. до н.э. Анатомического происхождения – количество фаланг пальцев одной руки (не считая большого пальца).

Шестнадцатеричная. Также удобна для IT, в связи с тем что 16 = 24.

Двадцатеричная. Анатомического происхождения, ныне не используется. Связана с количеством пальцев на руках и ногах.

Шестидесятеричная. Древний Вавилон, развитие двенадцатеричной системы.



10

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

2

0

1

10

11

100

101

110

111

1000

1001

1010

1011

1100

1101

1110

Счёт в десятичной и двоичной системах счисления

Просмотр содержимого документа
«10. Составные условия. Листинг»

9-й класс. Язык программирования Паскаль

Урок № 10. «Составные условия»

Листинг 1. «Месяц (решение с помощью условного оператора if)»

Задание:

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

Листинг:

program Number_of_month;

var month : byte;

begin

write('Введите номер месяца: ');

readln(month);

if (month 12) then

writeln('Вы ввели неправильный номер месяца!')

else

begin

write('Название месяца:');

if month = 1 then writeln('Январь')

else if month = 2 then writeln('Февраль')

else if month = 3 then writeln('Март')

else if month = 4 then writeln('Апрель')

else if month = 5 then writeln('Май')

else if month = 6 then writeln('Июнь')

else if month = 7 then writeln('Июль')

else if month = 8 then writeln('Август')

else if month = 9 then writeln('Сентябрь')

else if month = 10 then writeln('Октябрь')

else if month = 11 then writeln('Ноябрь')

else writeln('Декабрь');

write('Количество дней в месяце: ');

if (month = 1) or (month = 3) or (month = 5) or (month = 7)or (month = 8) or (month = 10) or (month = 12)

then

writeln('31')

else

if (month = 4) or (month = 6) or (month = 9) or (month = 11) then

writeln('30')

else

writeln('28 или 29');

write('Время года: ');

if (month = 3) and (month

writeln('Весна')

else

if (month = 6) and (month

writeln('Лето')

else

if (month = 9) and (month

writeln('Осень')

else

writeln('Зима');

if not (month = 1) then writeln('Это не первый месяц в году');

if not (month = 12) then writeln('Это не последний месяц в году');

end;

end.

Тестирование программы:

Введите номер месяца: 4

Название месяца: Апрель

Количество дней в месяце: 30

Время года: Весна

Это не первый месяц в году

Это не последний месяц в году

Введите номер месяца: 10

Название месяца: Октябрь

Количество дней в месяце: 31

Время года: Осень

Это не первый месяц в году

Это не последний мсяц в году

Введите номер месяца: 1

Название месяца: Январь

Количество дней в месяце: 31

Время года: Зима

Это не последний месяц в году



Просмотр содержимого документа
«10. Составные условия. Опорный конспект»

9-й класс. Язык программирования Паскаль

Урок №10. «Составные условия». Опорный конспект



Применение алгебры логики при создании составных условий

Конъюнкция

A ^ B

И

and

Обязательное выполнение всех условий

Дизъюнкция

A v B

ИЛИ

or

Выполнение хотя бы одного из условий

Отрицание

НЕ

not

Условие не должно выполняться



Операции сравнения

Сравнение

Название

=

Равно

Не равно

Больше

Меньше

=

Больше или равно

Меньше или равно



Многократно вложенный условный оператор

if (условие 1) then

{Команда 1}

else

if (условие 2) then

{Команда 2}

else

if (условие 3) then

{Команда 3}

else

if (условие 4) then

{Команда 4}

else

…

…

…

else {Команда n};











Просмотр содержимого документа
«11-12. Оператор варианта.Логический тип. Опорные конспекты»

9-й класс. Язык программирования Паскаль

Урок №11. «Оператор варианта». Опорный конспект



case [проверяемая переменная] of

[возможные значения, вариант 1] : [операторы если условие 1 выполнено]

[возможные значения, вариант 2] : [операторы если условие 2 выполнено]

…

[возможные значения, вариант n] : [операторы если условие n выполнено]

else [операторы если ни одно из условий не выполнено]

end;





9-й класс. Язык программирования Паскаль

Урок №12. «Логический тип». Опорный конспект



Название типа – boolean.

Диапазон возможных значений – false / true.



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

Треугольник - сумма углов равна 1800. (ABC + BAC + ACB = 180)

Прямоугольный треугольник – один из трёх углов равен 900. (ABC = 90) or (BAC = 90) or (ACB = 90)

Остроугольный треугольник – каждый из углов меньше 900. (ABC

Тупоугольный треугольник – один из углов больше 900. (ABC 90) or (BAC 90) or (ACB 90)

Равносторонний треугольник – каждый из углов равен 600. (ABC = 60) and (BAC = 60) and (ACB = 60)

Равнобедренный треугольник – хотя бы одна пара углов равны друг другу. (ABC = BAC) or (BAC = ACB) or (ACB = ABC)

Разносторонний треугольник – все углы попарно не равны друг другу. (ABC BAC) and (BAC ACB) and (ACB ABC)

Просмотр содержимого документа
«11. Оператор варианта. Листинг»

9-й класс. Язык программирования Паскаль

Урок № 11. «Оператор варианта»

Листинг 1. «Месяц (решение с помощью оператора варианта case)»

Задание:

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

Для вывода названия, количества дней и времени года в алгоритме программы воспользоваться оператором варианта.

Листинг:

program Number_of_month;

var

month : byte;

begin

write('Введите номер месяца: ');

readln(month);

if (month 12) then

writeln('Вы ввели неправильный номер месяца!')

else

begin

write('Название месяца: ');

case month of

1: writeln('Январь');

2: writeln('Февраль');

3: writeln('Март');

4: writeln('Апрель');

5: writeln('Май');

6: writeln('Июнь');

7: writeln('Июль');

8: writeln('Август');

9: writeln('Сентябрь');

10: writeln('Октябрь');

11: writeln('Ноябрь');

12: writeln('Декабрь');

end;

write('Количество дней в месяце: ');

case month of

1, 3, 5, 7, 8, 10, 12: writeln('31');

4, 6, 9, 11: writeln('30');

2: writeln('28 или 29');

end;

write('Время года: ');

case month of

1, 2, 12: writeln('Зима');

3, 4, 5: writeln('Весна');

6, 7, 8: writeln('Лето');

9, 10, 11: writeln('Осень');

end;

if not (month = 1) then writeln('Это не первый месяц в году');

if not (month = 12) then writeln('Это не последний месяц в году');

end;

end.

Тестирование программы:

Введите номер месяца: 9

Название месяца: Сентябрь

Количество дней в месяце: 30

Время года: Осень

Это не первый месяц в году

Это не последний месяц в году

Введите номер месяца: 12

Название месяца: Декабрь

Количество дней в месяце: 31

Время года: Зима

Это не первый месяц в году

Введите номер месяца: 2

Название месяца: Февраль

Количество дней в месяце: 28 или 29

Время года: Зима

Это не первый месяц в году

Это не последний месяц в году



Просмотр содержимого документа
«12. Логический тип. Листинг»

9-й класс. Язык программирования Паскаль

Урок № 12. «Логический тип»

Листинг 1. «Виды треугольников»

Задание:

Для треугольника ABC пользователь вводит углы. Определить вид (или виды) треугольника (прямоугольный, тупоугольный, остроугольный, равносторонний, равнобедренный, разносторонний). Если введённые углы не составляют треугольник, то необходимо вывести соответствующее сообщение.


Вводные данные: угол ABC, угол BAC, угол CAB


Результирующие данные: «прямоугольный», «тупоугольный», «остроугольный», «равносторонний», «равнобедренный», «разносторонний», «Это не углы одного треугольника».


Листинг:

program triangle_type;


var

ABC, BAC, ACB : real;

triangle : boolean;

equilateral_triangle : boolean;

isosceles_triangle : boolean;

right_triangle : boolean;

oxygon : boolean;

obtuse_triangle : boolean;

scalene_triangle : boolean;


begin


write('угол ABC: '); readln(ABC);

write('угол BAC: '); readln(BAC);

write('угол ACB: '); readln(ACB);

triangle := (ABC + BAC + ACB = 180);

equilateral_triangle := (ABC = 60) and (BAC = 60) and (ACB = 60);

isosceles_triangle := (ABC = BAC) or (BAC = ACB) or (ACB = ABC);

right_triangle := (ABC = 90) or (BAC = 90) or (ACB = 90);

oxygon := (ABC

obtuse_triangle := (ABC 90) or (BAC 90) or (ACB 90);

scalene_triangle := (ABC BAC) and (BAC ACB) and (ACB ABC);

if not triangle then

writeln('Это не углы одного треугольника')

else

begin

writeln('характеристики треугольника:');

(* серия тестов 1 *)

{

if right_triangle then writeln('прямоугольный');

if oxygon then writeln('остроугольный');

if obtuse_triangle then writeln('тупоугольный');

if equilateral_triangle then writeln('равностороний');

if isosceles_triangle then writeln('равнобедренный');

if scalene_triangle then writeln('разносторонний');

}


(* серия тестов 2 *)

if right_triangle then

writeln('прямоугольный')

else if oxygon then

writeln('остроугольный')

else if obtuse_triangle then

writeln('тупоугольный');

if equilateral_triangle then

writeln('равностороний')

else if isosceles_triangle then

writeln('равнобедренный')

else if scalene_triangle then

writeln('разносторонний');

end;

end.



Тестирование программы, серия тестов 1:

угол ABC: 0

угол BAC: 0

угол ACB: 0

Это не углы одного треугольника


угол ABC: 20

угол BAC: 60

угол ACB: 100

характеристики треугольника:

тупоугольный

разносторонний


угол ABC: 60

угол BAC: 60

угол ACB: 60

характеристики треугольника:

остроугольный

равностороний

равнобедренный


Тестирование программы, серия тестов 2:

угол ABC: 90

угол BAC: 30

угол ACB: 60

характеристики треугольника:

прямоугольный

разносторонний


угол ABC: 20

угол BAC: 20

угол ACB: 140

характеристики треугольника:

тупоугольный

равнобедренный

угол ABC: 50

угол BAC: 50

угол ACB: 80

характеристики треугольника:

остроугольный

равнобедренный



Просмотр содержимого документа
«13-14. Цикл с параметром. Вложенные циклы. Опорные конспекты»

9-й класс. Язык программирования Паскаль

Урок №13. «Цикл с параметром». Опорный конспект



Общий синтаксис

for k := a to b do

begin

{Команда 1;}

{Команда 2;}

{Команда 3;}

…

end;



Краткая форма (если внутри тела цикла только одна команда)

for k := a to b do

{Команда 1;}





9-й класс. Язык программирования Паскаль

Урок №14. «Вложенные циклы». Опорный конспект



Перебор всех возможных комбинаций (x, y, z)

for x := x1 to x2 do

for y := y1 to y2 do

for z := z1 to z2 do

begin

{Тело самого внутреннего цикла}

end;



Просмотр содержимого документа
«13. Цикл с параметром. Листинги»

9-й класс. Язык программирования Паскаль

Урок № 13. «Цикл с параметром»

Листинг 1. «Квадраты натуральных чисел»

Листинг 2. «Квадраты натуральных чисел в обратном порядке»


Задание:

Задание:

Вывести квадраты первых 10 целых чисел.


Вывести в обратном порядке квадраты первых 10 целых чисел.


Листинг:

Листинг:

program quadro;


var

k : integer;


begin


for k := 1 to 10 do

writeln(k, '^2 = ', sqr(k));


end.



program quadro;


var

k : integer;


begin


for k := 10 downto 1 do

writeln(k, '^2 = ', sqr(k));


end.



Тестирование программы:

Тестирование программы:

1^2 = 1

2^2 = 4

3^2 = 9

4^2 = 16

5^2 = 25

6^2 = 36

7^2 = 49

8^2 = 64

9^2 = 81

10^2 = 100


10^2 = 100

9^2 = 81

8^2 = 64

7^2 = 49

6^2 = 36

5^2 = 25

4^2 = 16

3^2 = 9

2^2 = 4

1^2 = 1



Листинг 3. «Доллар Джона Джонса»

Задание:

В рассказе Гарри Килера «Доллар Джона Джонса» в 1921 году Джон Джонс положил 1 доллар в банк под 3% годовых. Условием вклада было то, что накопившаяся к соответствующему времени сумма достанется 40-му наследнику Джона Джонса. По сюжету рассказа последнее начисление вклада произошло в 2946 году. Чему был равен вклад Джона Джонса за каждый год?


Листинг:

program John_Jones_Dollar;


var

year : integer;

sum : real;


const

rent = 0.03;

year_first = 1922;

year_last = 2946;



begin


sum := 1; {Первоначальный депозит Джона Джонса}

for year := year_first to year_last do

begin

sum := sum *(1 + rent); {Увеличение вклада за текущий год}

writeln('Год: ', year, ' Сумма: ', sum:1:2)

end;

end.



Тестирование программы (представлены выборочные результаты):

Год: 1922 Сумма: 1.03

Год: 1923 Сумма: 1.06

Год: 1924 Сумма: 1.09

Год: 1925 Сумма: 1.13

Год: 1926 Сумма: 1.16

Год: 1927 Сумма: 1.19

Год: 1928 Сумма: 1.23

Год: 1929 Сумма: 1.27

Год: 1930 Сумма: 1.30

Год: 1931 Сумма: 1.34

…

Год: 2021 Сумма: 19.22

…

Год: 2121 Сумма: 369.36

…

Год: 2221 Сумма: 7098.51

…

Год: 2299 Сумма: 71198.52

…

Год: 2321 Сумма: 136423.72

…

Год: 2421 Сумма: 2621877.23

…

Год: 2521 Сумма: 50388893.66

…

Год: 2621 Сумма: 968405603.23

…

Год: 2721 Сумма: 18611430896.67

…

Год: 2807 Сумма: 236472742848.08

…

Год: 2821 Сумма: 357686241040.31

…

Год: 2921 Сумма: 6874240231169.63

…

Год: 2937 Сумма: 11031137562869.84

Год: 2938 Сумма: 11362071689755.93

Год: 2939 Сумма: 11702933840448.61

Год: 2940 Сумма: 12054021855662.07

Год: 2941 Сумма: 12415642511331.93

Год: 2942 Сумма: 12788111786671.89

Год: 2943 Сумма: 13171755140272.05

Год: 2944 Сумма: 13566907794480.21

Год: 2945 Сумма: 13973915028314.62

Год: 2946 Сумма: 14393132479164.05













В рассказе: ≈ $19.10


В рассказе: ≈ $346


В рассказе: ≈ $6920


В рассказе: ≈ $68900


В рассказе: ≈ $132000


В рассказе: ≈ $2520000


В рассказе: ≈ $47900000


В рассказе: ≈ $912000000


В рассказе: ≈ $17400000000


В рассказе: ≈ $219000000000


В рассказе: ≈ $332000000000


В рассказе: ≈ $6310000000000






Просмотр содержимого документа
«14. Вложенные циклы. Листинг»

9-й класс. Язык программирования Паскаль

Урок № 14. «Вложенные циклы»

Листинг 1. «Пифагоровы тройки»

Задание:

Вывести все тройки целых чисел, для которых верно равенство: a2 + b2 = c2.

Числа a, b и c брать в пределах от 1 до 100.


Листинг:

Первоначальный вариант

Оптимизированный вариант

program Pythagorean_triples;


var

a, b, c, S, v : integer;

begin


S := 0; {Пока что найдено 0 троек}

v := 0; {Пока что проверено 0 вариантов}

for c := 1 to 100 do

for b := 1 to 100 do

for a := 1 to 100 do

begin

inc(v);

if sqr(a) + sqr(b) = sqr(c) then

begin

writeln(a, ' ', b, ' ', c);

s := s + 1;

end;

end;

writeln('Нашли ', S, ' пифагоровых троек');

writeln('При этом рассмотрено', v, ' вариантов');

end.


program Pythagorean_triples;


var

a, b, c, S, v : integer;

begin


S := 0; {Пока что найдено 0 троек}

v := 0; {Пока что проверено 0 вариантов}

for c := 3 to 100 do

for b := 2 to c - 1 do

for a := 1 to b - 1 do

begin

inc(v);

if sqr(a) + sqr(b) = sqr(c) then

begin

writeln(a, ' ', b, ' ', c);

s := s + 1;

end;

end;

writeln('Нашли ', S, ' пифагоровых троек');

writeln('При этом рассмотрено', v, ' вариантов');

end.


Тестирование программы (выборочные результаты):

4 3 5

3 4 5

8 6 10

6 8 10

12 5 13

5 12 13

…

84 35 91

35 84 91

76 57 95

57 76 95

72 65 97

65 72 97

96 28 100

80 60 100

60 80 100

28 96 100

Нашли 104 пифагоровых троек

При этом рассмотрено 1000000 вариантов


3 4 5

6 8 10

5 12 13

9 12 15

8 15 17

12 16 20

…

36 77 85

13 84 85

60 63 87

39 80 89

54 72 90

35 84 91

57 76 95

65 72 97

60 80 100

28 96 100

Нашли 52 пифагоровых троек

При этом рассмотрено 161700 вариантов



Просмотр содержимого документа
«15-16. Цикл с предусловием. Цикл с постусловием. Опорные конспекты»

9-й класс. Язык программирования Паскаль

Урок №15. «Цикл с предусловием». Опорный конспект



Основной синтаксис

while (условие выполнения цикла) do

begin

{Команда 1;}

{Команда 2;}

…

{Команда n;}

end;



Краткая форма (если в теле цикла только одна команда)

while (условие выполнения цикла) do

{Команда 1;}



Особенности

  1. Цикл может не выполниться ни разу.

  2. При неправильно составленном алгоритме цикл может стать бесконечным.



9-й класс. Язык программирования Паскаль

Урок №16. «Цикл с постусловием». Опорный конспект



Основной синтаксис

repeat

{Команда 1;}

{Команда 2;}

…

{Команда n;}

until (Условие выхода из цикла);



Особенности

  1. Цикл выполнится минимум 1 раз.

  2. При неправильно составленном алгоритме цикл может стать бесконечным.

  3. Служебные слова begin/end для ограничения тела цикла не используются.



Выбор цикла

if (Известно количество повторений) then

{Используйте цикл FOR}

else

if (Известно что цикл будет выполняться как минимум один раз) then

{Используйте цикл REPEAT}

else

{Используйте цикл WHILE}