- •Лабораторная работа №1 Тема работы: Использование алгоритмов для решения задач.
- •Лабораторная работа №2 Тема работы: Определение типов данных.
- •Лабораторная работа №3
- •Задания.
- •Контрольные вопросы:
- •Лабораторная № 4
- •Контрольные вопросы:
- •Контрольные вопросы:
- •Лабораторная работа №8 Тема работы: Подпрограммы. Процедуры.
- •Лабораторная работа №9 Тема работы: Подпрограммы. Функции.
- •Лабораторная работа №10
- •1.Что такое запись.
Лабораторная работа №9 Тема работы: Подпрограммы. Функции.
Цель работы: использование функций в программировании.
ЗАДАНИЯ
1. Написать функцию решения 3 задач по выбору, используя оператор выбора Case:
Переменные a,b,c -формальные .
Результат вычисления передать в виде параметра в основную программу.
1 |
| |
2 |
| |
3 |
| |
4 |
| |
5 |
| |
6 |
| |
7 |
| |
8 |
| |
9 |
| |
10 |
|
Пример 1. Реализация функцииn+n
Пример 2.
Program S_of_Figure;
var
choice: char;
a, x, y, z: real;
function circle(d: real): real;
const pi = 3.14159;
begin
circle := pi * sqr(d) / 4.0;
end;
function rectangle(a, b: real): real;
begin
rectangle := a * b
end;
function triangle(a, b, c: real): real;
var x: real;
begin
x := (a + b + c) / 2;
triangle := sqrt(x * (x - a) * (x - b) * (x - c))
end;
begin
repeat
read(choice);
case choice of
'c': begin
readln(x);
a := circle(x)
end;
'r': begin
readln(x, y);
a := rectangle(x, y)
end;
't': begin
readln(x, y, z);
a := triangle(x, y, z)
end
end;
writeln('Square: ', a:8:2);
until choice = 'q';
readln
end.
Лабораторная работа №10
Тема работы: Работа с массивами.
Цель работы: использование массивов в программировании.
Задание.
1. Заполнить одномерный массив « @ » и вывести упорядоченно на экран.
2. Заполнить одномерный массив числами произвольно и посчитать сумму и произведение всех элементов, результат вывести на экран.
3. Заполнить двумерный массив числами, найти сумму элементов над главной диагональю(I<J), массив и полученный результат вывести на экран.
Задание: 1 – на оценку 3,
1 и 2 – на оценку 4,
1, 2 и 3 – на оценку 5.
Пример упорядоченного вывода двумерного массива :
for i:=0 to n do begin
for j:=0 to m do
write(mas[i,j]:5);
writeln
end;
Лабораторная работа №11
Тема работы: Обработка линейных массивов.
Цель работы: использование обработки массивов в программировании.
Задание:
Написать код программы, вычисляющей сумму всех :
а) четных чисел массива;
б) нечетных чисел массива;
Написать код программы, вычисляющей сумму:
а) элементов над главной диагональю;
б) элементов под главной диагональю;
Написать код программы, вычисляющей сумму:
а) элементов на главной диагонали;
б) элементов на побочной диагонали;
Написать код программы, использующей процедуру по заданию 1.
Лабораторная работа №12
Тема работы: Использование записей.
Цель работы: изучение и использование записей для решения задач программирования.
Задание.
Реализовать трехуровневую запись по вариантам.
Меню кафе.
Характеристика автомобиля.
Резюме для работы.
Свой вариант.
Пример 1.
program primer 1 ; type anketa=record fio: string[45]; dat_r: string[8]; adres: string[50]; curs: 1..5; grupp: string[3] end; var student: array [1..100] of anketa; I: integer; begin {последовательно вводим каждую запись} for I:=1 to 100 do begin writeln (‘введите сведения о’, I , ‘-м студенте’); writeln (‘введите фамилию, имя и отчество’); readln (student[I].fio); writeln (‘введите дату рождения’); readln (student[I].dat_r); writeln (‘введите адрес’); readln(student[I].adres); writeln (‘введите курс’); readln(student[I].curs); writeln (‘введите группу’); readln (student[I].grupp); end; writeln (‘ввод закончен’); writeln ; {просматриваем массив записей и выбираем только студентов 2-го курса } for I:=1 to 100 do if student[I].curs=2 then writeln(‘ фамилия студента : ’, student[I].fio); end.
Пример 2.
Пример фрагмента программы c записью и префиксом Паскаля
for I:=1 to 100 do with student[I] do begin writeln (‘введите сведения о’, I , ‘-м студенте’); writeln (‘введите фамилию, имя и отчество’); readln (fio); writeln (‘введите дату рождения’); readln (dat_r); writeln (‘введите адрес’); readln(adres); writeln (‘введите курс’); readln(curs); writeln (‘введите группу’); readln (grupp); end;
Контрольные вопросы.