Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Работа с множественным типом данных.




Цель: научиться составлять программы решения задач с использованием множественного типа данных.

Теоретические сведения:

В языке Паскаль типом-множеством называется множество различных сочетаний элементов исходного (базового) типа. Число элементов исходного множества в Pascal не может быть больше 256, а порядковые номера элементов должны находиться в пределах от 0 до 255.

Для объявления типа-множества используются зарезервированные слова set of, после которых указываются элементы этого множества, как правило в виде перечисления или диапазона. Объявить тип-множество можно в разделе программы Type или при объявлении переменной в разделе Var. Например:

Type

Lat=set of 'A'..'Z'; {множество прописных латинских букв}

Oper=set of (Plus, Minus, Mult, Divide) {множество знаков арифметических операций}

Chisla=set of 12..27; {множество чисел от 12 до 27}

Digit=set of '0'..'9'; {множество символов-цифр}

После определения типа-множества можно объявить переменные или типизированные константы этого типа.

Var l: Lat; c1,c2: chisla; op: Oper; d: Digit;

g: set of ('а', 'я', 'о', 'ё', 'у', 'ю', 'э', 'е', 'ы', 'и');

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

Для множеств определены следующие операции.

+ объединение множеств;

- разность множеств;

* пересечение множеств;

= проверка эквивалентности двух множеств;

<> проверка неэквивалентности двух множеств;

<= проверка, является ли левое множество подмножеством правого;

>= проверка, является ли правое множество подмножеством левого;

in проверка принадлежности элемента множеству.

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

Порядок выполнения работы:

1) Запустите программу Pascal.

2) Составьте программу решения задачи: Вычислить значения отношений:

А) [2]<>[2, 2, 2]; Б) [4, 5, 6]=[5, 4, 6]; В) [2, 3, 5, 7]<=[1..9]; Г) [3, 6..8]>=[2..7, 9]

 

3) Составьте программу решения задачи: Вычислить значения выражений:

А) [1, 3, 5]+[2, 4]; Б) [1, 3, 5]*[2, 4]; В) [1, 3, 5]-[2, 4]; Г) [1..8]-[3..6]

 

4) Составьте программу решения задачи: Из множества целых чисел 1..20 выделить: 1) множество чисел, делящихся на 6 без остатка; 2) множество чисел, делящихся на 2 или на 3 без остатка. Вывести содержимое этих множеств на экран. Откомпилируйте программу. Проверьте правильность решения задачи на примере.

 

5) Составьте программу решения задачи: Ввести строку символов, состоящую из латинских букв, цифр и пробелов. Осуществить проверку правильности введенных символов.

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

 

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

 

7) Запишите полученные результаты в тетрадь. Оформите отчет о проделанной работе, который должен содержать тему, цель работы, формулировки задач с решениями.

 

8) Выйдите из программы Pascal.

 


 

Лабораторная работа №11

Организация процедур

Цель: научиться составлять программы решения задач с использованием процедур.

Теоретические сведения:

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

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

Формат описания процедуры имеет вид:

procedure имя процедуры (формальные параметры);

раздел описаний процедуры

begin

исполняемая часть процедуры

end;

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

имя процедуры (список фактических параметров);

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

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

Порядок выполнения работы:

1. Запустите программу Pascal.

 

2. Напишите программу, состоящую из трех процедур и основной программы. Первая процедура организует ввод двух целых чисел X и Y, вторая проверяет их сумму, третья выводит результат. Используйте эти процедуры в основной программе. Используйте X и Y как глобальные переменные. Откомпилируйте программу. Проверьте правильность решения задачи.

3. Найти площадь десятиугольника, вершины которого имеют координаты(x1,y1), (x2,y2), (x3,y3) … (x10,y10).

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

5. Вычислить разность двух простых дробей: a/b-c/d (a, b, с, d — натуральные числа). Результат получить в виде простой несократимой дроби e/f.

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

6. Вычислить

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

 

7. Дан одномерный массив, состоящий из 10 элементов. Используя процедуру, найдите максимальный и минимальный элементы этого массива.

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

 

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

 

9. Выйдите из программы Pascal.


 

Лабораторная работа № 12

Организация функций

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

Теоретические сведения:

Функции, это такие подпрограммы, результатом которых обязательно является некоторое зна­чение. Описание функции во многом совпадает с описанием процедуры. Но если имя процедуры ис­пользуется только для её вызова, то с именем функции, кроме того, связывается её результат. В описании функции заголовок выглядит следующим образом:

Fипсtiоп<имя>(<Параметры>): <Тип_возвращаемого_значения>;

<описания_переменных>;

Begin

<Тело подпрограммы>;

End;

Как и у процедуры, заголовок функции обязателен.

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

 

Порядок выполнения работы:

 

1) Запустите программу Pascal.

 

2) Определить значение выражения т (а,b, с) +т (b, с, d) +m (с, d, а) для ве­щественных а,b,с,d, где m(x,y,z) - функция определения минимального из трёх чисел.
Откомпилируйте программу. Проверьте правильность решения задачи.

3) Составить программу нахождения выражения х10 +2х9 -5х7 +4, используя функцию.
Откомпилируйте программу. Проверьте правильность решения задачи на любом примере.

4) Даны три квадратных уравнения ах2 +bx+c, dx2 +ex+f, px2 +qx+s. Сколько из них
имеют вещественные корни?

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

 

5) Вычислить периметр треугольника по его координатам.
Откомпилируйте программу. Проверьте правильность решения задачи на конкретном примере.

6) Запишите полученные результаты в тетрадь. Оформите отчет о проделанной работе, который должен содержать тему, цель работы, формулировки задач с решениями.

 

7) Выйдите из программы Pascal.


Лабораторная работа № 13

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...