КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Лабораторная работа №19
End. Begin Программирование модулей. Лабораторная работа №18 Цель: научиться составлять программы с использованием модулей в программе Turbo Pascal. Теоретические сведения: Модуль — это набор ресурсов (функций, процедур, констант, переменных, типов и т.д.), разрабатываемых и хранимых независимо от использующих их программ. Модуль может содержать достаточно большой набор процедур и функций, а также других ресурсов для разработки программ. Существуют стандартные модули Турбо Паскаля (system, crt, graph и т.д.). Модуль имеет следующую структуру: Unit <имя модуля>; {заголовок модуля} Interface {интерфейсная часть} Implementation {раздел реализации} {раздел инициализации модуля} После служебного слова Unit записывается имя модуля, которое должно совпадать с именем файла, содержащего данный модуль. В разделе Interface объявляются все ресурсы, которые будут в дальнейшем доступны программисту при подключении модуля. В разделе Implementation описываются все подпрограммы, которые были ранее объявлены. Кроме того, в нем могут содержаться свои константы, переменные, типы, подпрограммы и т.д., которые носят вспомогательный характер и используются для написания основных подпрограмм. В отличие от ресурсов, объявленных в разделе Interface, все, что дополнительно объявляется в Implementation, уже не будет доступно при подключении модуля. При описании основной подпрограммы достаточно указать ее имя, а затем записать тело подпрограммы. Раздел инициализации содержит операторы, которые должны быть выполнены сразу же после запуска программы, использующей модуль. Порядок выполнения работы: 1) Запустите программу Turbo Pascal. 2) Создать программу: Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над обыкновенными дробями вида P/Q (Р — целое, Q — натуральное): 1) сложение; 2) вычитание; 3) умножение; 4) деление; 5) сокращение дроби; 5) возведение дроби в степень TV (7V — натуральное); 6) функции, реализующие операции отношения (равно, не равно, больше или равно, меньше или равно, больше, меньше). Дробь представить следующим типом: Type Frac =Record Р: Integer; Q: 1..32767; End; Используя этот модуль, решить задачу: 1. Дан массив А, элементы которого — обыкновенные дроби. Найти сумму всех элементов и их среднее арифметическое; результаты представить в виде несократимых дробей. 2. *Дан массив А, элементы которого — обыкновенные дроби. Отсортировать его в порядке возрастания. Откомпилируйте программу. Проверьте правильность решения задачи.
3) Создать программу: Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над векторами: 1) сложения; 2) вычитания; 3) скалярного умножения векторов; 4) умножения вектора на число; 5) нахождения длины вектора. Вектор представить следующим типом: Type Vektor =Record X, Y: Real; End; Используя этот модуль, решить задачу: Дан массив А — массив векторов. Отсортировать его в порядке убывания длин векторов. Откомпилируйте программу. Проверьте правильность решения задачи.
4) Запишите полученные результаты в тетрадь. Оформите отчет о проделанной работе, который должен содержать тему, цель работы, формулировки задач с решениями.
5) Выйдите из программы Turbo Pascal. Графика Турбо – Паскаля. Цель: Рассмотреть основные операторы модуля GRAPH, реализовать их в конкретных программах Выполнение работы. 1. Набрать программу и описать действие операторов в виде комментариев. Program Animacia; Uses crt,graph; const osn:array[1..14] of integer =(485,355,605,355,605,375,385,375,385,365,485,365,485,355); kab:array[1..14] of integer=(485,365,485,305,455,305,445,335,395,345,395,365,485,365); ok1:array[1..10] of integer=(480,335,467,335,467,308,480,308,480,335); ok2:array[1..10] of integer=(463,335,448,335,457,308,463,308,463,335); var dr,md,kod,i:integer; size:word; p:pointer; Procedure Fillcolor (a,b:byte); begin setcolor(a); setfillstyle(1,b); end; begin dr:=Detect; initGraph(dr,md,'C:\bp.7\bgi'); kod:=graphresult; if kod=0 then begin fillcolor(0,11);bar(0,0,639,399); fillcolor(0,10);bar(0,400,639,479); fillcolor(14,14);pieslice(590,50,0,359,40); fillcolor(15,15);pieslice(50,50,0,359,30); pieslice(160,50,0,359,50); pieslice(150,50,0,359,40); fillcolor(6,6);bar(495,325,625,355); fillcolor(8,8); fillpoly(7,kab); fillcolor(9,9); fillpoly(5,ok1); fillpoly(5,ok2); fillcolor(0,0); circle(425,375,25); circle(565,375,25); floodfill(425,375,0); floodfill(565,375,0); fillcolor(7,7); circle(425,375,10); circle(565,375,10); floodfill(425,375,7); floodfill(565,375,7);end; repeat until keypressed; end.
Дата добавления: 2015-06-26; Просмотров: 681; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |