Конспект лекций Паскаль для 1 курса заочного отделения – Методические рекомендации к выполнению контрольных работ


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

ИНФОРМАТИКА И ПРОГРАММИРОВАНИЕ

 для студентов 1 курса заочного отделения специальности «Математика»

1. Основы алгоритмизации …………………………………… 5
1.1. Понятие алгоритма …………………………………………… 5
              1.2.Основные алгоритмические конструкции ………………………… 6
2. ЭЛЕМЕНТЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ ПАСКАЛЬ ……… 7
2.1. Структура программы на языке Паскаль …………………… 7
2.2. Константы и переменные. Типы данных ………………………… 8
2.3. Основные операции, процедуры ввода-вывода и встроенные функции языка программирования Паскаль …………………………… ..  

9

2.4. Основные алгоритмические конструкции и их реализация на языке программирования Паскаль ……………………………………… ..  

12

3. МАССИВ КАК СТРУКТУРА ДАННЫХ ……………………………… 16
3.1. Описание массивов на языке Паскаль ……………………………… 16
3.2. Алгоритмы для работы с массивами ………………………… 17
4. РАБОТА С строчной величине в Паскале ……. 20
4.1. Тип String в Паскале …………………………………………. 20
4.2. Основные процедуры и функции для работы со строчными величинами в языке программирования Паскаль ………………………  

20

4.3. Программная реализация некоторых приемов работы с рядко- ными величинами …………………………………………………… …  

21

5. ЗАПИСИ В Паскале …………………………………………… … 23
5.1. Понятие записей ………………………………………………. 23
5.2. Примеры использования записей при составлении программ 23
6. РАБОТА С ФАЙЛАМИ В Паскале ……………………………. 25
6.1. Типы файлов в Паскале ………………………………………. 25
6.2. Процедуры и функции для работы с файлами …………… … 26

 

6.3. Работа с типизированными файлами ……………………………. 27
6.4. Работа с текстовыми файлами ………………………………. 28
6.5. Работа с нетипизированного файлами …………………………. 29
6.6. Программная реализация некоторых типовых задач для рабо- ты с файлами ……………………………………………………………  

30

7. ПРОЦЕДУРЫ И ФУНКЦИИ ПОЛЬЗОВАТЕЛЯ ……………… 34
7.1. Виды подпрограмм в Паскале ………………………………… .. 34
7.2. Процедуры в Паскале ………………………………………… 35
7.3. Функции в Паскале ……………………………………………. 36
8. РЕШЕНИЕ ТИПОВЫХ ЗАДАЧ ………………………… .. 37
9. ЗАДАЧИ ДЛЯ КОНТРОЛЬНОЙ РАБОТЫ ………………… .. 40
Список рекомендованной литературы ………………………………… 50

 

1. Основы алгоритмизации

 1.1. понятие алгоритма

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

В общем, все алгоритмы должны соответствовать следующим свойствам:

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

2. Результативность обязательное получение искомого результата или сигнала ошибки.

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

4. Дискретность возможность разбиения на элементарные действия. формы записи алгоритмов:

  1. Словесная форма: задача описывает алгоритм инструкцию о ис ния действий в определенной последовательности с помощью слов и предложений естественного языка.Форма изложения произвольная и устанавливается разработчиком.
  2. Формульно-словесная форма: инструкция о действиях содержит формальные си- мволы и выражения (формулы) в сочетании со словесными объяснениями.
  3. Графическая форма или схема это изображение алгоритма с помощью геометрических фигур, которые называются блоками.Последовательность блоков и сполу- ческих линий образуют схему.
  4. Псевдокод система правил записи алгоритма с использованием набо- ру определенных конструкций для описания управляющих действий.Псевдокод позволяет форма- льно изображать логику алгоритма, используя стандартизированные констру- кции естественного языка для изображения управления и сохраняя возможности языка для описания действий по обработке информации.

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

1.2. Основные алгоритмические конструкции

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

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

Циклический алгоритм алгоритм в котором предусмотрена возможность повто- ние некоторых действий.

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

2. ЭЛЕМЕНТЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ ПАСКАЛЬ

 2.1. Структура программы на языке Паскаль

 Программа, реализованная на языке программирования Паскаль содержит такие со- ные:

заголовок программы, который содержит название программы

раздел описания модулей, подключаются

раздел описания меток

раздел описания констант

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

раздел описания переменных

раздел описания процедур и функций

программный код

 

Важно!

Каждая команда программы, исключая исключений, должно заканчиваться символом ‘;

 2.2. Константы и переменные. типы данных

 Константа идентификатор, обозначающий некоторую неизменную величину определен- ного типа.Различают следующие виды констант:

целочисленные константы;

действительны константы;

символьные константы;

строчные константы;

типизированные константы.

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

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

идентификатор Длина (байты) диапазон значений операции
целочисленные типы
Integer 2 -32768..32767  

+, /, *, div, mod,> =, <=, =, <

>,>, <

Byte 1 0..255
Word 2 0..65535
Shortint 1 -128..127
Longint 4 -2147483648 ..

2147483647

Действительные типы
Real 6 2,9×10 -39  

+, /, *> =, <=, =, <>>, <

  1,7×10 38  
Single 4 1,5×10 -45
  3,4×10 38  
Double 8   5×10 -324 1,7×10 308  
логический тип
Boolean 1 True, False not, and, or, xor,> =, <=, =, <>

>, <

символьный тип
Char 1 символы ASCII +,> =, <=, =, <>>, <

Важно!

При написании программ необходимо соблюдать правила совместимости типов

 2.3. Основные операции, процедуры ввода-вывода и встроенные функции языка программирования Паскаль

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

Структура процедур ввода данных с клавиатуры такова:

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

В свою очередь, структура процедур вывода данных на экран такова:

Указанные процедуры позволяют также выводить на экран данные в формато- ванном виде, то есть позволяют указывать ширину поля вывода. Для величественного действительного типа элемент списка вывода может иметь вид A: N: M, где A переменная или выражение действительного типа, N ширина поля вывода, M число цифр после запятой, которые нужно выводить.Для величин других типов ширина поля указывается та-ким образом: A: N.

Важно!

Оператор присваивания имеет следующий синтаксис:

a = выражение;

где а переменная соответствующего типа

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

 

обозначение свойства
математические операции
* /, +, арифметические операции
Div Неполное частное от деления по модулю
Mod Остаток от деления по модулю
логические операции
Not логическое отрицание
And логическое умножение
Or логическое сложение
Xor логическое исключения
операции отношения
>, <= Больше, меньше, равно
<> Не равно
> = Больше или равна
<= Меньше или равно

Основные встроенные функции:

 

обозначение свойства
Abs (x) Возвращает абсолютное значение числа х
Cos (x), Sin (x) Возвращает синус / косинус числа х (в радианах)
ArcTan (x) Возвращает арктангенс числа х
Exp (x) Возвращает экспоненту числа х
Ln (x) Возвращает натуральный логарифм числа х
Pi число Пи
Sqr (x) Возвращает число, равное квадрату числа х
Sqrt (x) Возвращает квадратный корень числа х
Trunc (x) Возвращает целую часть числа х
Frac (x) Возвращает дробную часть числа х
Int (x) Возвращает целую часть числа х
Round (x) Округляет число х
Random (x) Возвращает случайное целое число в диапазоне от 0 до х

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

1. Выражение записывается в один строку.

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

3. Нельзя записывать подряд два знака арифметических операций. Например:

 

Логическое выражение выражение в котором два арифметические выражения связанные логич- ной операцией или операцией отношения.

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

 

a B Not (a) a And b a Or b a Xor b
True True False True True False
True False False False True True
False True True False True True
False False True False False False

2.4. Основные алгоритмические конструкции и их реализация на языке про- грамування Паскаль

Условный оператор (оператор ветвления): используется для реа- лизации разветвлений в программах.Структура условного оператора такова:

Важно!

Перед словом else точка с запятой не ставится

Также, стоит отметить, что возможно использование сокращенного за- Пису оператора ветвления:

 

Например: программа нахождения максимума из двух заданных вещественных чисел:

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

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

  1. Цикл с предусловием.Структура оператору является такой:

Операторы, которые находятся в теле цикла последовательно повторяются до тех пор, пока выполняется условие цикла.

Например: фрагмент программы для нахождения суммы первых n натура- ных четных чисел с использованием цикла while:

  1. Цикл с постусловием.Структура цикла является такой:

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

Важно!

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

Например: фрагмент программы для нахождения суммы первых n натура- ных четных чисел с использованием цикла repeat … until:

Стоит отметить, что при формулировании условия для циклов с предпосылкой ной и постусловием целесообразно использовать логические скобки (); и логические операции: and, or, not, xor).

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

Цикл со счетчиком работает по такому принципу: на первом этапе переменной счетчика присваивается начальное значение и выполняются операторы, которые находятся в теле цикла. Далее, последовательно значение переменной счетчика зби- льшуеться (в цикле первого типа) или уменьшается (в цикле второго типа) до тех пор, пока оно не достигнет конечного значения. Как только, значение личи- льника достигнет конечного значения, операторы тела цикла будут выполнены в последний раз и будет осуществлен выход из цикла. Таким образом, очевидно, что, если начальное значение переменной не превышает ее конечное значение и для задачи необходимо, чтобы значение счетчика последовательно увеличивалось на 1, то необходимо использовать цикл со счетчиком первого типа. В противном случае, когда необходимо, чтобы значение счетчика последовательно уменьшалось на 1, следует использовать цикл со счетчиком второго типа.

Например: фрагмент программы для нахождения суммы первых n натура- ных четных чисел с использованием цикла for:

 

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

Применение данных операторов возможно на любом этапе работы циклов.

  1. МАССИВ КАК СТРУКТУРА ДАННЫХ

 3.1. Описание массивов на языке Паскаль

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

Важно!

Все элементы массива обязательно должны иметь один и тот же тип

Порядковый номер элемента массива называют индексом.

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

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

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

3.2. Алгоритмы для работы с массивами

 

1. Пузырьковый метод упорядочения одномерного массива по вы- Танна элементов

 

 

 

2. Нахождение наибольшего элемента двухмерного массива.

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

 

 

 

4. Нахождение количества положительных элементов в прямоугольной матрицы.

4. РАБОТА С строчной величины в Паскаля

 4.1. Тип String в Паскале

 Строка (String) — последовательность символов.Этот тип данных определяет строку, максимальная длина которого — 255 символов. Переменная данного типа может при- иметь значение переменной длины. При описании переменных строчной типа можно ограничивать их максимальную длину. Например:

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

Важно!

Элемент строки с нулевым индексом содержит число, равное длине строки

Над строчными величинами можно выполнять следующие операции:

1. Операция конкатенации (+) применяется для «склеивания» двух ря-

ГКИС.

2. операции отношение (>, < =, > =, <=, <>) выполняют по символьное

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

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

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

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

обозначение свойства
Length (Str) функция, которая возвращает число, равное дов- жини строки
Delete (Str, Poz, N) процедура, которая удаляет N символов с ря- дка Str, начиная с позиции Poz
Insert (What, Where, Poz) процедура, которая делает вставку строки What в строку Where, начиная с пози- ции Poz
Copy (Str, Poz, Nstr) функция, которая копирует из строки Str, начи- кая с позиции Poz, строка длиной Nstr
Pos (What, Where) функция, которая возвращает позицию первого вхождения строки What в строке Where
Str (Number, St) процедура, которая превращает число в ряд- кову величину
Val (St, Number, Code) процедура, которая превращает строчную ве личину в числовую и выдает код верности преобразования

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

1. Переписать заданная строка символов в обратном порядке

2. Определить сколько цифр встречается в заданном строке.

 

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

5. ЗАПИСИ В Паскале

5.1. понятие записей

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

Записи описываются в разделе TYPE. Пример описания:

Важно!Все идентификаторы полей записи имеют иметь уникальные названия 

5.2. Примеры использования записей при составлении программ

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

 

 

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

 

6. РАБОТА С ФАЙЛАМИ В Паскаля

 6.1. Типы файлов в Паскале

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

Язык Паскаль поддерживает три типа файлов:

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

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

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

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

6.2. Процедуры и функции для работы с файлами

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

Основными процедурами для работы с файлами являются:

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

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

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

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

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

функция, которая возвращает значение True, когда при считывании достигнут конец файла.Это означает, что последний элемент уже прочитан или файл после от- раскрытия оказался пустым.

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

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

6.3. Работа с типизированными файлами

 Типизированный файл последовательность элементов некоторого заданного типа (кроме типа «файл»).Доступ к компонентам файла осуществляется через их по- ный номер. Компоненты нумеруются, начиная с нуля. После открытия файла указатель (номер текущей компоненты) указывает на нулевую компонентом та. После считывания текущей компоненты указатель переходит на следую- на.

Запись в файл и считывания из файла осуществляется соответствующими про- дурами:

Важно!

В указанных процедурах типы файловых компонент и переменных имеют спивпа- дать

Указатель в файле можно перемещать на компонента с заданным номером с помощью процедуры

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

Позицию указателя в файле показывает функция

Процедура, которая отсекает конец файла, начиная с активного записи такова:

6.4. Работа с текстовыми файлами

 Текстовый файл совокупность строк, разделенных метками конца строки.Сам файл заканчивается меткой конца файла. Доступ к строк файла возмож ный только последовательно, начиная с первой строки. Одновременно и запись, и зчи- вание из файла осуществлять запрещено.

Считывания и записи в текстовый файл осуществляются с помощью от- ющих процедур:

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

ву переменную пропускаются символы-разделители, начальные пробелы и зчиту- ется значение числа до появления следующего разделителя.В переменную типа string считывается такое количество символов, которая равна длине строки, но только в том случае, если ранее до того не встретился символ конца строки или конца файла.Процедура Readln отличается от процедуры Read тем, что в ней, после считывания данных пропускаются все остальные символы в данной строке, включая меткой конца строки.Если список переменных отсутствует, то процедура Readln (f) пропускает строку при считывании в текстовом файле.

В свою очередь, запись в текстовый файл зависит от переменных, есть у

списка и формата вывода. Writeln отличается от Write тем, что после записи всех значений из переменных она записывает еще и метку конца строки.

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

6.5. Работа с нетипизированного файлами

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

Параметр Bufsize задает число байт, которое будет записываться в файл или считываться с него за одно обращение.Минимальное значение параметра 1 байт, максимальное 64 Кбайт.Если параметр не указан, то по замовчу- нию он принимается равным 128.

Считывания данных с нетипизированного файла осуществляется процедурой

Эта процедура осуществляет за одно обращение считывания в переменную Х такое количество блоков, заданной параметром Count, при этом длина блока равна длине буфера.Необязательный параметр QuantBlock возвращает ко- лькисть блоков, прочитанных текущей операцией.

Запись данных в нетипизированных файл осуществляется процедурой

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

 

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

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

 

 

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

 

 

Задача 3. В типизированных файле записаны сведения о студентах (при- свыше, факультет, курс, стипендия). Для заданного факультета вывести при- высшим тех студентов, которые получают максимальную стипендию на нем и под- повысить эффек им выплаты на 10%.

 

 

Задача 4. Решить задачу 3 для случая текстового файла.

 

7. ПРОЦЕДУРЫ И ФУНКЦИИ ПОЛЬЗОВАТЕЛЯ

 7.1. Виды подпрограмм в Паскале

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

На языке Паскаль существует большой набор стандартных (библиотечных) про- процедур и функций. Процедуры и функции содержатся в стандартных модулях и подключаются к любой программы с помощью раздела Uses или авто томатически.

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

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

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

Все переменные, которые используют подпрограммы могут быть либо локальных ними, или глобальными:

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

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

7.2. процедуры в Паскале

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

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

 

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

Различают следующие виды параметров:

параметры-значения используются для передачи входных данных в подпрограмму.Формальные параметры при этом записываются через запятую с указанием типа. Они получают значение фактических параметров, но не могут передавать свои значения фактическим параметрам;

параметры-переменные является одновременно входными и выходными параметрами процедуры.В списке формальных параметров они перечисляются после слова Var с указанием типов.

Важно!

При описании параметров можно использовать только стандартные имена

типов данных или типы данных определены в разделе Type

Вызов процедуры осуществляется в следующем формате:

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

7.3. функции в Паскале

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

Важными особенностями функций являются:

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

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

Вызов функции осуществляется в следующем формате:

 

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

8. РЕШЕНИЕ ТИПОВЫХ ЗАДАЧ

 

Задача 1. Даны три действительных числа. Найти значение наибольшего из них.

 

 

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

 

Задача 3. Определить сколько парных цифр есть в записи заданного натурального числа n.

Задача 4. В заданном одномерном массиве, элементами которого являются натуральные числа найти сумму чисел кратных 3.

9. ЗАДАЧИ ДЛЯ КОНТРОЛЬНОЙ РАБОТЫ Задача 1

Подготовить доклад и реферат на тему согласно индивидуально го варианта. Текст реферата должен быть оформлен шрифтом 14 кегля, гарни- тура Times New Roman, межстрочный интервал 1,5.Поля левое — 3 см, нижнее и верхнее по 2 см, правое — 1,5 см. Нумерация страниц внизу от центра. Последняя страница — список использованных источников (не менее 5 пунктов).

 

вариант тема
1. поколение ЭВМ
2. Строение системного блока ЭВМ
3. Типы памяти в ЭВМ
4. Устройства ввода и вывода информации на ЭВМ
5. Характеристика запоминающих устройств
6. Характеристика основных типов принтеров
7. Программное обеспечение ПК
8. Топология компьютерных сетей
9. беспроводные сети
10. Типы лицензий программного обеспечения
11. BIOS
12. Электронная цифровая подпись
13. Компьютерные вирусы

 

задание 2

 

1. Создать таблицу в табличном процессоре MS Excel по образцу (размер шрифта — не менее 12). Заполнить собственными данными.Таблица с диагра- мою должна поместиться на одной странице формата А4 со всеми полями по 2 см.

2. Заполнить ячейки с знаком «?», Учитывая, что:

a. стоимость равна произведению цены на количество;

b. скидка рассчитывается по правилу: если стоимость больше 1000 $, то скидка составляет 20%, иначе — 5% от стоимости;

c. сумма в долларах равен разнице стоимости и скидки;

d. сумма в гривнах равна произведению суммы в долларах на курс доллара, вы- ристовуючы абсолютные адреса ячеек.

3. Отформатировать колонку «Сумма, $» так, чтобы клетки со значением боль- шими 1000 выделялись красной заливкой, используя условное фор матирования.

4. Отформатировать колонку «Наименование» так, чтобы наименование това ров с ценой менее 250 выделялись зеленым цветом шрифта, ис- тровальной условное форматирования.

5. Создать диаграмму, отображающую «Стоимость, $» и «Сумма, $» для всех то- варов.

СЧЕТ

курс доллара               8,16

 

 

Наименование

Цена,

$

К и ль-

к ис т ь

стоимость,

$

скидка

$

сумма,

$

Сумма, грн
1 Системный блок P-3,0 600,00 1 ? ? ? ?
 

2

Системный блок C- 2,2  

389,00

 

8

 

?

 

?

 

?

 

?

3 монитор Samsung 205,50 2 ? ? ? ?
4 монитор LG 171,75 8 ? ? ? ?
5 Принтер HP 1320 254,24 3 ? ? ? ?
6 Принтер Epson C45 85,99 2 ? ? ? ?
  вместе   ? ? ? ? ?

Бухгалтер Иванов

задание 3

 

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

331 * N

 

( )

() () ()

2N 1

16 февраля

10 августа

10

 

(N номер варианта).

 

задача 4

 

Построить блок-схему линейного алгоритма решения задачи от- ветствии с индивидуального задания. Результат изобразить средствами MSWord.

 

вариант Задача
1. По заданным сторонами прямоугольника найти его периметр и пло- шую.
2. По заданным координатам центра окружности и точки на окружности найти ЙО- го длину.
3. По заданным сторонами треугольника найти его площадь.
4. Найти среднее арифметическое трех заданных чисел.
5. По заданным координатам вершин треугольника найти его пери метр.
6. Найти произведение цифр заданного четырехзначного числа.
7. По заданным катетами прямоугольного треугольника вычислить довжи- на гипотенузы и площадь треугольника.
8. Поменять между собой значения двух переменных.
9. Вычислить объем параллелепипеда по трем заданным сторонами.
10. Найти площадь трапеции по заданной высоте и основаниями.
11. Определить, какую плату получит на фирме совместитель за выполненную работу, если ему начислено S грн., А налог составляет 20%.
12. По заданным элементами квадратной матрицы третьего порядка

 

  найти ее определитель.
13. По заданным числами a, b, c вычислить значение выражения

R               abc.

(A 2 b 2 1) 2

 

задача 5

 

Построить блок-схему алгоритма с разветвлением решения за- дачи согласно индивидуального задания. Результат изобразить средствами MSWord.

 

вариант Задача
1. По координатам точки определить номер четверти, в которой она расположенными.
2. Даны два действительных числа Х и У. Меньше из них заменить их напивсу- мое, и больше — их удвоенным произведением.
3. Даны три действительных числа. Возвести в квадрат только положительные числа. Результат вывести на экран монитора.
4. Даны целые числа a, b, c. Если a ≤ b ≤ c, то все числа заменить их квадратами, если a> b> c, то каждое число заменить наибольшим из них, иначе изменить знак каждого числа.
5. Определить, попадает точка «A» с координатами (x, y) всереди- на окружности радиуса R. Центр окружности совпадает с началом координат.
6. По номеру дня недели выводить его название.
7. Даны произвольные числа a, b и с. Если нельзя построить треугольник с такими длинами сторон, то вывести 0, иначе вывести от- ствующее сообщение в зависимости от того, равносторонний это треугольник, равнобедренный или какой-либо другой.
8. Дано число х. Напечатать в порядке возрастания числа x, 1 + | x | и (1 + х * x).
9. Даны три числа. Вывести два крупнейших из них.

 

10. Вычислить max (x + y + z, xyz) +3;
11. Вычислить значение функции (у = f (x)): у = x — 2, если x> 0,

y = 0, если x = 0, y = | x |, если x <0.

12. По заданным длинам сторон треугольника определить его тип: прямоугольный, остроугольный или тупоугольный.
13. По заданным центрами двух кругов и их радиусами определить их взаем- не расположение.

 

задача 6

 

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

 

вариант Задача
1. В ведомости указана зарплата, начисленная каждому из работников фирмы за месяц. Определить общую сумму начисленных по ведомостей те денег.
2. Известна масса каждого предмета, который загружают в автомобиль. Определить общую массу груза.
3. Известный сопротивление каждого из элементов электрической цепи. Все элементы соединены последовательно. Определить общее сопротивление цепи.
4. Известный сопротивление каждого из элементов электрической цепи. Все элементы соединены параллельно. Определить общее сопротивление цепи.
5. Заданные числа а 1, а 2, …, а 6.Определить их произведение.
6. Заданные числа а 1, а 2, …, а 10.Определить сумму их квадратов.
7. Задано натуральное число n и действительные числа а 1, а 2, …, а n.Определить сумму квадратов действительных чисел.
8. Заданные числа а 1, а 2, …, а 10.Определить их среднее арифметическое.

 

9. Задано натуральное число n и действительные числа а 1, а 2, …, а n.Определить се щих арифметическое действительных чисел.
10. Известны оценки по физике каждого из 20 учеников класса. Определить средне- ню оценку.
11. Известны оценки ученика из 10 предметов. Определить среднюю оценку.
12. Известны оценки по алгебре каждого ученика класса. Определить среднюю оценку.
13. Известна масса каждого предмета из некоторого набора предметов. Опреде- лить среднюю массу.

 

задача 7

 

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

 

вариант Задача
1. Дано натуральное число.

a. Верно ли, что сумма его цифр больше 10?

b. Верно ли, что произведение его цифр меньше 50?

c. Верно ли, что количество его цифр является число парное?

d. Верно ли, что это число четырехзначный? Составленную условие и вкла- дневный условный оператор не использовать.

e. Верно ли, что его первая цифра не превышает 6?

f. Верно ли, что оно начинается и заканчивается на одну и ту же цифру?

g. Определить, какая из его цифр больше: первая или последняя?

2. Дано натуральное число.

a. Верно ли, что сумма его цифр меньше а?

b. Верно ли, что произведение его цифр больше b?

c. Или верно, что это число k — значительное? составленную условие и вложенный

 

  условный оператор не использовать.

d.  Верно ли, что его первая цифра превышает m?

3. Дано натуральное число.

a. Верно ли, что сумма его цифр больше k, а именно число парное?

b. Верно что количество его цифр есть четное число, а именно число не превышает b.

c. Верно ли, что оно начинается цифрой x и заканчивается цифрой y?

d. Верно ли, что произведение его цифр меньше а, а именно число ди- литься на b?

e. Верно ли, что сумма его цифр больше m, а именно число дилить- ся на n?

4. Дано натуральное число. определить:

a. Есть ли в нем цифра 3.

b. Есть ли в нем цифры 2 и 5.

5. Дано натуральное число.

a. Определить, есть ли в нем цифра a.

b. Верно ли, что в нем нет цифры b?

c. Верно ли, что цифра а встречается в нем более k раз?

d. Определить, есть ли в нем цифры a и b?

6. Дано натуральное число. Установить, является ли последовательность его цифр при просмотре их справа налево отсортированной по росту. На- пример, для числа 5321 ответ удовлетворительная, для чисел 7820 и 9663 — неудовлетворительная, и тому подобное.
7. Дано натуральное число. Установить, является ли последовательность его цифр при просмотре их справа налево неубывающей. Например, для числа 5321 и 9663 ответ удовлетворительная, для числа 7820 — неудовлетворительная, и тому подобное.

 

8. Дано натуральное число. определить:

a. количество цифр в нем;

b. сумму его цифр;

c. произведение его цифр;

d. среднее арифметическое его цифр;

e. сумму квадратов его цифр;

f. сумму кубов его цифр;

g. его первую цифру;

h. сумму его первой и последней цифр.

9. Дано натуральное число. Найти:

a. число, получаемое при просмотре его цифр справа налево;

b. число, получаемое в результате дописки двойки на по-чала и в конце заданного числа;

c. число, получаемое в результате удаления из него всех цифр a;

d. число, получаемое из заданного при перестановке первой и последней цифр;

e. число, получаемое из заданного при дописывании к нему такого же числа.

10. Дано натуральное число. Определить сумму m его последних цифр.Если заданное число меньше, чем m — значительное, то цифры которых не виста- чает не учитывать.
11. Дано натуральное число. Определить номер цифры 3 в нем, раху- кая с конца числа. Если такой цифры нет, то ответом является число

0. Если таких чисел несколько, то определить номер той, что рас- расположенными самый правый.

12. Определить количество натуральных чисел на интервале от 100 до 500, сумма цифр которых равна 15.
13. Создать программу поиска четырехзначный чисел, которые при делении на 133 дают в остатка 125, а при делении на 134 — 111.

задача 8

 

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

 

вариант Задача
1. Заданный массив. вывести:

a. все неотъемлемые элементы;

b. все элементы, не превышающих число 100.

2. Заданный массив целых чисел. вывести:

a. все парные элементы;

b. все элементы, оканчивающиеся на 0.

3. Заданный массив натуральных чисел. вывести:

a. все элементы массива, является двузначными числами;

b. все элементы массива, является трехзначный числами.

4. Заданный массив. вывести:

a. Второй, четвёртый и т.д. элементы;

b. Третий, шестой и т.д. элементы

5. Дан массив. Вывести на экран сначала его неотъемлемые элементы, а затем отрицательные.
6. Дан массив целых чисел. Вывести на экран сначала его парные элементы, а затем нечетные.
7. Дан массив целых чисел. Найти номера элементов, закинчують- ся цифрой 0 (известно, что в массиве есть такие элементы).
8. В массиве хранится информация о количестве осадков для всех дней января. Определить в какие дни месяца осадков не было.
9. Дан массив. Вывести на экран сначала те его элементы, расположенными на четных позициях, а затем на нечетных.
10. Заданный массив действительных чисел.

a.  Каждый отрицательный элемент заменить его абсолютную вели-

 

  чина.

b. Все элементы с нечетными номерами заменить их квадратный корень.

11. Заданный массив действительных чисел.

a. Каждый элемент, больший 10, заменить на его квадратный ко- гравий.

b. Все элементы массива с четными номерами заменить их абсо- Февральские величину.

12. Заданный массив. Найти:

a. сумму элементов массива, значение которых не превышает 20;

b. сумму элементов массива, больших чем число a.

13. Заданный массив целых чисел. Найти:

a. сумму нечетных элементов;

b. сумму элементов, кратных заданному числу;

c. сумму элементов, кратных a или b.

Список рекомендованной литературы

 

 

1. Абрамов В.Г., Трифонов Н.П., Трифонова Г.Н. Введение в язык пас- каль. — М .: Наука, 1988.

2. Ван Тассел Д. Стиль, разработка, эффективность, отладка и испыта- ние программ. — М .: Мир, 1981.

3. Вирт Н. Алгоритмы и структуры данных. — М .: Мир, 1989.

4. Гладков В. П. Задачи по информатике на вступительном экзамене в вуз и их решения: Учебное пособие. — Пермь: Пермь. техн. ун-т, 1994.

5. Даген В.А., Григас Г. К., Аугутис К.Ф. 100 задач по программиро- ванию. — М .: Просвещение, 1993.

6. Епашников AM, Епашников В.А. Программирование в среде Турбо Паскаль 7.0. — М .: МИФИ, 1994.

7. Задачи по программированию / С. А. Абрамов, Г. Г. Гнездилова, Е. Н. Капустина, М. И. Селюн. — М .: Наука, 1988.

8. Зубов В. С. Программирование на языке Turbo Паскаль (версии 6.0 и 7.0). — М .: Информационно-издательский дом «Филинъ», 1997.

9.Леонтьев Ю. Самоучитель Office 2003.Питер — 2004. — 290 с.

10. Могилев А.В., Пак Н.И., Хеннер Е.К. Информатика: Учеб. пособие для студ. пед. вузов / Под ред. Е. К. Хеннера. — М .: Изд. центр «Академия», 1999.

11. Шэнь А. Программирование: теоремы и задачи. — М .: МЦНМО,

1995.

[Всего голосов: 3    Средний: 5/5]

Читать  Лекция Паскаль 3 – Атрибуты, переменные, присваивание и стандартные методы