Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364139
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62791)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21319)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21692)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8692)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3462)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20644)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Контрольная работа: Анализ входного файла программы и вывод результатов в выходной файл

Название: Анализ входного файла программы и вывод результатов в выходной файл
Раздел: Рефераты по информатике, программированию
Тип: контрольная работа Добавлен 05:29:49 13 июня 2009 Похожие работы
Просмотров: 186 Комментариев: 20 Оценило: 3 человек Средний балл: 5 Оценка: неизвестно     Скачать

НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ УКРАИНЫ «КПИ»

МЕЖУНИВЕСИТЕТСКИЙ МЕДИКО-ИНЖЕНЕРНЫЙ ФАКУЛЬТЕТ

Кафедра медицинской кибернетики и телемедицины

РАСЧЕТНО-ГРАФИЧЕСКАЯ РАБОТА

по дисциплине «Основы программирования и алгоритмические языки»

вариант 21«Стекло»

Анализ входного файла программы и вывод результатов в выходной файл

выполнил:

студент гр. ИМ-71

Плахтий Артур Николаевич

проверил:

ст. препод. каф. МКТМ

Зинченко Н.П.

Киев 200 9


Содержание

Введение........................................................................................................... 3

1. Постановка задачи...................................................................................... 4

1.1 Формат входного файла........................................................................... 4

1.2 Формат выходного файла.................................................................................4

1.3 Примеры.................................................................................................... 4

2. Метод решения............................................................................................ 5

3. Алгоритм решения задачи.......................................................................... 6

4. Описание программы и ее составляющих.................................................. 8

4.1 Функция обработки данных..................................................................... 8

4.2 Защита от ошибок..................................................................................... 9

5. Руководство пользователя........................................................................ 10

Вывод............................................................................................................. 11

Литература.................................................................................................... 12

Приложение А. Листинг программы............................................................ 13

Приложение Б. Результаты работы программы.......................................... 28

Введение

На стандартном .поле 8*8 задано одна белая шашка и произвольное количество черных шашек.

Нужно найти самый длинный путь рубки белой шашки, то есть, максимальное количество ходов белой шашки при которых она бьет черные шашки.

1. Постановка задачи

Задача ставилась таким образом, чтобы проанализировать входной файл и вывести результат в выходной, изобразив при этом всё графически.

1.1 Формат входного файла

В первой строке входного файла записано число N- количество черных шашек (1 < N < 8).

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

1.2 Формат выходного файла

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

В случае нескольких решений вывести любое из них.

В случае невозможности или отсутствия ходов, вывести сообщение об этом.

2. Метод решения

Для реализации поставленной задачи была использована среда разработки Borland Delphi 6.0 update 1.

Внутри этой среды было использовано такие методы:

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

· компонент главного меню(TMainMenu);

· компоненты TMemo для отображения, редактирования и программной работы с текстами входных і выходных файлов;

· компонент TImage для вывода графических изображений;

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

· функции и методы работы со строчными величчинами;

· функции переобразования типов данных;

· функции создания у уничтожения визуальных обьектов;

· функции компонента TMemo для открытия и сохранения текста;

· математические вычисления;

· для создания текстовых входных файлов – тестовый редактор Notepad.

3. Алгоритм решения задачи

Рис.1. Блок-схема основной программы

Рис. 2. Блок-схема функции проверки входных данных


4. Описание программы и ее составляющих

Основой проверки входных данных программы являет собой компонент Form Create, который вмещает в себе все функции, которые написаны непосредственно в программе. Он является контейнером для таких действий: N2Click, N4Click, N5Click, Memo.Lines.LoadFromFile . А основой расчёта и вывода выходных данных программы являет собой компонент TForm1.Button1Click , который вмещает в себе все функции, которые написаны непосредственно в программе. Он является контейнером для таких действий

Опишем их:

· Memo.Lines.LoadFromFile – загружает входной файл в текстовый контейнер Memo1;

· N2Click – выход из программы;

· Button1Click – выводит выходные данные в текстовый контейнер Memo2;

· N4Click – вывести информацию о программе;

· N5Click – очистить переменные программы(используется перед открытием входного файла);

· FormCreate – собственно обработка данных;

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

4.1 Функция обработки данных

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

1) Загрузка входных данных с файла.

2) Заполнение TMemo1 входными данными.

3) Отображение веденных осколков на Image1 с помощью графического рисунка.

4) Вывод координат первого осколка без изменений на TMemo2.

5) Нахождение точки удара и расчёт разницы координат для параллельного переноса.

6) Вывод выходных данных на TMemo2.

7) Отображение выходных осколков на Image2 с помощью графического рисунка

4.2 Защита от ошибок

Защитой от ошибок в программе происходит в такой последовательности:

1) Проверка количества введенных осколков.

2) Проверка на наличие осколков с нулевой площадью.

3) Создание координатных осей и проверка сторон осколков на параллельность.

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

5) Нахождение суммы площадей всех введенных осколков.

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

5. Руководство пользователя

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

1. Откройте входной файл (input.txt и TOSHONADO.txt).

2. Вызовите процедуру расчета (команда «Меню->Выполнить» в главном меню или кнопка на панели инструментов).

3. Выход из программы реализуется командой «Меню->Выход» в главном меню или кнопка на панели задач.

Вывод

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

Литература

1. Т. Рюттен, Г. Франкен. Турбо Паскаль 6.0. Торгово-издательськое бюро BHV. Грифон. - К.: 1992. - 235 с.

2. Т. П. Караванова. Основи алгоритмізації та програмування. Форум. - К.: 2002. - 286 с.

3. И.Скляр. Вивчаємо мову программування PASCAL. http://distance.edu.vn.ua/metodic/pascal/

4. Будникова Н.А. Обучающий комплекс по программированию на языке ПАСКАЛЬ http://petrsu.ru/Chairs/IMO/pascal/

5. Потопахин В. Turbo Pascal.Решение сложных задач.БХВ-Петербург. С.-Пб.:2006. – 194 с.

Приложение А. Листинг программы

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ExtCtrls, Menus, MUNit;

type

TForm1 = class(TForm)

Vv: TMemo;

VV2: TMemo;

Button1: TButton;

Image1: TImage;

Image2: TImage;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

Memo: TMemo;

procedure Form Create(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure N2Click(Sender: TObject);

procedure N4Click(Sender: TObject);

procedure N5Click(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

N: integer;

result: boolean;

oskolok: array[1..3] of TPoint;

i: integer;

s: string;

OSX1,OSX2,OSY1,OSY2:integer;

sumyglov:extended;

razX,razY,OsnX,OsnY,nomervershiny: integer;

iosi,xosi,xx: integer;

sumploshadi,hh:real;

l1,l2:integer;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject); // Процедурасозданияформы

var

stemp: string;

bb:boolean;

begin

Vv.Lines.LoadFromFile('input.txt'); // Загружаемкоординатысфайла

Memo.Lines.LoadFromFile('TOSHONADO.txt'); // Загружаемкоординатысфайла

n:= StrToInt(Vv.Lines[0]); //Cчитываем количество треугольников

s:=Vv.Lines[0];

Vv.Lines.Delete(0);

{Заполняемкоординатыв TMemo1}

For i:=0 to n-1 do begin

oskolok[1].X:=StrToInt(Vv.Lines[i*6]);

oskolok[1].Y:=StrToInt(Vv.Lines[i*6+1]);

oskolok[2].X:=StrToInt(Vv.Lines[i*6+2]);

oskolok[2].Y:=StrToInt(Vv.Lines[i*6+3]);

oskolok[3].X:=StrToInt(Vv.Lines[i*6+4]);

oskolok[3].Y:=StrToInt(Vv.Lines[i*6+5]);

{Находим сумму площадей всех введеных треугольников}

sumploshadi:=sumploshadi+Abs((1/2)*((oskolok[2].Y-

oskolok[1].Y)*oskolok[3].X+

(oskolok[1].X-oskolok[2].X)*oskolok[3].Y+

(oskolok[2].X-oskolok[1].X)*oskolok[1].Y-

(oskolok[2].Y-oskolok[1].Y)*oskolok[1].X));

{Рисуем треугольники, которые ввёл пользователь на Image1}

Image1.Canvas.Pen.Color:=Random(4000000); // Выбираемцветлиний

Image1.Canvas.Pen.Style :=psInsideFrame; // Выбираемстильлиний

Image1.Canvas.MoveTo(20+oskolok[1].X,126-oskolok[1].Y); //Движемсякнужнойточке

Image1.Canvas.LineTo(20+oskolok[2].X,126-oskolok[2].Y); //Соединяемлиниейдветочки

Image1.Canvas.MoveTo(20+oskolok[2].X,126-oskolok[2].Y); //Движемсякнужнойточке

Image1.Canvas.LineTo(20+oskolok[3].X,126-oskolok[3].Y); //Соединяемлиниейдветочки

Image1.Canvas.MoveTo(20+oskolok[3].X,126-oskolok[3].Y); //Движемсякнужнойточке

Image1.Canvas.LineTo(20+oskolok[1].X,126-oskolok[1].Y); //Соединяемлиниейдветочки

{Проверяем сколько осколков ввёл пользователь(их должно быть не меньше четырёх)}

if N<4 then begin

result := false;

Application.MessageBox('Простите, но количество треугольников слишком мало'+

'(меньше 4)','Ошибка',MB_OK+MB_ICONError); //Выводим сообщение об ошибке

Button1.Enabled:=False; //Блокируемкнопку

exit;

end;

{Проверяем есть ли среди введеных треугольников, треугольники с нулевой площадью}

If oskolok[1].X = oskolok[2].X then begin

if oskolok[2].X = oskolok[3].X then begin

Application.MessageBox('Простите, но площадь одного из треугольников равна нулю'

,'Ошибка',MB_OK+MB_ICONError); // Выводим сообщение об ошибке

Button1.Enabled:=False; //Блокируемкнопку

exit;

end;

end;

If oskolok[1].Y = oskolok[2].Y then begin

if oskolok[2].Y = oskolok[3].Y then begin

Application.MessageBox('Простите, но площадь одного из треугольников равна нулю'

,'Ошибка',MB_OK+MB_ICONError); // Выводим сообщение об ошибке

Button1.Enabled:=False; //Блокируемкнопку

exit;

end;

end;

{Создаём оси паралельности}

{Ось паралельности ОХ1 по левой стороне стола}

If (oskolok[1].X = oskolok[2].X) then begin

If (oskolok[3].X>oskolok[1].X) then begin

xx:=xx+1;

end;

end;

If (oskolok[2].X = oskolok[3].X) then begin

If (oskolok[1].X>oskolok[1].X) then begin

xx:=xx+1;

end;

end;

If (oskolok[1].X = oskolok[3].X) then begin

If (oskolok[2].X>oskolok[1].X) then begin

xx:=xx+1;

end;

end;

{Ось паралельности ОХ2 по правой стороне стола}

If (oskolok[1].X = oskolok[2].X) then begin

If (oskolok[3].X<oskolok[1].X) then begin

xx:=xx+1;

end;

end;

If (oskolok[2].X = oskolok[3].X) then begin

If (oskolok[1].X<oskolok[1].X) then begin

xx:=xx+1;

end;

end;

If (oskolok[1].X = oskolok[3].X) then begin

If (oskolok[2].X<oskolok[1].X) then begin

xx:=xx+1;

end;

end;

{Ось паралельности ОУ1 по нижней стороне стола}

If (oskolok[1].Y = oskolok[2].Y) then begin

If (oskolok[3].Y>oskolok[1].Y) then begin

xx:=xx+1;

end;

end;

If (oskolok[2].Y = oskolok[3].Y) then begin

If (oskolok[1].Y>oskolok[1].Y) then begin

xx:=xx+1;

end;

end;

If (oskolok[1].Y = oskolok[3].Y) then begin

If (oskolok[2].Y>oskolok[1].Y) then begin

xx:=xx+1;

end;

end;

If (oskolok[1].Y = oskolok[2].Y) then begin

If (oskolok[3].Y<oskolok[1].Y) then begin

xx:=xx+1;

end;

end;

If (oskolok[2].Y = oskolok[3].Y) then begin

If (oskolok[1].Y<oskolok[1].Y) then begin

xx:=xx+1;

end;

end;

If (oskolok[1].Y = oskolok[3].Y) then begin

If (oskolok[2].Y<oskolok[1].Y) then begin

xx:=xx+1;

end;

end;

Vv2.Lines.Add(IntToStr(oskolok[1].X) + ' '+IntToStr(oskolok[1].Y)+' ' +

IntToStr(oskolok[2].X)+ ' '+IntToStr(oskolok[2].Y)+

' ' +

IntToStr(oskolok[3].X)+' '+IntToStr(oskolok[3].Y)); //Выводимбезизмененийкоординатыосколковна TMemo2

end;

////////Конец цикла

{Выводим сообщения о количестве треугольноков со сторонами с паралельными осям}

If xx=n-2 then begin

Application.MessageBox(PCHar('Ощибка - треугольников с параллельными осям сторонами всего лишь:'+INtToStr(Xx+2)),0); // Выводим сообщение об ошибке

Button1.Enabled:=False;

end;

end;

procedure TForm1.Button1Click(Sender: TObject); //Процедуравыполнениярасчётовивыводаданных

begin

Vv2.Lines.Clear; // Очишаем TMemo2

Vv2.Lines.Add('Выполняем расчет'); // Начинаем выводить текст на TMemo2

{Выводим без изменений координаты первого осколка на TMemo2}

oskolok[1].X:=StrToInt(Vv.Lines[0]);

oskolok[1].Y:=StrToInt(Vv.Lines[1]);

oskolok[2].X:=StrToInt(Vv.Lines[2]);

oskolok[2].Y:=StrToInt(Vv.Lines[3]);

oskolok[3].X:=StrToInt(Vv.Lines[4]);

oskolok[3].Y:=StrToInt(Vv.Lines[5]);

Vv2.Lines.Add(IntToStr(oskolok[1].X) + ' '+IntToStr(oskolok[1].Y)+' ' +

IntToStr(oskolok[2].X)+ ' '+IntToStr(oskolok[2].Y)+

' ' +

IntToStr(oskolok[3].X)+' '+IntToStr(oskolok[3].Y));

Image2.Canvas.Pen.Color:=clBlue; //Задаёмцветрисункуна Image2

{Рисуем первый осколок без изменений}

Image2.Canvas.MoveTo(20+oskolok[1].X,126-oskolok[1].Y);

Image2.Canvas.LineTo(20+oskolok[2].X,126-oskolok[2].Y);

Image2.Canvas.MoveTo(20+oskolok[2].X,126-oskolok[2].Y);

Image2.Canvas.LineTo(20+oskolok[3].X,126-oskolok[3].Y);

Image2.Canvas.MoveTo(20+oskolok[3].X,126-oskolok[3].Y);

Image2.Canvas.LineTo(20+oskolok[1].X,126-oskolok[1].Y);

//////////XXX

{Находим координаты точки удара}

If (oskolok[1].X = oskolok[2].X) then begin

nomervershiny:=3;

osnX:= oskolok[3].X;

osnY:=oskolok[3].Y;

l1:=l1+Abs(oskolok[2].Y-oskolok[1].Y);

end;

If (oskolok[2].X = oskolok[3].X) then begin

l1:=l1+Abs(oskolok[3].Y-oskolok[2].Y);

nomervershiny:=1;

osnX:= oskolok[1].X;

osnY:=oskolok[1].Y;

end;

If (oskolok[1].X = oskolok[3].X) then begin

l1:=l1+Abs(oskolok[1].Y-oskolok[3].Y);

nomervershiny:=2;

osnX:= oskolok[2].X;

osnY:=oskolok[2].Y;

end;

If (oskolok[1].Y = oskolok[2].Y) then begin

l2:=l2+Abs(oskolok[1].X-oskolok[2].X);

nomervershiny:=3;

osnX:= oskolok[3].X;

osnY:=oskolok[3].Y;

end;

If (oskolok[2].Y = oskolok[3].Y) then begin

l2:=l2+Abs(oskolok[2].X-oskolok[3].X);

nomervershiny:=1;

osnX:= oskolok[1].X;

osnY:=oskolok[1].Y;

end;

If (oskolok[1].Y = oskolok[3].Y) then begin

l2:=l2+Abs(oskolok[1].X-oskolok[3].X);

nomervershiny:=2;

osnX:= oskolok[2].X;

osnY:=oskolok[2].Y;

end;

//////////////////////////

{Считываем координаты отрезков до изменений}

For i:=1 to n-1 do begin

oskolok[1].X:=StrToInt(Vv.Lines[i*6]);

oskolok[1].Y:=StrToInt(Vv.Lines[i*6+1]);

oskolok[2].X:=StrToInt(Vv.Lines[i*6+2]);

oskolok[2].Y:=StrToInt(Vv.Lines[i*6+3]);

oskolok[3].X:=StrToInt(Vv.Lines[i*6+4]);

oskolok[3].Y:=StrToInt(Vv.Lines[i*6+5]);

{Находим длины сторон треугольников, которые паралельны осям OX}

If (oskolok[1].X = oskolok[2].X) then begin

nomervershiny:=3;

l1:=l1+Abs(oskolok[1].Y-oskolok[2].Y);

end;

If (oskolok[2].X = oskolok[3].X) then begin

nomervershiny:=1;

l1:=l1+Abs(oskolok[2].Y-oskolok[3].Y);

end;

If (oskolok[1].X = oskolok[3].X) then begin

nomervershiny:=2;

l1:=l1+Abs(oskolok[1].Y-oskolok[3].Y);

end;

{Находим длины сторон треугольников, которые паралельны осям OУ}

If (oskolok[1].Y = oskolok[2].Y) then begin

nomervershiny:=3;

l2:=l2+Abs(oskolok[1].X-oskolok[2].X);

end;

If (oskolok[2].Y = oskolok[3].Y) then begin

l2:=l2+Abs(oskolok[2].X-oskolok[3].X);

nomervershiny:=1;

end;

If (oskolok[1].Y = oskolok[3].Y) then begin

l2:=l2+Abs(oskolok[1].X-oskolok[3].X);

nomervershiny:=2;

end;

{Находим разницы координат вершин для паралельного переноса}

razX:= oskolok[nomervershiny].X-osnX;

razY:= oskolok[nomervershiny].Y-osnY;

{Расчитываем координаты вершин после переноса}

oskolok[1].X:=oskolok[1].X-razX;

oskolok[1].Y:=oskolok[1].Y-razY;

oskolok[2].X:=oskolok[2].X-razX;

oskolok[2].Y:=oskolok[2].Y-razY;

oskolok[3].X:=oskolok[3].X-razX;

oskolok[3].Y:=oskolok[3].Y-razY;

{Выводим координаты осколков после перенесения в точку удара}

Vv2.Lines.Add(IntToStr(oskolok[1].X) + ' '+IntToStr(oskolok[1].Y)+' ' +

IntToStr(oskolok[2].X)+ ' '+IntToStr(oskolok[2].Y)+

' ' +

IntToStr(oskolok[3].X)+' '+IntToStr(oskolok[3].Y));

{Рисуем треугольники, после перемещения на Image2( они образуют прямоугольник)}

Image2.Canvas.MoveTo(20+oskolok[1].X,126-oskolok[1].Y);

Image2.Canvas.LineTo(20+oskolok[2].X,126-oskolok[2].Y);

Image2.Canvas.MoveTo(20+oskolok[2].X,126-oskolok[2].Y);

Image2.Canvas.LineTo(20+oskolok[3].X,126-oskolok[3].Y);

Image2.Canvas.MoveTo(20+oskolok[3].X,126-oskolok[3].Y);

Image2.Canvas.LineTo(20+oskolok[1].X,126-oskolok[1].Y);

end;

hh:=(l1/2)*(l2/2); //Находим площадь образовавшегося прямоугольника

{Проверяем на равенство сумму площадей треугольников и прямоугольника}

If hh<>sumploshadi then begin

Application.MessageBox('Площади НЕ равны','Ошибка',MB_OK); // Выводим сообщение о неравенстве площадей

bUTTon1.Enabled := False; // Блокируемкнопку

end;

end;

{Задаёмменю}

procedure TForm1.N2Click(Sender: TObject); // "Выход"

begin

Application.Terminate;

end;

procedure TForm1.N4Click(Sender: TObject); // "Опрограмме"

begin

Form2.Show; // Открываем Form2

end;

procedure TForm1.N5Click(Sender: TObject); // "Обновить"

begin

Vv2.Lines.Clear; // Очищаем TMemo2

end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); // Процедуразакрытия TForm1

begin

Application.Terminate;

end;

end.

Приложение Б. Результаты работы программы.

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Хватит париться. На сайте FAST-REFERAT.RU вам сделают любой реферат, курсовую или дипломную. Сам пользуюсь, и вам советую!
Никита08:30:46 02 ноября 2021
.
.08:30:44 02 ноября 2021
.
.08:30:44 02 ноября 2021
.
.08:30:44 02 ноября 2021
.
.08:30:43 02 ноября 2021

Смотреть все комментарии (20)
Работы, похожие на Контрольная работа: Анализ входного файла программы и вывод результатов в выходной файл

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

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



Результаты(288303)
Комментарии (4159)
Copyright © 2005-2021 HEKIMA.RU [email protected] реклама на сайте