Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
288.26 Кб
Скачать

3. Объекты и средства исследования

1. Персональный IBM PC совместимый компьютер;

2. Среда программирования TurboPascal 7.0.

4. Задание на работу

Составить блок схему алгоритма и программу на языке Turbo Pascal в соответствии с вариантом по указанию преподавателя.

Вариант 1

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

program srarif1;

uses crt;

type mass=array[1..5,1..5] of integer;

type mas=array[1..5] of real;

var i,j:integer;

a:mass;

a1:mas;

procedure sred(d:mass;var s:mas);

begin

for j:=1 to 5 do begin

s[j]:=0.0;

for i:=1 to 5 do s[j]:=s[j]+d[j,i];

s[j]:=s[j]/5;

end;

end;

begin

clrscr;

randomize;

for i:=1 to 5 do

for j:=1 to 5 do

a[i,j]:=random(20);

for i:=1 to 5 do begin

for j:=1 to 5 do

write(' ', a[i,j]:3);

writeln;

end;

sred(a,a1);

for j:=1 to 5 do

writeln('Для строки',j:2, ' среднеарифметическое =', a1[j]:3:2);

readln;

end.

Вариант 2

В двумерном массиве определить сумму и число отрицательных и положительных элементов с помощью подпрограмм-процедур.

program chs;

uses crt;

const n=5;

type mas=array[1..n,1..n] of real;

var a:mas;sp,so:real;chp,cho,i,j:integer;

procedure pol(b:mas;var sump:real;var np:integer);

begin

sump:=0.0;np:=0;

for i:=1 to n do

for j:=1 to n do

if b[i,j]>0 then begin

sump:=sump+b[i,j];

np:=np+1;

end;

end;

procedure otr(b:mas;var sumo:real;var no:integer);

begin

sumo:=0.0;no:=0;

for i:=1 to n do

for j:=1 to n do

if b[i,j]<0 then begin

sumo:=sumo+b[i,j];

no:=no+1;

end;

end;

begin

clrscr;

randomize;

for i:=1 to n do begin

for j:=1 to n do begin

a[i,j]:= random(20)+0.1*random(10)-random(10);

write(a[i,j]:8:3);

end;

writeln;

end;

pol(a,sp,chp);

writeln(Число пол.=',chp:5,' Сумма пол.= ',sp:8:3);

otr(a,so,cho);

writeln(Число отр.= ',cho:5,' Сумма отр.= ',so:8:3);

readln;

end.

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

Перед началом работы следует:

  • Включить компьютер;

  • Войти в локальную сеть со своим зарегистрированным именем и паролем;

1. Запустить среду программирования TurboPascal 7.0. Создать новый файл с расширением pas.

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

3. По разработанному алгоритму составить программу.

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

5. Запустить выполнение программы и ознакомиться с результатами работы.

6. Завершить работу программы и закрыть среду программирования TurboPascal 7.0.

6. Содержание отчета

Отчет должен содержать название, цели и задачи лабораторной работы, задание, блок схему алгоритма работы программы в соответствии с ГОСТ 19.003 – 80, листинг программы, результат работы программы и выводы по работе.

7. Контрольные вопросы

1. Что такое подпрограмма-процедура?

2. Каков формат объявления подпрограммы- процедуры?

3. Какова структура подпрограммы- процедуры?

4. Как осуществляется вызов подпрограммы- процедуры?

5. Что такое фактические и формальные параметры?

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

«Работа с файлами на языке Паскаль»

1. Цель и задачи работы

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

2. Основные теоретические положения

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

Текстовый файл описывается стандартным именем типа text в разделе описаний переменных программной единицы.

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

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

Процедура записи строки в текстовый файл реализуется с помощью ключевого слова write(f, ‘ТулГУ’). В файл записывается строка ТулГУ. Аналогично в файл можно записать целые или вещественные числа.

После завершения записи информации в файл его надо закрыть. Это осуществляется с помощью процедуры close(f).

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

Для этого сначала прибегаем к использованию процедуры reset (f), которая устанавливает указатель файла, соответствующего переменной f, на начало файла. Непосредственное считывание информации по строкам осуществляется с помощью ключевого слова read (f, b[i]). Происходит пересылка текста из файла в оперативную память. По окончании считывания файл нужно закрыть с помощью процедуры close(f).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]