
Порядок выполнения работы
С помощью Проводника Windows на рабочем логическом диске создайте папку (например, Ivanov6) для размещения файлов проекта.
Создайте проект «Console Application» консольного приложения Delphi.
Сохраните файлы проекта в папку Ivanov6 под именем Ivanov6.
Вставьте текстовый файл в проект (команда меню «File / New / Other…»). Выберите на вкладке «New» тип вставляемого объекта «Text».
В результате текстовый файл File1.txt будет вставлен в проект и открыт в окне редактора.
Сохраните файл под именем Ivanov6_1.txt (команда меню «File | Save As…»)
Внесите в новый файл данные первого задания (строки – без пробелов, числа – через пробел):
Сохраните изменения файла (команда меню «File | Save»).
Отредактируйте текст главной программы для задачи 1.
PROGRAM Ivanov6;
{$APPTYPE CONSOLE}
USES
SysUtils;
var
F:array [1..10] of integer; // Массив F
teta,alfa,beta :string[4]; // Стринги
w :real; // Вещественное число W
e :integer; // Целое число Е
i :integer; // Счетчик элементов массива F
n :integer; // Количество элементов массива F
fi,fo :text; // Файловые переменные fi,fo
begin
// Файловой переменной fi назначается файл Ivanov6_1.txt
AssignFile(fi,'Ivanov6_1.txt');
Reset(fi); // Текстовый файл открывается для чтения
Readln(fi,teta,alfa,beta); // Чтение из файла первой строки
Readln(fi,w,e); // Чтение из файла второй строки
Readln(fi,n); // Чтение из файла третьей строки
for i:=1 to n do Read(fi,F[i]); // Чтение из файла четвертой строки
CloseFile(fi); // Закрывается прочитанный файл fi
// Выводим информацию в файл:
// Файловой переменной fo назначается файл Ivanov6_1.out
AssignFile(fo,'Ivanov6_1.out');
Rewrite(fo); // Текстовый файл fo открывается для записи
Writeln(fo,' teta=',teta,' alfa=',alfa,' beta=',beta);
Writeln(fo,' w=',w:12:9,' e=',e:4);
Write(fo,' F=(');
for i:=1 to n do Write(fo,F[i]:3);
Writeln(fo,' )');
CloseFile(fo); // Закрывается файл fo,созданный программой
// выводим информацию на экран:
Writeln(' teta=',teta,' alfa=',alfa,' beta=',beta);
Writeln(' w=',w:12:9,' e=',e:4);
Write(' f=(');
for i:=1 to n do Write(F[i]:3);
Writeln(' )');
WriteLn('***** Press <ENTER> to finish *****');
Readln; // задержка экрана
Readln;
END.
Запустите приложение на выполнение (горячая клавиша F9). Консольное окно с результатами расчета для задачи 1 выглядит так:
Откройте файл с результатами Ivanov6_1.out (команда меню «File | Open»)
Проанализируйте содержание выходного файла Ivanov6_1.out
Сохраните и закройте проект Ivanov6.
Создайте новый проект консольного приложения Delphi и сохраните его файлы в папку Ivanov6 под именем Ivanov6_2.
Вставьте текстовый файл в проект (команда меню «File / New / Other…»). Выберите на вкладке «New» тип вставляемого объекта «Text».
В результате текстовый файл File1.txt будет вставлен в проект и открыт в окне редактора.
Сохраните файл под именем Ivanov6_2.txt (команда меню «File | Save As…»)
Внесите в новый файл Ivanov6_2.txt данные второго задания:
Сохраните изменения файла (команда меню «File | Save»).
Отредактируйте текст главной программы для задачи 2.
program Ivanov6_2;
{$APPTYPE CONSOLE}
uses
SysUtils;
const
MaxDim = 10; // максимальный размер матрицы
type
arr=array[1.. MaxDim,1.. MaxDim] of integer; // тип arr для массива А
var
A:arr; // массив А
R:integer; // разность
Amax:integer; // максимальный элемент
Amin:integer; // минимальный элемент
i,j:integer; // счетчики по строкам, столбцам
m:integer; // размер квадратной матрицы
fi,fo:text; // файловые переменные
begin
// Файловой переменной fi назначается файл Ivanov6_2.txt
AssignFile(fi,'Ivanov6_2.txt');
Reset(fi); // Текстовый файл открывается для чтения
// Файловой переменной fo назначается файл Ivanov6_2.out
AssignFile(fo,'Ivanov6_2.out');
Rewrite(fo); // Текстовый файл fo открывается для записи
Readln(fi,m); // чтение размера матрицы из первой строки файла
if m>MaxDim then // проверка размера матрицы
begin
m:=MaxDim;
Writeln('Матрица из файла урезана до размера массива');
end;
for i:=1 to m do // чтение из файла матрицы А
begin
for j:=1 to m do Read(fi,A[i,j]);
Readln(fi); // перевод указателя файла на новую строку
end;
CloseFile(fi); // Закрывается прочитанный файл fi
Amin:=A[1,1]; // начальные установки
Amax:=A[1,1];
// поиск минимального и максимального элементов:
for i:=1 to m do
for j:=1 to m do
begin
if A[i,j] < Amin then Amin:=A[i,j];
if A[i,j] > Amax then Amax:=A[i,j];
end;
R:=Amax-Amin; // разность
Writeln(fo,' Amax=',Amax,' Amin=',Amin,' Raznost = ',R);
Writeln('Amax=',Amax,' Amin=',Amin,' Raznost = ',R);
CloseFile(fo); // Закрывается файл fo,созданный программой
WriteLn('***** Press <ENTER> to finish *****');
Readln; // задержка экрана
end.
Запустите приложение на выполнение (горячая клавиша F9). Консольное окно с результатами расчета для задачи 1 выглядит так:
Откройте файл с результатами Ivanov6_2.out (команда меню «File | Open»)
Проанализируйте содержание выходного файла Ivanov6_2.out
Сохраните и закройте проект Ivanov6_2.