Программа расчета характеристик охлаждающих жидкостей в системе охлаждения легкового автомобиля
Упоминавшаяся выше процедура Proverka вызывается из процедур Vvod, Raschet и Vivod. Соответственно у нее самый большой список формальных параметров. Для выполнения ей требуется номер пункта главного меню I, название автомобиля — переменная m, признак ввода PRVV и 2 записи — типа jidkosti и типа auto. Первоначально процедура проверяет, есть ли в файле fl1. txt запись с полем name, совпадающим… Читать ещё >
Программа расчета характеристик охлаждающих жидкостей в системе охлаждения легкового автомобиля (реферат, курсовая, диплом, контрольная)
Министерство образования Республики Беларусь УО «БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТРАНСПОРТА»
Факультет УПП Кафедра «Информационные технологии»
Курсовая работа по дисциплине «Информатика»
на тему «Программа расчета характеристик охлаждающих жидкостей в системе охлаждения легкового автомобиля»
Выполнила: студентка группы УА-12 Стеба Е.В.
Гомель 2013
Содержание Введение
1. Анализ задания и постановка задачи
2. Физическое решение задачи
3. Руководство программиста
3.1 Разработка алгоритмов
3.2 Разработка программы
3.3 Организация файлов
4. Руководство оператора
5. Решение задачи средствами математического пакета MathCAD
Заключение
Список литературы Приложение, А Листинг программы Приложение Б Экранные формы
Введение
В современном мире роль информатики, средств обработки, передачи, накопления информации неизмеримо возросла. Средства информатики и вычислительной техники сейчас во многом определяют научно-технический потенциал страны, уровень развития ее народного хозяйства, образ жизни и деятельности человека.
Вычислительную технику в своей работе используют инженеры, конструкторы, писатели, художники, композиторы и музыканты. Она применяется сейчас не только в инженерных расчетах и экономических науках, но и таких традиционно нематематических специальностях, как медицина, лингвистика, психология. На базе компьютеров созданы самые совершенные медицинские приборы. Без компьютеров сегодня невозможно создание промышленных роботов, автоматических линий. Компьютер нашел применение во всех областях деятельности человека. Он стал своеобразным продолжением человеческого мозга, освободив человека от однообразного умственного труда, утомительного и неинтересного.
В связи с этим можно констатировать, что применение ЭВМ приобрело массовый характер. Возникла многочисленная категория специалистов-пользователей ЭВМ, которым необходимы знания по применению ЭВМ в своей отрасли: навыки работы с уже имеющимся программным обеспечением, а так же создания своего собственного программного обеспечения, приспособленного для решения конкретной задачи.
Внедрение ЭВМ во все сферы человеческой деятельности требует от специалистов разного профиля овладения навыками использования вычислительной техники. Поэтому разработка способов и методов представления информации, технологии решения задач с использованием компьютеров, стала важным аспектом деятельности людей многих профессий.
Алгоритмический язык Pascal — универсальный язык общего назначения, область приложений которого — программирование систем в самом широком смысле. Язык программирования Pascal был разработан в 1968—1971 гг. Никлаусом Виртом в Цюрихском Институте информатики (Швейцария). Pascal предназначался для обучения студентов программированию и был первым языком, в котором нашли отражение концепции структурного программирования. Международный стандарт языка Pascal был утвержден в 1982 г. Последующие совершенствования языка сделали его одним из самых распространенных в мире профессиональных алгоритмических языков.
Целью данной курсовой работы является приобретение и закрепление навыков в организации вычислительных процессов и программирования на алгоритмическом языке Pascal при решении прикладной задачи. Основной акцент в работе уделяется использованию процедур и функций. Большое внимание уделяется работе с файлами, подробно рассматриваются функции открытия и закрытия файла и записи в файл. Полученные знания помогут в будущем более эффективно подходить к процессу разработки программного обеспечения и организации сложных процессов.
Кроме того, в ходе данной работы будет найдено решение поставленной задачи средствами математического пакета MathCAD. Данный пакет является универсальной системой компьютерной математики. Использование пакета MathCAD в данной курсовой работе поможет сопоставить и проанализировать получаемые результаты.
1. Анализ задания и постановка задачи В данной курсовой работе требуется составить программу для решения физической задачи средствами Turbo Pascal.
Задача:
Двигатель, развивающий мощность N, работает с коэффициентом полезного действия з. Охлаждающая жидкость из рубашки охлаждения двигателя выходит нагретой до температуры Т, а затем вновь поступает в радиатор, где охлаждается до температуры Т0, и вновь в рубашку. Производительность насоса, перекачивающего охлаждающую жидкость, Р. Определите секундный расход жидкости, охлаждающей двигатель, и количество теплоты, которая относится от двигателя ежесекундно, учитывая, что удельная теплоемкость жидкости с, а плотность жидкости с.
Необходимо написать программу расчета требуемых характеристик для воды и тосола для различных автомобилей. При этом программа должна уметь добавлять, изменять, искать записи. Также, для упрощения работы с программой, необходимо создать интуитивно понятный интерфейс.
2. Физическое решение задачи
По определению из курса общей физики известно, коэффициент полезного двигателя любой машины равен отношению полезно использованной энергии (мощности) ко всей затраченной энергии (мощности). [10, c. 34] В нашем случае получаем:
(1),
где Nпол — полезная мощность;
Nзат — затраченная мощность;
Мощность — отношение работы, А к промежутку времени t, в течение которого она совершена. Согласно условию, затраченной будет мощность, развиваемая двигателем, а полезной — мощность, идущая на нагревание жидкости при охлаждении двигателя. [10, c. 32]
(2),
где Q — теплота, выделяемая при нагревании жидкости;
t — время работы.
Теплота нагревания прямо пропорциональна массе жидкости и изменению её температуры [2, c. 51] и определяется:
(3),
где m — масса охлаждающей жидкости;
Т-Т0 — изменение температуры охлаждающей жидкости;
Соответственно, подставив формулу (3) в формулу (2) получим выражение для определения полезной мощности.
(4),
Подставим формулу (4) в формулу (1) с учетом формулы (2):
Поскольку секундный расход воды определяется отношением, то из предыдущего выражения можно найти первую искомую величину:
(5)
Для нахождения второй искомой характеристики воспользуемся определением производительности. Производительность оборудования — объем продукции (работы), производимой в единицу времени данным оборудованием в соответствии с его конструктивными особенностями, технической характеристикой и определенными организационно-производственными условиями. [10, c. 44] Отсюда следует формула (6):
(6)
Объем жидкости, перекачанной насосом, является отношением массы жидкости к его плотности:
(7),
где m — масса охлаждающей жидкости;
с — плотность охлаждающей жидкости;
Массу жидкости выразим из формулы (3):
(8)
Подставив формулу (8) в формулу (7) найдем объем жидкости:
(9)
Подставим формулу найденного объема (9) в формулу производительности насоса (6):
Поскольку теплота, уносимая ежесекундно от двигателя определяется отношением всей перенесенной теплоты к промежутку времени, то ее можно получить из предыдущего выражения:
(10)
Таким образом, искомые характеристики охлаждающей жидкости определятся по формулам (5) и (10).
3. Руководство программиста
3.1 Разработка алгоритмов В результате анализа условия задачи, представленного в п. 1, и решения, представленного в п. 2 можно прийти к выводу, что в разрабатываемой программе должны выполняться следующие действия: ввод исходных данных, расчет необходимых характеристик, вывод полученных результатов и сохранение данных. [1, c. 12]
Согласно постановке задачи был разработан алгоритм основной программы, в котором использованы процедуры. Алгоритм основной программы представлен на рисунке 1.
Из постановки задачи следует, что из основной программы вызываются 3 процедуры: Vvod, Raschet, Vivod. В каждой из этих процедур выполняется одно из основных действий, предусмотренных задачей.
При обращении к процедуре Vvod пользователь имеет возможность ввести данные для различных автомобилей и посредством вызова другой процедуры проверить, вводились ли ранее эти данные. Блок-схема алгоритма данной процедуры представлена на рисунке 2.
На рисунке 3 изображена блок-схема алгоритма процедуры Raschet. В ней исследуется, рассчитывались ли ранее требуемые данные. С помощью вызова других процедур производится расчет характеристик заданного автомобиля, если это возможно.
Процедура Vivod выясняет возможность вывода данных по определенным автомобилям. Кроме того, с использованием вложенной процедуры происходит вывод на экран введенных данных и рассчитанных характеристик для различных автомобилей в виде таблицы. Блок-схема алгоритма находится на рисунке 4.
Из процедур Vvod, Raschet, Vivod происходит вызов вспомогательной процедуры Proverka. Данная процедура выполняет различную последовательность действий в зависимости от того, из какой процедуры она вызывается. Как видно из блок-схемы алгоритма процедуры Proverka (рисунок 5), в ней может происходить добавление исходных данных в файл, передача данных для дальнейшего расчета и вывод необходимой части таблицы.
Для непосредственного расчета требуемых характеристик процедура Proverka вызывает процедуру Vichisl. Блок-схема алгоритма процедуры Vichisl представлена на рисунке 6.
3.2 Разработка программы При составлении программы для расчета характеристик охлаждающих жидкостей использован ряд средств Pascal:
1. Операторы присваивания для изменения значения признаков.
2. Для организации меню использованы циклы с постусловием.
3. Для проверки файлов использованы циклы с предусловием.
4. Для вывода таблица для фиксированного числа автомобилей использованы циклы с параметром.
5. Для формирования линий таблицы использованы символы псевдографики.
6. Константы с1 и с2 — значения удельных теплоемкостей воды и тосола в кДж/кг*К.
7. Константы r1 и r1 — значения плотности воды и тосола в кг/м3 [10, c. 34]
Кроме того, в ходе разработки программы составлены 2 пользовательских структурированных типа записей: auto и jidkosti. [7, c. 95]
В запись типа auto помещаются исходные данные, необходимые впоследствии для расчета и вывода. Запись типа auto содержит следующие поля: поле name, в которое вводится название автомобиля; поле moschnost, в которое вводится значение мощности для данного автомобиля в кВт; поле KPD, в которое вводится значение коэффициента полезного действия для данного автомобиля в долях (не более 1); поле tvih, в которое вводится значение температуры выхода охлаждающей жидкости из рубашки охлаждения двигателя в градусах Цельсия; поле tvhod, в которое вводится значение температуры входа охлаждающей жидкости в рубашку охлаждения двигателя в градусах Цельсия; и поле nasos, в которое вводится значение производительности насоса, перекачивающего жидкость в 10-3*м3/с (см. Приложение А). В поле name вводится строковая величина, во все остальные — вещественные. Записи типа auto добавляются в файл fl1. txt в рабочей директории.
В запись типа jidkosti помещаются рассчитанные характеристики охлаждающей жидкости. запись этого типа содержит 5 полей (см. Приложение А). В поле namecar вводится строковая величина, обозначающая название того автомобиля, характеристики которого будут помещены в данную запись. В поле sekrashvoda помещается значение ежесекундного расхода воды, охлаждающей двигатель в кг/с. В поле sekrashtosol помещается аналогичная характеристика для тосола. В поле sekteplvoda добавляется значение ежесекундно уносимой от двигателя теплоты в Дж. при охлаждении водой. В поле sektepltosol добавляется аналогичная величина при охлаждении двигателя тосолом. Записи типа jidkosti помещаются в файл fl2. txt в рабочей директории.
На основе разработанных алгоритмов при написании программы было составлено 5 пользовательских процедур. Непосредственно из основной программы вызываются 3 процедуры. Вызов двух других происходит из самих процедур.
Процедура Vvod, составленная на основе блок-схемы алгоритма, представленной на Рисунке 2, обеспечивает ввод данных для конкретных автомобилей в виде записи типа auto до тех пор, пока пользователь не выберет другое действие. Как видно из листинга программы (Приложение А) для работы процедуры на вход подается только одна глобальная переменная, обозначающая номер пункта главного меню I. Этот номер и название машины передаются в процедуру Proverka, где происходит проверка на существование введенной информации в файле исходных данных fl1.txt. В случае отсутствия совпадений запись добавляется в файл.
Процедура Raschet, составленная на основе блок-схемы алгоритма, представленной на Рисунке 3, отвечает за расчет необходимых характеристик. Для работы процедуре передаются 2 глобальные переменные: уже упоминавшийся номер пункта главного меню и признак ввода PRVV. Сначала процедура ищет в файле fl2. txt, где хранятся рассчитанные данные, характеристики требуемого автомобиля. При отсутствии расчета вызывается процедура Proverka. В ней выясняется, вводились ли данные для нужного автомобиля. Если они вводились, вызывается процедура Vichisl, производящая непосредственный расчет в виде полей записи типа jidkosti и добавление этой записи в файл fl2.txt. Текст процедуры см. Приложение А.
С помощью процедуры Vivod осуществляется вывод исходных и рассчитанных данных в виде таблицы на экран. Для ее работы, как и процедуре Raschet передаются номер пункта главного меню и признак ввода PRVV. Сначала процедура требует ввести названия автомобилей и выводит шапку таблицы. После ввода названий автомобилей, для которых должна быть выведена таблица, процедура проверяет, были ли посчитаны характеристики. Если расчет производился, вызывается процедура Proverka. В ней для случая вызова из процедуры вывода находятся исходные данные и выводятся значения.
Упоминавшаяся выше процедура Proverka вызывается из процедур Vvod, Raschet и Vivod. Соответственно у нее самый большой список формальных параметров. Для выполнения ей требуется номер пункта главного меню I, название автомобиля — переменная m, признак ввода PRVV и 2 записи — типа jidkosti и типа auto. Первоначально процедура проверяет, есть ли в файле fl1. txt запись с полем name, совпадающим с переданным значением m. А далее в зависимости от того, из какой процедуры вызывалась Proverka и значения признаков, происходит либо запись в файл fl2, либо передача записи для расчета, либо вывод строки значений. Текст процедуры представлен в Приложении А.
Непосредственное вычисление искомых характеристик охлаждающих жидкостей происходит в процедуре Vichisl. Если данные для нужного автомобиля были введены, процедура Proverka передает процедуре Vichisl запись типа auto и переменную m с названием автомобиля. После чего происходит вычисление по формулам из п. 2 в поля записи типа jidkosti. Далее запись типа jidkosti добавляется в файл fl2.txt. Текст данной процедуры представлен в Приложении Б.
3.3 Организация файлов
В ходе работы программы создаются 2 типизированных файла в рабочей директории: файл fl1. txt и fl2.txt.
Файл fl1. txt предназначен для хранения вводимых исходных данных. Этот типизированный файл заполняется записями типа auto во время выполнения процедуры Vvod.
Файл fl2. txt необходим для хранения рассчитанных искомых характеристик. Данный типизированный файл заполняется записями типа jidkosti при выполнении процедуры Raschet.
4. Руководство оператора Разработанная в соответствии с алгоритмами, блок-схемы которых приведены на Рисунках 1−6, программа KURSOVAI. PAS предназначена для расчета характеристик охлаждающих жидкостей в системе охлаждения легкового автомобиля.
Данная программа работоспособна в среде MS DOS и WINDOWS. [8, c. 59]
Для запуска программы необходимо вызвать на выполнение исполняемый файл KURSOVAI.EXE. Программа сохраняет данные в 2 файла fl1. txt fl2.txt. Для корректной работы программы до первого ее запуска требуется создать в рабочей директории пустые текстовые файлы fl1. txt fl2.txt.
При запуске программы на выполнение пользователь видит главное меню, изображенное на рисунке 7 приложения Б.
При выборе пункта 1 главного меню на экране появится Меню ввода. См. рисунок 8 приложения Б. Выбрав пункт 1 вы должны будете ввести необходимые данные (см. рисунок 9 приложения Б). Далее перед пользователем появится меню, приведенное на рисунке 10 либо на рисунке 11 приложения Б в зависимости от того, какие данные вводились. Далее пользователь может либо выбрать пункт 1 и продолжить ввод, либо вернуться в главное меню, о котором упоминалось выше.
Пункт 2 главного меню вызывает на экран Меню расчета. См. рисунок 12 приложения Б. При выборе пункта 1 Меню расчета пользователю предлагается ввести название автомобиля, для которого пользователь хочет рассчитать характеристики охлаждающей жидкости. Далее на экране появится один из трех вариантов Меню для повторного расчета. См. приложение Б, рисунки 13−16. Затем пользователь может выбрать пункт 1 и продолжить расчет или выйти в главное меню.
Выбор пункта 3 главного меню вызывает меню вывода, отображенное на рисунке 16 приложение Б). Если выбрать пункт 1 меню вывода, то программы предложит ввести количество автомобилей и их названия (см. рисунок 17 приложения Б). После этого программа выведет результат в виде таблицы. Если расчет производился для всех автомобилей, то таблица будет иметь вид рисунка 18 приложения Б. Если для некоторых автомобилей расчет не производился — в виде таблицы на рисунке 19 приложения Б. Дальше можно продолжить работу с выводом или вернуться в главное меню.
После выбора пункта 4 главного меню вы увидите сообщение об окончании работы и программа завершит выполнение (см. рисунок 20 приложение Б).
жидкость охлаждающий программа pascal
Заключение
В данной курсовой работе решена задача расчета характеристик охлаждающих жидкостей в системе охлаждения легкового автомобиля.
Разработан алгоритм решения поставленной задачи с использованием процедур.
Составлена и отлажена программа на языке Pascal. В процессе отладки программы была получена полностью работоспособная программа. Проведено тестирование программы, проанализированы полученные результаты. Анализ результатов показал, что поставленная задача успешно решается.
Кроме того, задача решена также с применением математического пакета MathCAD.
Таким образом, при выполнении данной курсовой работы были приобретены и закреплены навыки структурного программирования на языке программирования Pascal на примере решения прикладных задач. Также освоены методы решения задач в математическом пакете MathCAD.
1. Бондарёв В. М., Рублинецкий В. И., Качко Е. Г. Основы программирования. — Харьков: Фолио, 1997.
2. Волькенштейн В. С. Сборник задач по общему курсу физики. 10-е изд., перераб. — М.: Наука. Главная редакция физико-математической литературы, 1979.
3. Грызлов В. И., Грызлова Т. П. Турбо Паскаль 7.0. — М.: ДМК, 1998.
4. Гурский Д. Mathcad для студентов и школьников. Популярный самоучитель/Д. Гурский, Е. Турбина. — СПб.: Питер, 2005.
5. Дьяконов В. П. Справочник по MathCAD. М.: СК Пресс.
6. Меженный О. А. Turbo Pascal. Самоучитель. — М.: Издательский дом «Вильямс», 2005.
7. Немнюгин С. А. Turbo Pascal: практикум. — СПб.: Питер, 2003.
8. Николаев В. И. Чалов Д.В. Сибирев В. Н. Информатика. Теоретические основы: Учеб. пособие. — СПб.: СЗТУ. 2002.
9. Офицеров Д. В. и др. Программирование на персональных ЭВМ: Практикум: Учебное пособие.-Мн.:Выш.шк., 1993.
10. Савельев И. В. Курс общей физики, т.1: Учебное пособие. — 2-е изд., перераб. — М.: Наука. Главная редакция физико-математической литературы, 1982.
11. Симонович С. В. и др. Информатика. Базовый курс. — СПб.: Питер, 2003.
12. Фаронов В. В. Турбо Паскаль 7.0. Начальный курс. Учебное пособие. — М.: «Нолидж», 1997.
Приложение, А Листинг программы
Program Kyrsovaia;
Uses crt;
Const c1=4.2; c2=2.375;
r1=1000; r2=1017;
Type auto=record
name: string;
moschnost: real;
KPD:real;
tvhod:real;
tvih:real;
nasos:real;
end;
jidkosti=record
namecar:string;
sekrashvoda:real;
sekteplvoda:real;
sekrashtosol:real;
sektepltosol:real;
end;
Var I, PRVI, PRVV: integer;
car, oldCar: auto;
rasch:jidkosti;
t:file of auto;
f:file of jidkosti;
Procedure Vichisl (m:string;oldCar:auto);
Var rasch: jidkosti;
Begin
reset (f);
while not eof (f) do read (f, rasch);
rasch.namecar:=m;
rasch.sekrashvoda:=(oldCar.moschnost*oldCar.KPD)/
(c1*(oldCar.tvih-oldCar.tvhod));
rasch.sekrashtosol:=(oldCar.moschnost*oldCar.KPD)/
(c2*(oldCar.tvih-oldCar.tvhod));
rasch.sekteplvoda:=oldCar.nasos*r1*c1*(oldCar.tvih-oldCar.tvhod);
rasch.sektepltosol:=oldCar.nasos*r2*c2*(oldCar.tvih-oldCar.tvhod);
write (f, rasch);
close (f);
ClrScr;
writeln ('Расчет успешно произведен');
end;
Procedure Proverka (var I: integer;m:string;PRVV:integer;
oldrasch:jidkosti;car:auto);
Var oldCar: auto;VR, j: integer;
Begin
assign (t,'fl1.txt');
reset (t); VR:=0;
while not eof (t) do
begin
read (t, oldCar);
if m=oldCar.name then
case I of 1: PRVV:=1;
2: begin Vichisl (m, oldCar);VR:=1; end;
3: begin
write ('+');
for j:=1 to 15 do
write ('-');
write ('+');
for j:=1 to 8 do
write ('-');
write ('+');
for j:=1 to 4 do
write ('-');
write ('+');
for j:=1 to 3 do
write ('-');
write ('+');
for j:=1 to 4 do
write ('-');
write ('+');
for j:=1 to 5 do
write ('-');
write ('+');
for j:=1 to 7 do
write ('-');
write ('+');
for j:=1 to 7 do
write ('-');
write ('+');
for j:=1 to 8 do
write ('-');
write ('+');
for j:=1 to 8 do
write ('-');
write ('+');
write ('¦', oldCar.name:15,'¦');
write (oldCar.moschnost:8:3,'¦');
write (oldCar.KPD:4:2);
write ('¦', oldCar. tvhod:3:0,'¦');
write (oldCar.tvih:4:0,'¦');
write (oldCar.nasos:5:3,'¦');
write (oldrasch.sekrashvoda:7:3,'¦');
write (oldrasch.sekrashtosol:7:3,'¦');
write (oldrasch.sekteplvoda:8:2,'¦');
write (oldrasch.sektepltosol:8:2,'¦');
end
end;
end;
if ((I=1) and (PRVV=1)) then
begin
ClrScr;
writeln ('Уже есть такие данные');
end;
if ((I=1) and (PRVV=0)) then
begin
write (t, car);
ClrScr;
writeln ('Данные успешно добавлены');
end;
close (t);
if ((I=2) and (VR=0)) then
begin
ClrScr;
writeln ('Расчет не произведен, так как данные не были введены');
end;
end;
Procedure Vvod (var I: integer);
Var VV, PRVV: integer; m: string;oldrasch:jidkosti;l: file of auto;
Begin
VV:=0;
ClrScr;
repeat
writeln ('1- Ввести данные');
writeln ('2- Выход в главное меню');
writeln ('Пожалуйста, сделайте выбор');
read (VV);
if VV=1 then
begin
write ('Введите значение мощности N=');
readln (car.moschnost);
write ('Введите название автомобиля car= ');
readln (car.name);
write ('Введите КПД KPD=');
readln (car.KPD);
write ('Введите температуру на входе T0=');
readln (car.tvhod);
write ('Введите температуру на выходе T=');
readln (car.tvih);
write ('Введите производительность насоса P=');
readln (car.nasos);
PRVV:=0;
m:=car.name;
Proverka (I, m, PRVV, oldrasch, car);
end;
until VV=2;
end;
Procedure Raschet (var I, PRVV: integer);
Var R, PRR: integer; m: string; oldrasch: jidkosti;car:auto;
Begin
R:=0;
ClrScr;
repeat
writeln ('1- Выполнить расчет');
writeln ('2- Выход в главное меню');
writeln ('Пожалуйста, сделайте выбор ');
readln®;
if R=1 then
begin
write ('Введите название автомобиля car= ');
readln (m);
PRR:=0;
assign (f,'fl2.txt');
reset (f);
while not eof (f) do
begin
read (f, oldrasch);
if m= oldrasch. namecar then
begin
ClrScr;
writeln ('Расчет уже был произведен ранее');
PRR:=1;
end;
end;
close (f);
if PRR=0 then Proverka (I, m, PRVV, oldrasch, car);
end;
until R=2;
end;
Procedure Vivod (var I, PRVV: integer);
Var VI, PRR, j, n, r: integer; m: string; oldrasch: jidkosti;
k:file of jidkosti;Cars: array [1.100] of string[15]; car: auto;
Begin
VI:=0;
ClrScr;
repeat
writeln ('1- Вывести данные');
writeln ('2- Выход в главное меню');
writeln ('Пожалуйста, сделайте выбор');
readln (VI);
if VI=1 then
begin
write ('Введите количество машин, данные для которых вы хотите вывести n=');
readln (n);
for j:=1 to n do
begin
write ('Введите название автомобиля car = ');
readln (Cars[j]);
end;
assign (k,'fl2.txt');
write ('-');
for j:=1 to 15 do
write ('-');
write ('T');
for j:=1 to 8 do
write ('-');
write ('T');
for j:=1 to 4 do
write ('-');
write ('T');
for j:=1 to 3 do
write ('-');
write ('T');
for j:=1 to 4 do
write ('-');
write ('T');
for j:=1 to 5 do
write ('-');
write ('T');
for j:=1 to 7 do
write ('-');
write ('T');
for j:=1 to 7 do
write ('-');
write ('T');
for j:=1 to 8 do
write ('-');
write ('T');
for j:=1 to 8 do
write ('-');
write ('');
write ('¦Название машины¦Мощность¦КПД ¦Твх¦Твых¦Насос¦РасхВод¦РасхТос¦ТеплВода¦ТеплТос ¦');
for r:=1 to n do
begin
m:=cars[r];
reset (k);
PRR:=0;
while not eof (k) do
begin
read (k, oldrasch);
if Cars[r]= oldrasch. namecar then
begin
PRR:=1;
Proverka (I, m, PRVV, oldrasch, car);
end;
end;
if PRR=0 then
begin
write ('+');
for j:=1 to 15 do
write ('-');
write ('+');
for j:=1 to 8 do
write ('-');
write ('+');
for j:=1 to 4 do
write ('-');
write ('+');
for j:=1 to 3 do
write ('-');
write ('+');
for j:=1 to 4 do
write ('-');
write ('+');
for j:=1 to 5 do
write ('-');
write ('+');
for j:=1 to 7 do
write ('-');
write ('+');
for j:=1 to 7 do
write ('-');
write ('+');
for j:=1 to 8 do
write ('-');
write ('+');
for j:=1 to 8 do
write ('-');
write ('+');
write ('¦', m:15,'¦','данные не выведены, так как
расчет не был произведен':62,'¦');
end;
end;
close (k);
write ('L');
for j:=1 to 15 do
write ('-');
write ('+');
for j:=1 to 8 do
write ('-');
write ('+');
for j:=1 to 4 do
write ('-');
write ('+');
for j:=1 to 3 do
write ('-');
write ('+');
for j:=1 to 4 do
write ('-');
write ('+');
for j:=1 to 5 do
write ('-');
write ('+');
for j:=1 to 7 do
write ('-');
write ('+');
for j:=1 to 7 do
write ('-');
write ('+');
for j:=1 to 8 do
write ('-');
write ('+');
for j:=1 to 8 do
write ('-');
write ('-');
end;
until VI=2;
end;
BEGIN
I:=0; PRVV:=0;
assign (t,'fl1.txt');
assign (f,'fl2.txt');
ClrScr;
repeat
ClrScr;
writeln ('1- Ввод');
writeln ('2- Расчет');
writeln ('3- Вывод');
writeln ('4- Конец работы');
readln (I);
Case I of 1: Vvod (I);
2: Raschet (I, PRVV);
3: Vivod (I, PRVV);
4: begin
ClrScr;
writeln ('Программа завершает работу');
end;
end;
readln;
until I=4
END.
Приложение Б Экранные формы Рисунок 7 — Главное меню.
Рисунок 8 — Меню ввода.
Рисунок 9 — Ввод значений.
Рисунок 10 — Меню для повторного ввода.
Рисунок 11 — Меню для повторного ввода.
Рисунок 12 — Меню расчета Рисунок 13 — Меню для повторного расчета.
Рисунок 14 — Меню для повторного расчета.
Рисунок 15 — Меню для повторного расчета.
Рисунок 16 — Меню вывода Рисунок 17 — Ввод величин, требуемый при выводе.
Рисунок 18 — Таблица результатов Рисунок 19 — Таблица результатов Рисунок 20 — Сообщение о завершении работы