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

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

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

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

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

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

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

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

Итоги урока

Примеры программ на языке программирования Turbo Pascal.

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

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

Выполнив практическую работу, обучающиеся научатся создавать программы, позволяющие решать различные простейшие задачи на языке программирования Turbo Pascal.

Просмотр содержимого документа
«Примеры программ на языке программирования Turbo Pascal.»




МУНИЦИПАЛЬНОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ДОПОЛНИТЕЛЬНОГО ОБРАЗОВАНИЯ ДЕТЕЙ

«СТАНЦИЯ ЮНЫХ ТЕХНИКОВ ГОРОДА ЕВПАТОРИИ РЕСПУБЛИКИ КРЫМ»

(МБОУДОД "СЮТ")


297408, Российская Федерация, Республика Крым, город Евпатория, ул. Революции, д. 75, тел. (06569) 3-03-30,

е-mail: [email protected]



План-конспект учебного занятия

кружок «Компьютер и информационные технологии», группа 2 – А


Тема учебного занятия: «Примеры программ на языке программирования Turbo Pascal».


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


Задачи учебного занятия:

Образовательная:

  • проконтролировать степень усвоения основных понятий, принципов работы с языком программирования Pascal, изученных и сформированных на предыдущих занятиях;

  • обеспечить усвоение основных задач, входящих в содержание темы учебного занятия;

  • научить создавать программы решения различных задач на языке программирования Pascal;

  • формировать умение правильно и грамотно выражать свои мысли.


Развивающая:

  • развивать творческие способности, память, мышление обучающихся, навыки индивидуальной практической деятельности.


Воспитательная:

  • воспитывать аккуратность, внимательность, вежливость, дисциплинированность и бережное отношение к вычислительной технике.


Тип учебного занятия: формирование новых знаний, навыков и умений.


Методы работы: объяснительно-иллюстративный, практическая работа.


Формы работы: индивидуальная, групповая.


Оборудование: персональные компьютеры, доска, мел.


Дидактические материалы: карточки с заданиями.


Ход учебного занятия.

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

  • ТБ при работе за компьютером;

  • Актуализация опорных знаний:

  • Мотивация учебной деятельности обучающихся:

  • Выполнение практической работы;

  • Физкультминутка;

  • Итоги учебного занятия:

  • Вы научились создавать программы, позволяющие решать различные простейшие задачи на языке программирования Turbo Pascal.


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

Приветствие, проверка присутствующих. Объяснение хода учебного занятия.


2. ТБ при работе за компьютером.


3. Актуализация опорных знаний:


Основные принципы работы с языком Pascal.

Pascal – один из самых известных языков программирования. Создан в 1968 – 1969 годах швейцарским ученым Никлаусом Виртом, был назван в честь французского математика и физика Блеза Паскаля, и используется для обучения программированию по сей день.





Перед началом работы следует напомнить, что язык Pascal – это совокупность трёх составляющих: алфавита, синтаксиса (правил написания объектов языка) и семантики (правил использования этих объектов).
Алфавит Pascal состоит из:

  1. Прописных и строчных букв латиницы: A...Z, a…z;

  2. Цифр: 0...9;

  3. Специальных символов: + — * / = .,:; ‘ # ( ) { } [ ] и их комбинаций: «=» «


Задача же синтаксиса и семантики состоит в том чтобы, правильно написать раздел программы и правильно составить ее структуру, в противном же случае ваша программа будет работать неправильно (или же не работать вовсе!).


Структура программы выглядит так:

Program «имя программы»; — заголовок программы;
(Примечание: в конце строки ставится точка с запятой, не во всех, но в большинстве) 
Uses (название библиотеки); здесь подключаются библиотеки, которые дают дополнительные возможности при создании программ;
Label (имя метки); здесь, если необходимо, прописываются метки, позволяющие переходить в разные места программы (о них позже);
Const тут указываем переменные с постоянной величиной, например, p=3.14;
Var тут через запятую перечисляем все переменные, а затем, указываем тип данных (Пример: Var: K, L, M: integer; N, O: real; (если несколько типов));
Begin (здесь без точки с запятой)
Дальше следует основной блок программы;
end. – конец программы (обязательно после “end” точка, если только это конец программы, а не операторные скобки).


Следует заметить, что из вышеперечисленных разделов обязательными есть только «Var», «Begin» и «end», остальные же могут применяться, если это требуется в ходе выполнения поставленной задачи. 

Массивы.

В программировании даже при написании самых простых программ возникает понятие массивов когда появляется необходимость в большом количестве переменных.

Обычно они разные по типам и по использованию, но бывают ситуации, когда эти переменные одинаковы и их необходимо очень большое количество.

Представим работу такой программы, как нахождение среднего арифметического среди 100 чисел. Что нам понадобится для написания такой программы? Конечно, сами числа. Для хранения 100 чисел мы должны использовать 100 переменных. Описать их можно, скажем, следующим образом: var n1,n2,n3,n4,n5, n6,n7, ..., n100: Integer; Это будет выглядеть крайне громоздко.

Вот здесь и возникает понятие массивов.

Массив - это на самом деле одна переменная, но она содержит в себе большое количество отдельных элементов, того типа, который определит программист, и столько, сколько он захочет. (При этом размер массива несколько ограничен). Это означает, что, заведя переменную-массив, мы как бы создаем цепочку переменных. После чего мы можем обратиться к любому элементу этой цепочки: прочитать его, изменить, сделать с ним все, что можно сделать с обычной переменной.

Массив - это переменная и как все переменные описывается в разделе var программы.

Описание переменной - массива состоит из:

  • Имени переменной;

  • Служебного слова Array, означающего "массив";

  • Описания размера массива. Диапазон записывается в квадратных скобках - [ ]. Внутри пишется сам диапазон, в виде двух чисел, разделенных двоeточием: начало..конец;

  • Задание типа начинается со служебного слова of.

  Массив - это структура данных, которая представляет собой совокупность фиксированного размера и конфигурации упорядоченных однородных независимых переменных.

Массив относится к так называемым структурированным данным, то есть таких, которые имеют фиксированную внутреннюю структуру (организацию).
    Массив характеризуется:
      1. Количеством размерностей (количеством координат, необходимых для определения местонахождения нужного элемента массива).
      2. Общим идентификатором (именем) для всех элементов массива.
      3. Индексом или совокупностью индексов, которые определяют каждый отдельный элемент массива.
  

Одномерный массив (вектор) - имеет одну размерность.

При обращении к отдельному элементу массива необходимо указать его индекс (местонахождение в массиве):
    

  A[7]    i:=7; A[i]


      Здесь i - индекс элемента массива, может быть только целого или натурального типа.


 Двумерные массивы (матричные) - имеют две размерности, m*n.

Доступ к отдельному элементу массива осуществляется путем определения двух его координат: номера строки i=1..m и столбца j=1..n
    Операции предоставления выполняются аналогично:
      

a[3,9]=8; B:=A[1,1]


В трехмерном массиве для доступа к элементу необходимо указать три индекса A[i,j,k].

Можно создавать массивы с большей размерностью, но работа с массивами, размерность которых превышает 3, существенным образом усложняет алгоритм, поэтому, по возможности, необходимо избегать организации подобных структур данных.


Стандартные функции Турбо Паскаля


Для работы с целыми числами в среде Turbo Pascal можно применить следующие стандартные функции:

  • Odd (x) – применяется для возвращения результата логического типа (для проверки числового выражения на нечетность: true – нечетное, false – четное);

  • Succ (x) – находит целое число, следующее за данным (х+1);

  • Pred(x) – возвращает целочисленное выражение, предшествующее данному (х-1);

  • Ord(x) – находит аргумент х;

  • Abs(x) – применяется для получения модуля х;

  • Sqr(x) – используется для нахождения квадрата заданного выражения;

  • Sqrt(x) – необходима для получения значения корня от имеющегося числа;

  • Exp(x) – применяется для нахождения экспоненты (вещественный тип данных), т.е. ех;

  • Dec(x) – уменьшает имеющееся число на заданное количество единиц;

  • Inc(x) – увеличивает выражение на указанное количество единиц;

  • Sin(x) – находит синус числа (вещественный тип данных);

  • Cos(x) – возвращает косинус выражения (вещественный тип данных;

  • Ln(x) – применяется для нахождения натурального логарифма от заданного числа.


4. Мотивация учебной деятельности обучающихся:

Создавая Паскаль, Вирт преследовал 2 цели:

  • во-первых, разработать язык, пригодный для обучения программированию как систематической дисциплине;

  • во-вторых, реализация языка должна быть эффективной и надежной на существующих вычислительных машинах.


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

Это был самый первый простой язык (ord pascal) для программирования, помогающий решить множество практических задач прошлого столетия (1970 год). Он был разработан группой ученых. С расширением платформ были созданы новые версии этой программы, а Pascal стал классическим языком программирования.


5. Выполнение практической работы.


Задача 1. Программа запрашивает число n у пользователя и выводит на экран все простые числа, не превосходящие n и их сумму.


Решение.

Program prosto_chisla;

uses crt;

var n,i,symma,k,pdel:integer;

p,Code:integer;

Str:string;

yn:string;

begin

clrscr;

repeat

symma:=0;

pdel:=0;

repeat

Write(‘Введите n: ’);

Readln(str);

Val(Str,p,Code);

if Code0 then Writeln(‘Неправильный ввод! Ошибка в позиции: ’,Code) else Writeln(‘Ok!’);

until Code=0;

n:=p;

for i:=2 to n do begin

for k:=2 to i do begin {проверяем простое ли это число}

if i mod k=0 then pdel:=pdel+1;

end;

if pdel=1 then symma:=symma+i; {т.е. оно делится только на себя и 1}

if pdel=1 then Writeln(i,’’);

pdel:=0;

end;

Writeln;

Writeln(symma);

Write(‘Ещё раз(y/n)?’);

Readln(yn);

until yn=’n’;

end.


Задача 2. Программа запрашивает число n у пользователя и выводит на экран все его простые делители и их сумму.


Решение. Воспользуемся кодом задачи1 немного усложнив его.

Program prosto_deliteli;

uses crt;

var n,i,symma,k,pdel:integer;

p,Code:integer;

Str:string;

yn:string;

begin

clrscr;

repeat

symma:=0;

pdel:=0;

repeat

Write(‘Введите n: ’);

Readln(str);

Val(Str,p,Code);

if Code0 then Writeln(‘Неправильный ввод! Ошибка в позиции: ’,Code) else Writeln(‘Ok!’);

until Code=0;

n:=p;

for i:=2 to n do begin

if n mod i=0 then {если делитель}

for k:=2 to i do begin {проверяем простое ли это число}

if i mod k=0 then pdel:=pdel+1;

end;

if pdel=1 then symma:=symma+i; {т.е. у него 1 делитель (он сам)}

if pdel=1 then Write(i,’’);

pdel:=0;

end;

end;

Writeln;

Writeln(symma);

Write(‘Ещё раз (y/n)?’);

Readln(yn);

until yn=’n’;

end.


Задача 3. Посчитать число счастливых билетов и вероятность с которой можно получить один из них.

Счастливым билетом считается тот, у которого сумма первых трёх цифр равна сумме трёх последних. Будем считать, что существуют билеты с номерами от 000001 до 999999.


Решение.

Program happiness;

uses crt;

var i,j,k,x,y,z: integer;

happytickets:longint;

begin

clrscr;

happytickets:=-1; {считаем, что билета 000000 не существует}

for i:=0 to 9 do

for j:=0 to 9 do

for k:=0 to 9 do

for x:=0 to 9 do

for y:=0 to 9 do

for z:=0 to 9 do

if i+j+k=x+y+z then inc(happytickets);

Write(‘Счастливых билетов: ’, happytickets);

Writeln(‘(это ‘,10000/ happytickets:3:6,’% от общего числа всех билетов)');

Writeln;

Readln;

end.

Задача 4. Дано натуральное n, напечатать в троичной системе счисления все числа от нуля до n.


Решение.

program three_sys;

uses crt;

const

lim=20; {размер массива}

var n,i,p:longint; {n - число}

j,r:integer;

mas:array[1..lim] of integer; {массив, в котором хранится число в троичной записи}

begin

clrscr;

Write(‘Введите n: ’);

Readln(n);

for i:=0 to n do {перебираем все числа до n}

begin

p:=i; {сохраняем i в p}

for j:=1 to lim do {цикл по всем элементам массива}

begin

mas[j]:=p mod 3; {остаток от деления в массив}

p:=p div 3; {целое от деления будем дальше делить}

end;

for j:=1 to lim do

if (mas[j]0) then r:=j; {считаем число ненулевых ячеек в массиве}

if i:=0 then r:=1;

Write(i,’=’); {вывод числа}

for j:=1 to r do {и его троичной записи}

Write(mas[r-j+1]); {идём от конца массива}

for j:=1 to lim do

mas[lim-j+1]:=0; {обнуляем массив}

Writeln;

end;

readln;

end.


Задача 5. В массиве хранятся данные о температуре воды на морском побережье города Евпатории. Определить, сколько за это время было дней пригодных для купания (T20).


Решение.

Program Temperature;

var i,n: integer;

T: array[1..10] of integer;

begin

Randomize;

for i:=1 to 10 do begin

T[i]:=15+Random(15);

Write(T[i],’’);

if T[i]20 then inc(n);

end;

Writeln;

Write(‘Дней для купания:’,n);

Readln;

end.



6. Физкультминутка.

7. Итоги учебного занятия

Ответьте на следующие вопросы:

  1. Что нового Вы узнали, решив задания на учебном занятии?

  2. Задания были сложными? Задания были интересными?

  3. Над изучением каких тем в разделе «Изучение языка программирования Pascal» Вы хотели бы ещё поработать?



Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!