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

Данная работа была составлена ученицами 11 класса Визингской СОШ в виде проектно-исследовательской работы по изучению  языка программирования Паскаль. Главной целью данной работы  является научить учащихся писать программы на языке программирования Паскаль. В ней вы найдете описания основных алгоритических структур на ЯП Паскаль, отображение их в виде блок-схем, описание основных операторов, которые применяются в ЯП Паскаль, а так же задания на закрепление каждой структуры в отдельности. Она оче...
Раздел Информатика
Класс -
Тип Конспекты
Автор
Дата
Формат doc
Изображения Есть
For-Teacher.ru - все для учителя
Поделитесь с коллегами:

Визингская муниципальная средняя общеобразовательная школа

с углубленным изучением отдельных предметов


методическое пособие





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






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





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













с. Визинга


Содержание:

I Введение

II Знакомство с программой средой Паскаля

  1. Немного о Паскале

  2. Структура программы на Паскале

III Работа с Паскаль

  1. Запуск Паскаль

  2. Главное меню Паскаль

  3. Пункт File (Файл)

  4. Пункт Run (Выполнить)

IV Данные в языке Паскаль

  1. Типы данных

  2. Стандартные функции и процедуры языка Паскаль

V Теоретическая часть

Введение. Общий вид программы

  1. Линейная структура. Ввод и вывод данных

  2. Ветвление (развилка)

А) Полная развилка

Б) Неполная развилка

  1. Циклическая структура

А) Цикл «ПОКА»

Б) Цикл «ДО»

В) «ЦИКЛ С ПАРАМЕТРОМ»

  1. Оператор выбора (CASE)

  2. Процедуры и функции

  3. Массивы

А) Линейные (одномерные) массивы

Б) Двумерные массивы

  1. Сортировка

А) сортировка методом «пузырька»

Б) сортировка методом перебора (прямого выбора)

В) сортировка методом индексации

  1. Графика Паскаля

  2. Работа с файлами

VI Приложение.

VII Лабораторные работы.



1. Введение.

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

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

2. Знакомство с программой средой Паскаля.

1) Немного о Паскале.

Язык Паскаль назван в честь математика ХУII века Блеза Паскаля. Он разработан профессором, директором института информатики швейцарской высшей политехнической школы, автором многочисленных работ в области программирования Никлаусом Виртом. Первое сообщение о языке Паскаль появилось в 1970 г. Язык программирования Паскаль отражает наиболее важные концепции алгоритмов в естественной и легко воспринимаемой форме. Он полностью удовлетворяет требованиям структурного программирования и отличается завершенностью и однородностью. Этот язык может быть использован как профессиональными программистами, так и начинающими (учениками, студентами и т.д.). Посредством этого языка можно решать как задачи вычислительного характера, так и работать с графикой, звуком, создавать справочные системы, т.е. работать с текстом.

2)Структура программы на Паскале.

Интегрированная среда программирования Паскаль включает в себя средства подготовки исходной программы, библиотеки, компилятор, компоновщик, отладчик. После загрузки системы на экране появляется рабочий стол системы. Его вид может несколько различаться у разных версий, но в целом он типичен. В верхней части экрана расположено главное меню, в нижней - назначение горячих клавиш.

File Edit Run Compile Options Debug Break/watch

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

Line 1 Col 1 Insert Indent Tab Unindent C:NONAME.PAS

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


Watch

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

F1-Help F5-Zoom F6-Switch F7-Trace F8-Step F9-Make F10-Menu

Программа на языке Паскаль представляет собой текст. В принципе, она может быть написана в любом текстовом редакторе, но в составе системы программирования имеется свой текстовый редактор.

Программа состоит из трех основных частей:

  1. Заголовок программы (имя программы, идентификатор) - слово, возможно, группа слов, соединенных знаком подчеркивания, возможно использование цифр после букв или знака подчеркивания, нельзя использовать русские буквы, знаки препинания и пробелы между словами).

Например:

_10а_Иванов_Петр

  1. Раздел описаний (соглашения)

В разделе описаний имеются разделы:

Описание стандартных модулей

Этот раздел начинается со служебного слова uses, за которым следует имя модуля. Например: uses crt; uses graph;

Описание констант

Здесь описываются все постоянные величины, используемые в программе.

Например:

Const a = 8; b = Pi; c = a + b;

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

Здесь описываются нестандартные типы данных, созданные пользователем. Принципы работы с ними будут рассмотрены ниже.

Описание переменных

Здесь описываются все переменные величины, используемые в программе.

Например:

Var a: integer; b, d: real;

Процедуры и функции

Принципы работы с процедурами и функциями будут рассмотрены ниже.

  1. Исполняемая часть (операторы)

Начинается служебным словом begin и завершается служебным словом end, после которого ставится точка. Исполняемая часть содержит операторы, процедуры и команды управления программой.

3.Работа с Паскаль.


  1. Запуск Паскаль.

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


  1. Главное меню Паскаль.

Главное меню содержит несколько пунктов, в каждом из которых собраны более или менее однотипные команды управления программой.

Для выбора пункта главного меню щелкните мышью на его названии.

После выбора пункта главного меню раскрывается нисходящее меню со списком команд данного пункта. Мы рассмотрим только пункты Fail и Run.

3) Пункт File (Файл).

New (Новый). По этой команде Паскаль предлагает вам начать работу с неозаглавленной заготовкой нового файла.

Open(Открыть…). По этой команде Паскаль откроет стандартное диалоговое окно-файлер. В этом окне вы должны выбрать имя существующего файла с исходным текстом программы.

Save (Сохранить). По этой команде на диске сохраняется текущая версия вашей программы.

Save As(Сохранить Как…). По этой команде на экране откроется стандартное диалоговое окно-файлер, в котором вам надо указать имя, под которым вы сохраняете ту программу, над которой работали.

Print(Печать…). Эта команда позволяет вам напечатать открытый файл на принтере.

Exit (Выход). По этой команде Паскаль завершает работу. Если вы не сохранили файл, над которым работали, Паскаль напомнит вам об этом.


  1. Пункт Run (Выполнить).

Выбрав команду Run, вы откомпилируете (проверите на ошибки) и запустите свою программу, начиная с самой первой исполняемой команды.

4.Данные в языке Паскаль

  1. Типы данных.

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

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

Каждая величина определяется именем (идентификатором), по которому она распознается, и значением.

Имя величины может быть длиной до 127 символов (цифр или букв), но различаются в зависимости от первых 32 или 64 символов. Нельзя начинать имя величины с цифры и использовать русские буквы. Также недопустимы символы (+, -, /, \.,= и т.д.), не относящиеся к буквам (знак подчеркивания _ является буквой для языка программирования­).

Для постоянных величин (констант) тип величины определяется по форме записи. Для переменных указывается имя переменной и ее тип. Значение переменная принимает в процессе работы программы.

Рассмотрим числовые величины.

Целые.

Пользователь может использовать несколько типов целых чисел, а именно:

Byte - область значений 0…255

Word - область значений 0…65535

Shorting - область значений -128…127

Integer - область значений -32768…32767

Longint - область значений -2147483648…2147483647

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

Пример описания:

Постоянные:

Const a=3; компилятор воспримет тип константы с именем a как целый.

Переменные:

Var a:integer: I:byte; - в данном случае компилятор определяет тип величины a - как целый тип с областью значений -32768…32767, а тип величины I - как целый с областью определения 0…255.

Вещественные:

Для представления чисел в вещественной форме также имеется несколько типов вещественных чисел.

Real - положительные и отрицательные числа с модулем в интервале значений от -2.9*10 39 до 1.7*10 38 (представляются приближенно с точностью до 11 знака).

Double - положительные и отрицательные числа с модулем в интервале значений от -5.0*10 324 до 1.7*10 308 (представляются приблизительно с точностью до 15 знака).

Символьные:

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

Значение констант такого типа записывается в апострофах:

PEX='f'; d='K';

В Паскале существует два символьных типа данных:

  1. byte - переменным этого типа можно присваивать только один символ.

Например:

Var c: byte;

c:='*';

  1. string - переменным этого типа можно присваивать строку символов.

Например:

Var d: string;

d:='Визинга';

По умолчанию максимальная длина такой строки может быть 255 символов. Однако можно задать конкретное значение максимальной длины строки:

Var n: string [20];

Логические:

Данные такого типа могут принимать только два значения: истина (true) и ложь (false).

Для описания величин данного типа используется служебное (зарезервированное) слово Boolean.

Например:

Var W: Boolean.

Логические переменные обычно используются для проверки какого-нибудь условия в развилках, циклах «ДО» и «ПОКА». Логическая переменная может принимать значение логического выражения.

Например:

Рассмотрим логическое выражение а > 5. Это выражение может быть истинным или ложным. Тогда мы можем записать следующее:

W: = (a>5)

При этом если а = 3, то W=false, а если а = 7, то W=true.

2)Стандартные функции и процедуры языка Паскаль.

Процедуры:

ClrScr(clear screen) - гашение экрана(очистка окна вывода).

GotoXY(m,n) - установление курсора в позицию m строки n.

Левый верхний угол (1,1)

Textbackground(c) - установка цвета фона; с - константа, определяющая цвет (цифра от 0 до 7).

Textcolor(c) - установка цвета шрифта; с может принимать значения от 0 до 7.

Deline - удаление (стирание) строки, в которой находится курсор. Все строки ниже удаленной сдвигаются на одну строку вверх.

Isline - добавление пустой строки в позицию курсора, все строки за курсором сдвигаются на строку вниз.

Delay(n) - приостановка выполнения программы на n миллисекунд.

Sound(n) - запуск звукогенератора с частотой тона n Гц.

Nosound - отключение звукового сигнала

Функции:

Keypressed - значение функции может принимать два значения: true или false. Значение true, если в буфере обмена нет ни единого символа, и false - в противном случае.

Например: используем эту функцию для организации задержки в программе:

Repeat

Until keypressed;

В этом месте программа остановится до нажатия на любую клавишу.

Readkey - ввод символов с клавиатуры, без отображения их на экране.

5. Теоретическая часть.

Введение. Общий вид программы.

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

Причем у каждой геометрической структуры должен быть только один вход и только один выход. Начинается программа с названия, и заканчивается словом КОНЕЦ или END. Таким образом, общий вид программы на языке блок-схем будет таким:

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

Запись с помощью графических обозначений (блок-схем):

Даем условные обозначения для блок-схем:

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

- начало, конец

- ввод данных, вывод (есть альтернативный вариант вы вода, показанный ниже)

- вывод документа в файл

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

- процессы, операции

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

- условия, решения

- подпрограмма

-цикл с параметром

- направление процесса

Общая форма записи начала программы на языке Паскаль выглядит, примерно, так:

Program name; name - название программы

Uses Crt; - подключение библиотечного модуля, содержащего стандартные процедуры и функции.

Const (если они есть)

Var - описание переменных

Label

Procedure

Function

Begin - начало программы

команды

End.

Т.к. начало постоянно, то рекомендуем создать заготовку, сохранить ее, а при создании новой программы загружать ее ( пункт меню open).

1)Линейная структура. Ввод, вывод данных.

В линейной структуре все команды располагаются друг за другом (в одну линию сверху вниз).

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

Комментарий


Комментарий - текст на любом языке, заключенный между символами (* и *). Комментарий может быть вставлен между любыми двумя символами в любом месте программы, может занимать несколько строчек и появляться в середине оператора, но не может содержать символов (* и *). Например,

(* это - комментарий *).

Ввод и вывод

Ввод данных осуществляется с помощью процедур read, readln.

Форма записи:

Read (имена переменных);

Например

read (a, b, c);

в этом случае компьютер будет ожидать ввода с клавиатуры трёх значений переменных, например, 3-х чисел.

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

Readln (имена переменных);

readln (a, b, c);

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

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

Вывод данных осуществляется с помощью процедур write, writeln.

Форма записи:

Write (' текст' , имена переменных: m:n);

Writeln ('текст' ,имена переменных: m:n);

Например:

B:=4;

A:=6.3456437;

Write(b,a:6:2);

В указанном выше примере после А указано два параметра: 6 и 2. Первый параметр указывает количество символов отводимых под запись данной переменной (в нашем примере запись числа не может содержать больше шести символов).

При вводе и выводе переменных нужно всегда описать, какая именно это переменная. Программа создаётся не для вас, а для пользователя, которому нужно разъяснить, что от него требуется, что он должен сделать. К примеру, нужно ввести с клавиатуры положительное целое число. Если мы напишем так:

Read (a);

Пользователь не будет знать, что это за а и что нужно сейчас ввести.

А если напишем так:

Write ('введите положительное целое число');

Read (a);

Пользователь сразу же поймет, что от него требуется.

Эти процедуры работают также, как и процедуры ввода. Для переменных целого, символьного и строкового типа указывается параметр m, для переменных вещественного типа m и n.

Например:

Program summa;

Uses crt;

Var a, b, с: integer;

Begin

Write ('введите два целых числа а и в');

Readln (a, b);

С:=a+b;

Writeln ('a+b=', c);

End.

Эта программа вычисляет сумму двух чисел, введённых с клавиатуры.


  1. Ветвление (развилка).

Развилка бывает 2-х видов: полная и неполная, при этом оператор IF позволяет программе выбрать одно из двух возможных направлений для продолжения работы.

А) полная развилка.

Если выполняется условие Р, то исполняется последовательность действий а, иначе исполняется последовательность действий b.

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

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

+ -


На языке Паскаль развилка выглядит так:

1) если а и в - это одна команда, то

IF P THEN a ELSE b;

2)если а и в - это несколько команд, то

IF P

THEN

Begin

A

End

ELSE

Begin

End;

Б) неполная развилка

Если выполняется условие Р, то исполняется последовательность действий а, иначе ничего не выполняется.

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



На языке Паскаль это выглядит так:

Если а - это одна команда, то:

IF P THEN a

Если а - это несколько команд, то:

IF P

THEN

Begin

A

End;

Пример:

Program;

Uses crt;

Var a, b, с: integer;

Begin

Write (' введите любое число a:');

Readln (a);

Write ( 'введите любое число b:');

Readln (b);

If a>b

then

Begin

Writeln ('a>b');

End;

Readln;

End.

Эта программа выводит сообщение, когда первое, введенное с клавиатуры число больше второго.

3)Циклическая структура

существует три вида циклической структуры: цикл «ПОКА», «ДО», «ЦИКЛ С ПАРАМЕТРОМ».

А) цикл «ПОКА».

Пока выражение между while и do истинно перед единственным оператором, повторения продолжаются. Помещать эту группу операторов надо между ключевыми словами begin и end.

Пока выполняется условие Р, повторяется последовательность действий а.

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

-

+



цМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования ПаскальМетодичка по изучению языка программирования Паскальикл «ПОКА» на Паскале имеет вид:

если а - это одна команда, то:

while Р do

a;

если а - это несколько команд, то:

while P do

begin

a;

end;

Например:

S:=0;

While a<>0 do

Begin

Write('Введите любое число');

Readln(a);

If a>0

then

s:=s+a;

End;

Write('Сумма положительных чисел =');

Readln(s);

Эта программа - вычисляет сумму введенных с клавиатуры положительных чисел, пока не будет введен 0.

Б) цикл «ДО».

Операторы между ключевыми словами REPEAT и UNTIL повторяются до тех пор, пока выражение в конце оператора повторения не станет истинным. Оператор repeat будет выполнен по крайней мере один раз.

ЦМетодичка по изучению языка программирования Паскальикл «ДО» имеет вид:

Если а - это одна команда, то:

Repeat

a;

until P;

Если а - это несколько команд, то:

Repeat -

Begin

a;

End; +

Until P

В) «ЦИКЛ С ПАРАМЕТРОМ»

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



Имеются две формы этого цикла, в первом случае шаг изменения параметра цикла равен 1 (to), а во втором - -1 (downto)

Примеры:

1) For I:=1 to 10 do

p:=p*I;

2) For I:=1 to 10 do

begin

p:=I*3.8;

writeln('p = ',p);

end;

3) For I:=640 downto do

x:=x+I;

4) For I:=640 downto do

begin

x:=x+I;

writeln('x = ',x);

end;


4) Оператор выбора( CASE)

Оператор CASE можно рассматривать как расширение оператора IF, он позволяет осуществлять выбор из многих альтернатив для продолжения работы программы.

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

+ -

+ -

+ -


Пример на языке ПАСКАЛЬ:

Program day of week;

Uses crt;

Var dayn:integer;

Begin

WRITE ('введите номер дня недели = =>');

READLN (DAYN);

If (DAYN<1) OR (DAYN>7) THEN

WRITELN ('вы ошиблись: такого дня недели

Не существует :');

CASE DAYN OF

1: writeln('это - понедельник');

2: writeln('это - вторник');

3: writeln('это - среда');

4: writeln('это - четверг');

5: writeln('это - пятница');

6: writeln('это - суббота');

7: writeln('это - воскресенье');

END;

END.

Эта программа читает номер дня недели, а затем печатает его название.

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

  1. Процедуры и функции.

Определение процедур и функций осуществляется после описания переменных и перед первым словом Begin программы, т.е. в последнюю очередь. Напомним также, что в Паскале принят следующий порядок описания: метки LABLE, константы CONST, типы TYPE, переменные VAR, процедуры и функции PROCEDURE/FUNCTION.

ПАСКАЛЬ предоставляет возможность конструировать программу из самостоятельных блоков - подпрограмм. Использование подпрограмм удобно потом, что задачу легче решать по частям. Кроме того, одни и те же блоки можно использовать в разных программах. Применение подпрограмм делает программу понятнее, меньше по объему, она легче отлаживается и быстрее выполняется. Мы с вами рассмотрим два вида подпрограмм: это подпрограммы - процедуры и полпрограммы - функции. Все подпрограммы должны быть описаны в разделе описаний. Каждая подпрограмма должна иметь имя (идентификатор подпрограммы), дающий возможность к ней обращаться. К подпрограмме можно обращаться только после того, как она описана.

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

Входящие и выходящие параметры

При обращении к подпрограмме нужно передать ей данные для обработки в виде переменных. Это входящие параметры. Они обрабатываются внутри подпрограммы. Результат обработки нужно вернуть обратно в основную программу тоже в виде переменных. Это выходящие переменные.

Количество входящих и выходящих параметров в основной программе и в подпрограмме должны совпадать. Но Имена входящих и выходящих пар в основной программе и в подпрограмме должны различаться.

Параметры переменные в описании подпрограмм легко отличить от параметров - значений: перед параметрами - переменными стоит ключевое слово var.

В ПАСКАЛЕ существует два вида подпрограмм - процедуры и функции.

А) Процедуры:

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

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




В самой процедуре входящим параметром является Х, а выходящим У. При обращении к процедуре входящим параметром является, в первом случае а, выходящим b, а во втором случае входящим b, выходящим с, т.е. при выполнении программы в первом случае Х будет равен а, b=У, во втором, Х=b, У=с.

Задача:

1.Найти большее из трех заданных чисел, используя подпрограмму нахождения большего из двух чисел.

Program BIT;

Uses crt;

Var a,b,c, max,max1 :integer;

Procedure maks(x,y:integer; var z:integer);

Begin

While x<>y do

If x>y then x:=x-y else y:=y-x;

Z:=x;

End;

Begin

Clrscr;

Writeln('введите числа a,b,c');readln(a,b,c);

Maks(a,b,max);

Maks(max,c,max1);

Writeln('НОД=',max1);

Readln;

End.

Б) Функции:

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

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

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

f=sin(x)

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

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

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

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

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

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

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

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

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

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

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

В функции входящим параметром является Х, а выходящим f (название функции). При обращении к функции входящим параметром является, в первом случае а, выходящим f, а во втором случае входящим b, выходящим f.

Задача:

Дана переменная х. Вычислить:

Sin (cos2 (x2-8))

Cos (cos (x2-8)+6)

Tg (7-cos2(x2-8))

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





Program;

Uses crt;

Var b,c,z: real;

Function f(x:real):real;

Begin

f=cos(x^2-8)

end;

begin

write('введите значение переменной');

read(x);

b=sin(f(x)^2)

c=cos(f(x)+6)

z=tan(7-f(x)^2)

write('sin(cos^2(x^2-8))='): readln(b);

write('cos(cos(x^2-8)+6)='):readln(c);

write('tg(7-cos^2(x^2-8))='):readln(z);

end.


  1. Строковые переменные.

Строковыми называют константы и переменные, значением которых служит набор символов, заключенный в апострофы, обозначающие начало и конец набора. Строковые константы и переменные имеют тип string. Этот тип данных относят к структурированным. Формат этого типа данных - string [n], где n - константа из диапазона 0..255, которая указывает на размер строки в символах. Если n не указать, то по умолчанию длина строки равна 255 символов.

Например, '2%','12345','Коля'. В данном случае '12345' не число, а набор символов - цифр, математические операции с таким набором проводить нельзя. В разделе описаний символьных констант тип не указывается, т.к. он определяется формой записи. Например:

Const

C='любовь';

K='2003';

При описании переменных тип указывается обязательно:

Var

A: char;

B: string[20];

Если вы укажите в описании переменной длину меньшую, чем следует, то потеряете часть символов.

Рассмотрим основные функции и процедуры обработки символьных величин:

Length(st) - значением функции является длина строковой переменной st.

Пример:

Length('Привет!'); результат: 7 (типа integer).

Copy(st,m,n) - значением функции является подстрока из n символов, вырезанных из строки st, начиная с позиции, указанной параметром m.

Copy('водопровод',6,3); результат: строка 'ров'

Delete(st,m,n) - данная процедура удаляет n символов из строки st, начиная с позиции, указанной параметром m. Например:

Delete('шарики',2,3) результат: строка 'шки'

Concat(st1,st2,…stn) -соединение строк. Можно использовать конструкцию

st1 +st2+…+stn. Пример:

f:='пи'; d:='лот'; s:=f+d; или s:= Concat(f,d) результат: s='пилот'

Insert(st1,st2,m) - вставка в строку st2 строки st1, начиная с позиции m. Общая длина строки не превышает длину строки st2. Например:

х:='инфорика'; insert(x,'мат',6); результат: х='информатика'

Pos(st1,st2) -значение функции будет номер позиции, в которой в строке st2 первый раз встречается строка st1. Например:

pos('ыш','мышка'); результат: 2 (типа integer).

Str(x,st) - заданное числовое значение преобразуется в строку символов. Значение присваивается переменной st.

Х:=7; str(x,s); результат: переменная s приоб- рела значение '7'(string).

Val(st,x,c) -строка символов st, состоящая из цифр, преобразуется в число. Значение передается переменной х.

S:='7.6'; val(s,y,p); результат: переменная у приобрела значение 7.6000000000Е+00 типа real, переменная р - значение 0.

6) Массивы.

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

  1. нужно указать число компонент и способ ссылок на них.

  2. нужно указать тип хранящихся в них значений.

Такие типы данных называются структурированными и их можно описывать с помощью оператора TYPE в разделе описания данных программы.

Определение начинается со служебного слова Array (массив). Затем указывается диапазон принимаемых индексом значений, заключенный в квадратные скобки. За ним следует служебное слово OF (из), а за ним - тип компонент массива. Например, оператор.

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

Существует несколько типов массива. Обычно говорят о линейных (одномерных) массивах - компоненты в таких массивах имеют один индекс.

Двумерные (прямоугольные) массивы - компоненты таких массивов определяются двумя индексами.

Многомерные - компоненты таких массивов определяются тремя или более индексами.

Мы с вами будем рассматривать только линейные и двумерные массивы.

А) Линейные (одномерные) массивы.

Описание линейного массива может быть выполнено двумя способами:

  1. описание через введение типа данных пользователя:

Type наименование типа = array [диапазон индекса] of тип компонента;

Var имя массива: наименование типа;

Например:

Type mass = array[1..10] of real;

Var f: mass;

  1. var a: array[1..15] of string;

обращение к определенному элементу массива будет выглядеть так:

f[5]:= 7.2;

a[8]:= 'yes';

таким образом, пятый элемент массива f будет равен 7.2, а восьмой элемент массива а равен 'yes'.

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

  • блок ввода значений элементов массива.

Так как элементы массива имеют индексы, то мы можем использовать оператор цикла для автоматической смены индекса массива.

Тогда блок ввода может выглядеть так:

Begin

{* Ввод размера массива*}

write (' Введите размер массива');

readln (n);

{*Ввод значений элементов массива*}

for I: 1 to n do

begin

write('Введите а[',I,']');

read(a[I]);

clrscr ;

end;

  • блок вывода исходного массива (если это необходимо).

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

Так же, как и блок вывода, он использует оператор цикла:

Например:

for I: to n do

Write(a[I]);

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

  • Блок обработки массива - это основной блок, в котором производится обработка данных массива, то есть решение какой-нибудь задачи. Например:

For I: 1 to n do

If a[I] mod 2 = 0 then {*вывод результатов на печать*}

Writeln(a'[',I,']=',a[I]:8, 'I=',I);

  • Блок вывода результатов обработки - в зависимости от того, что нужно вывести на экран, может быть аналогичен выводу исходного массива или каким-либо иным.

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

Найти все четные по значению элементы массива из n чисел. Вывести на печать значения элементов и их индекс. Ввод элементов массива производится с клавиатуры.

Program massiv (input, output);

Uses crt;

Var a: array [1..1000] of integer; I, n: integer;

Begin

{*ввод размера массива*}

write ('введите размер массива');

readln(n);

{*ввод значений элементов массива*}

for I:= 1 to n do

begin

write('введите а[',I,']);

read(a[I]);

clrscr;

end;

{*поиск нужных элементов*}

for I:= 1 to n do

if a[I] mod 2 = 0 then

{*вывод результатов на печать*}

writeln('a[',I,']=',a[I]:8, 'I=',I);

{*организация задержки окна вывода*}

repeat until keypressed;

end.

Б) Двумерные массивы.

Двумерные массивы (прямоугольные таблицы, матрицы) могут подвергаться тем же обработкам, что и линейные. Отличие двумерных массивов от линейных состоит в том, что элементы массива (компоненты) имеют два индекса, которые указывают положение элемента в массиве и служат идентификатором при поиске элементов.

Описание двумерного массива может быть произведено следующим образом:

Const n1=…;n2=…;

Type mas=array[1..n1] of integer;

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

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

Const n1=…;n2=…;

Var a:array[1..n1,1..n2] of real;

В данном случае мы описали двумерный массив, содержащий n1 строк и n2 столбцов.

Элемент массива описывается как а[I,j], где I - показывает строку, в которой расположен элемент, а j - место этого элемента в строке (столбец).

Особенности ввода элементов двумерного массива и вывода его на экран.

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

7)Сортировка.

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

А) сортировка методом «пузырька» (наиболее простой, но самый неэффективный, медленный способ).

Суть этого метода состоит в том, что просматривается массив, начиная с первого элемента. С помощью дополнительной переменной (ячейки) производится обмен значениями элементов, удовлетворяющих условию.

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

Таким образом, продвигаясь по массиву, мы постепенно упорядочиваем его в порядке убывания (аналогично и для сортировки по возрастанию).

Например:

Вначале создаем массив случайных чисел а[I], например, введем их с клавиатуры. Механизм сортировки данного массива методом «пузырька» будет таким:

{*сортировка массива*}

for I:= 1 to n-1 do

for j:= I+1 to n do

if a[j]и а[I] меняются местами}

begin

r:=a[I];

a[I]:=a[j];

a[j]:=r;

end;

В данном теперь можно вывести на экран отсортированный массив а[I].

Б) Сортировка методом перебора (прямого выбора).

Рассматриваем ту же задачу, что и в предыдущем примере.

Просматривается исходный массив, и затем выбираются те элементы массива, которые надо добавить в конец выходного массива.

{сортировка массива}

for I:= 1 to n do

begin

k:=I;

x:=a[I];

{поиск наименьшего в оставшейся части массива}

for j:=I+1 to n do

if a[j]

begin

k:=j;

x:=a[j];

end;

a[k]:=a[I];

a[I]:=x;

end;

В) сортировка методом индексации (по возрастанию).

В данном случае мы используем то, что оперируем с дополнительным массивом индексов. Меняем местами не сами элементы в исходном массиве, а меняем индексы у элементов массива.

{сортировка массива}

for j:=I to I-1 do

begin

c1:=b[j];

c2:=b[j+1];

if a[c1]>a[c2] then

{сортировка по возрастанию}

begin

{обмен индексами}

b[j]:=c2;

b[j+1]:=c1;

end;

end;

8) Графика Паскаля.

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

Uses graph;

В обычном состоянии после загрузки экран находится в текстовом режиме. Применение графических процедур невозможно. Для того, чтобы это стало возможным, необходимо перейти в графический режим. Это совершается с помощью процедуры initgraph(gd,gm,tpf');

где gd, gm: integer; tpf:string.

Gd(graphdriver) - это параметр, который определяет выбор графического драйвера. Если его значение 0, то производится специальная процедура: выбирается один из имеющихся в конфигурации драйверов и подбирается графический режим gm(graphmode).Если же этот параметр отличен от нуля, то выбирается конкретный драйвер, тогда и gd должен иметь определенное значение.

Чаще всего используют подключение через специальную процедуру, присваивая gd значение0 или gd:=detect;

Параметр gm - устанавливает графический режим, то есть разрешение экрана и цветной или черно-белый режим (16 цветов), разрешением 640*480 точек (пиксел).

Строковой параметр tpf - указывает путь к графическому драйверу. Если он равен ''(пустая строка), то драйвер ищется в текущем каталоге.

Итак, для перехода в графический режим программа выглядит так:

Uses graph;

Var gd;gm:integer;

Begin

Gd:=detect; initgraph(gd,gm,'');

Затем переходим к основным процедурам графики:

Для выхода из графического режима применяется процедура closegraph:

Для очистки графического окна используется процедура Cleardevaice.

Основные процедуры графики Паскаля:

Pitpixel (x,y,c) - рисует точку с координатами х, у, цветом с;

Line (x1,y1,x2,y2) - рисует линию от точки с координатами х1,у1, до точки с координатами х2,у2;

Rectangle (x1,y1,x2,y2) - рисует рамку с диагональю х1,у1 - х2,у2;

Bar (x1,y1,x2,y2) - рисует прямоугольник с диагональю х1,у1 - х2,у2, закрашенный в соответствии с образцом, установленным процедурой Setfillstyle;

Bar3d (x1,y1,x2,y2,l,top[on/off]) - рисуется прямоугольный брусок, с передней гранью на диагонали x1,y1 - x2,y2, глубиной, обусловленной параметром l. Параметр top[on/off] определяет, имеет ли брусок перекрытие сверху или нет;

Arc (x,y,alf1,alf2,r) - рисуется дуга радиусом r с центром в точке х,у от угла alf1 до угла alf2. угон задается в градусах;

Circle (x,y,r) - рисуется окружность радиуса r, с центром в точке х,у;

Setlinestyle (stil, pattern, tolsch) - устанавливает тип линии (сплошная, пунктирная, штрих-пунктирная, штриховая) и ее толщину;

Setfillstyle (obr,c) - устанавливает образец заполнения для процедур Bar, Bar3d, Floodfill. Значение параметра obr, равное 0 - цветом фона, 1 - сплошное заполнение цветом, указанным параметром с;

Setcolor(c) - устанавливает цвет рисования;

Setbkcolor(c) - устанавливает цвет фрна;

Floodfill (x,y,c) - заполняет замкнутые области, ограниченные линией цвета с, в соответствии с образцом, установленным процедурой Setfillstyle. Координаты х,у должны лежать внутри заполняемой области.

9) Работа с файлами.

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

С этой целью существует файловая переменная (файл).

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

Иначе компоненты файла называются еще записями.

Просмотр файла осуществляется обычно сверху вниз.

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

В Паскале существует три типа файловых переменных: типизированные, текстовые, нетипизированные.

Типизированные файлы

Записи в таком файле имеют строгую структуру. Чаще всего в таких файлах используется тип данных record.

Текстовые файлы

Записи в таких файлах состоят из символов и строковых структур.

Нетипизированные файлы

В таких файлах может быть любая структура данных

Для всех типов файлов имеются общие правила:

  1. Файл в Паскале является переменной, а, следовательно, он должен иметь имя (например, filename). В то же время есть операционная система, которая также использует имена файлов. Связь между именами файлов в Паскале и DOSовскими файлами осуществляется с помощью процедуры:

Assign (filename, filedos) - процедура связи файловой переменной с файлом операционной системы. Все операции, производимые файловой переменной, производятся и с файлом операционной системы.

  1. Перед началом работы файл необходимо позиционировать (установить указатель записи на начало файла).

Для этого существуют процедуры:

Reset(file) - открытие уже существующего файла. Указатель записи становится на начало файла.

Rewrite(file) - создание нового файла. Указатель ставится на начало файла.

  1. с помощью стандартных процедур : read(file, s1…sn) и write(file, s1…sn), где s1…sn - номера записей, можно считать и записать данные из указанного файла

  2. так как файл может содержать не фиксированное жестко количество записей, то при его обработке необходимо определять, достигнут ли конец файла. Для этого служит функция Eof(file).

  3. Для того, чтобы завершить работу с файлом и указать метку конца файла, файл необходимо закрыть. Это осуществляется с помощью процедуры Close(file).

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

Ioresult - проверка, правильно ли прошло обращение к файлу (данная процедура используется и для других способов ввода данных). Если обращение прошло нормально, то значение этой функции 0.

Erase(file) - удаление файла. Предварительно файл должен быть закрыт.

Rename(file, file1) - переименование файла.

Теперь переходим к типизированным файлам и процедурам, которые позволяют обрабатывать такие файлы.

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

  • добавление записей;

  • изменение записей;

  • удаление записей;

существует несколько процедур и функций:

seek(f,s) - позиционирование указателя на запись с номером s;

filepos(f) - значением функции является номер записи, на который указывает указатель записи;

filesize(f) - показывает количество записей в файле;

truncate(f) - файл обрезается по текущему положению указателя, в этом месте ставится метка конца файла.

Мы будем рассматривать типизированные файлы.

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

Примеры программ:

1)

program tipfile;

uses crt;

type bagaj=record {введение типа данных в запись}

kol:integer; {ключевое поле}

massa:real;

fio:string[40];

end;

zap typ=bagaj;

file typ=file of zap typ; {задается тип файла}

var kopie,g. file typ;s:zap typ;name;string[20];

guir:boolean;

2)

procedure wwod(var s:zap typ); {ввод данных}

begin

clrscr;

writeln ('окончание ввода по вводу 0')

write('С вещей');read(s.kol);

if s.kol<>0 then

begin

write('общая масса');

readln(s.massa);

write('фамилия пассажира');

readln(s.fio);

end;

end;

3)

procedure wiwod(var s:zap typ); {печать записи на экран}

begin

writeln(s.kol:3,s.massa:4,s.fio:25);

end;

4)

procedure sozd(var g:file typ); {создаие файла даных}

var s:zap typ;

begin

rewrite(g);

wwod(s) {вввод данных с клавиатуры}

while s.kol<>0do

begin

write(g,s);

wwod(s); {ввод данных с клавиатуры}

end;

close(g);

end;

5)

procedure wiwodf(var g:file typ); {вывод содержимого файла}

var s:zap typ;

begin

reset(g);

while not eof (g) do

begin

read(g,s);

wiwod(s); {ввод записей}

end;

end;

6)

procedure podgot; {подготовка к работе программы}

var c:char;

begin

assign(kopie,'temp.cop'); {связывает переменную kopie с временным файлом}

write('имя файла');

readln (name);

assign(g,name); {связыавает переменную kopie с заданным файлом}

writeln ('файл уже есть? Д/Н');

readln(c);

case c of

'Y','y': begin

rewrite(g);



Приложение №1

Функция

Действие функции

Abs(x)

Абсолютное значение х (модуль)

Exp(x)

Значением функции будет ех

Cos(x)

Косинус х; х - в радианах

Sin(x)

Синус х; х - в радианах

Arctan(x)

Арктангенс х

Ln(x)

Натуральный логарифм х

Sqr(x)

Квадрат х

Sqrt(x)

Корень квадратный из х. Х>=0

Pi

Число . точность - от процессора

Odd(x)

Значение функции true, если х нечетен, и false - если х четен.

y:=Odd(3), y = true; y:=Odd(4), y = false;

Inc(x,n)

Значением является х, увеличенное на n. Если n отсутствует, увеличение х происходит на 1, т.е. х:=х+1.

y:=Inc(4,2), y=6;

Dec(x,n)

Значением является х, уменьшенное на n. При отсутствии n - х уменьшается на 1, т.е. х:=х-1.

y:=Dec(5,3), y=2;

Int(x)

Целая часть х, но вещественного типа

y:=Int(5.321), y=5;

Fraс(x)

Дробная часть х

y:=Fraс(5.321), y=0.321;

Trunc(x)

Целая часть х. Х - в диапазоне Longint

y:=Trunc(3.45), y=3;

Round(x)

Х, округленное до следующего целого числа. Точнее,

Round(x)=trunc(x) + 0.5 x>0

Round(x)=trunc(x) - 0.5 x<0

y:=round(5.3), y=5; y:=round(5.7), y=6;

y:=round(-4.2), y=-4; y:=round(-4.7), y= -5;




Приложение №2

D - и

ARRAY - массив

BEGIN - начало

CASE - вариант

CONST- константа

DIV - деление нацело

DO - выполнять

DOWNTO - уменьшая до

ELSE - иначе

END - конец

FILE - файл

FOR - для

FUNCTION- функция

GOTO - перейти

IF - если

IN - в

LABLE - метка

MOD - модуль

NIL - отсутствие указателей

NOT - не

OF - из

OR - или

PACKED - упакованный

PROCEDURE - процедура

PROGRAM - программа

RECORD - запись

REPEAT - повторять

SET - множество

THEN - то

TO - увеличивая до

TYPE - тип

UNTIL - пока (не)

VAR - переменная

WHILE - пока

WITH - с


Лабораторные работы:

1) Линейная структура. 


  1. Даны массы нескольких учеников класса, вычислить среднее арифметическое их веса в воздухе.

  2. Решить уравнение: у=3х5+15,45с3(а+8)

  3. Вычислить, какую часть клавиатуры занимают функциональные клавиши (например, F1, F2).

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

  5. Найти скорость тела, движущегося по окружности радиусом R, и

ускорением а.

6. Найти объем усеченного конуса.

2) Развилка. 

6. Найти количество четных чисел вводимых с клавиатуры (кроме 0).

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

  2. Найти количество положительных чисел вводимых с клавиатуры.

  3. Найти количество нечетных чисел вводимых с клавиатуры. Вывод результата по введению 0.

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

  2. Разработать фрагмент программы, контролирующей знания закона Ома для участка цепи.


  1. Цикл «ДО» и цикл «ПОКА». Методичка по изучению языка программирования Паскаль

7. Вводятся два числа А и B (А много больше B). Найти такое наибольшее N, что А больше или равно B в степени N.

8. Среднее арифметическое двух переменных чисел до тех пор пока одна из них не будет превышать 500.

  1. Находить сумму трех чисел до тех пор, пока одно из них не окажется нулем.

  2. Даны два числа, продолжать вводить их на клавиатуре до тех пор, пока они не станут равны.

  3. Найти то решение выражения а=5+(8+4*с), при котором его обе части будут строго больше 15.

  1. Цикл с параметром. 

  1. Найти сумму всех чисел на промежутке от -50 до 200, которые кратны, делятся на 5.8, и остаток от деления на 10 равен 5 или нулю.

  2. Найти все целые трехзначные числа, произведение которых равно заданному числу.

  3. Написать программу нахождения наибольшего общего делителя четырех положительных целых чисел. Числа вводятся с клавиатуры.

  4. Найти сумму кубов нечетных чисел.

  5. Составить программу по вычислению квадратов n четных чисел.

  6. Найти НОД для двух целых чисел a и b.

  7. Написать программу вычисления суммы квадратов чисел от 10 до 80.


  1. Оператор выбора. 

7. Написать программу, которая в зависимости от введенного символа выполнит следующие действия:

А) Вычислите значение функции у=2 ln (x), если введен символ f.

Б) Найдите наибольший общий делитель трех чисел, если дан символ d.

8. Написать в зависимости от выбора пользователя кинетическую энергию, потенциальную энергию, силу трения или силу притяжения.

9.

  1. Процедуры и функции. 

7. Вычислить значения определенного интеграла на интервале [a, b] от функции f(x)= cx4 - dx3 +2x - g.

8. Найти сумму цифр введенного с клавиатуры целого числа.

  1. Определить углы треугольника по значениям длин трех заданных его сторон.

  2. Вычислить значения интеграла на интервале [a,b] от функции f(x)=е - сх2 +х + kdx , используя метод трапеции, с точностью е=10-5.

7) Строковые переменные. 

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

  1. Подсчитать все согласные буквы в заданной строке.

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

  1. Массивы. 

7. Дан одномерный массив чисел. Найти сумму чисел этого массива.

8. В линейном массиве целых чисел, содержащем 20 элементов, удалить k-й элемент массива.

9. Вставить на k-ое место массива чисел элемент, равный наименьшему элементу массива.

10. Найти все элементы двумерного массива, большие или равные нулю.

11. В линейном массиве чисел заменить все элементы, большие 10, на число с.

  1. Заполнить линейный массив чисел по правилу: с[i]=а*i3 - b*(i+d).

  2. Дан двумерный массив размером 5 на 6. Удалить среднюю строку массива и заменить максимальный элемент каждой строки на противоположный.

  3. Определить максимальный элемент в одномерном массиве, включающем в себя 10 элементов.

  4. Составить программу, реализующую таблицу умножения (двумерный массив и вложенные циклы).


  1. Сортировка. 

7. Составить программу, получающую на входе 10 целых чисел и выводящую их на экран в порядке неубывания. (1 способом ).

8. Имеются два одномерных массива чисел. Создать из них один линейный массив и отсортировать его по возрастающей. (2 способом ).

  1. Дан одномерный массив, содержащий положительные и отрицательные числа. Создать два новых массива, в одном из которых содержатся только положительные (и 0), в другом - только отрицательные элементы (3 способом).

  1. Графические примитивы. 

7. Изобразить падающий кирпич.

8. Изобразить уменьшающуюся окружность.

9. Изобразить движущееся по диагонали слово.

  1. Вывести изображение телевизора с мелькающим экраном.

  2. Изобразить движущееся по перевернутой параболе слово «горка».

  3. Изобразить большой ромб из маленьких ромбиков.

11) Работа с файлами. 

7. Среди пятизначных чисел найти те, в которых все цифры различны.

  1. Вводятся три числа. Найти среди них такое, которое меньше наибольшего из них, но больше наименьшего.

  2. Вычислить значение функции у=2cosx на интервале от -3 до 3

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

  4. Найти наибольший элемент одномерного массива.


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


© 2010-2022