Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Модульное программирование. Стандартные модули. Назначение и использование.Содержание книги
Поиск на нашем сайте
Модуль – библиотека констант, переменных, процедур, функций, данных. Каждый модуль транслируется отдельно и может быть использован в программах пользователей. Турбо Паскаль имеет 10 предопределений модулей, которые могут быть использованы для программ реального режима ДОС. Модули могут быть в виде PAS файлов с исходными текстами и в виде объектных модулей TPU в файлах. Паскаль содержит следующие стандартные модули: System, Dos, CRT,Printer,GRAPH,Overlay. В библиотеке модулей, которые называются turbo.tpl содержатся модули System,Dos,CRT,Printer,Overlay. Остальные Graph,String,Windos,Turbo3,GraphS находятся в отдельных файлах библиотеки Turbo Vision. Максимальная длина сегмента модуля может быть не более 64к.байт. Количество используемых модулей ограничиваются только внешней памятью. Структура модуля. Он состоит из заголовка ((1)интерфейсная оболочка; 2)исполняемая часть или часть реализации; 3) инициализирующая часть); 1) interface (а)uses – глобальные объекты модуля; б)заголовки процедур и функций с параметрами); 2)implementation (а) локальные процедуры и функции; б)тексты процедур и функций); 3) может начинаться служебным словом begin, а может на начинаться этим словом. Важно, чтобы она заканчивалась служебным словом end. В этой части, если это требуется, могут открываться нужные файлы и инициализироваться переменные. Использование модулей. Для использования модулей надо: после оператора programставим служебное слово USES Printer,Crt,Graph; Модуль System подключается автоматически без указания его в uses. Краткое описание модулей. Модуль System – это библиотеку поддержки Турбо Паскаль. Он обеспечивает выполнение низкоуровневых программ, таких как файловый ввод, вывод, обработка строк, операции с плавающей запятой и управление динамической памятью. Все модули и программы Паскаля автоматически используют модуль System. Модуль DOS и WinDOS – эти модули поддерживают большинство наиболее часто используемых функций операционной системы и обработки файлов. Модуль WinDos в отличии от модуля Dos используют специальный тип строки завершающейся нулем и предназначенный для взаимодействия с операционной системой Windows. Модуль CRT дает возможность управлять чтением расширенных кодов клавиатуры, экранным режимом, использовать звук, цвет и окна. Модуль Printer позволяет перенаправлять стандартный вывод Турбо Паскаля на принтер, используя процедуры writeln,write. ОБРАЗЦЫ РЕШЕНИЙ ЗАДАЧ 1. Написать программу для вычисления функции: на промежутке [-20,20] с шагом 0,5 Ответ Program prim1; var x,y:real; begin x:=-20; while x<=20 do {цикл смены X из интервала [-20,20] } begin if x<-10 then y:=2-x else {проверка условия} if x<-5 then y:=x-x*x else if x<2 then y:=x*x*x else y:=sqrt (x); writeln ('y=',y:6:2,'при x=',x:6:2); x:=x+0.5; end; end.
Сформировать двухмерный массив, состоящий из N x N элементов. После чего: найти сумму элементов столбца, в котором расположен минимальный элемент матрицы. Ответ program prim2; uses crt; const n=13; var a:array[1..n,1..n] of integer; {объявляем двухмерный массив} s,min:integer; i,k,j:byte; begin clrscr; writeln ('Элементы матрицы ->'); randomize; {инициализация процедуры генерации случайных чисел} for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=random (100) {заполняем массив случайными числами в диапазоне от 0 до 100}; write (a[i,j],'':5); end; writeln; end; min:=a[1,1]; for i:=1 to n do for j:=1 to n do if min>a[i,j] then begin min:=a[i,j]; k:=j; end; for i:=1 to n do s:=s+a[i,k]; writeln ('Сумма элементов столбца ',k,' в котором расположен Min=',min,' равна->',s); readkey end. 3. Задан двумерный массив A (NxN). Найти, сколько отрицательных эллементов массива А=a[i,j] удовлетворяют условию: -110<=a[i,j]<=-1. Из этих элементов сформировать новый массив В. Ответ program prim3; uses crt; const n=5;m=10; var a:array[1..n,1..n] of integer; {объявляем двухмерный массив} b:array[1..m] of integer; {объявляем одномерный массив} r,i,j:integer; begin clrscr; writeln ('Элементы матрицы ->'); randomize; {инициализация процедуры генерации случайных чисел} for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=random (200+200)-200; {заполняем массив случайными числами в диапазоне от -200 до 200} write (a[i,j]:5,' '); end; writeln; end; r:=0; for i:=1 to n do begin for j:=1 to n do begin if a[I,j]<0 then if (a[I,j]>=-110)and (a[I,j]<=-1)then {проверяем условие} begin r:=r+1; b[i]:=a[i,j]; write (b[i]:3,','); end; end; end; writeln; writeln ('условию удовлетворяют ',r,' элемента массива'); readln end.
4. Известно, что в текст Т входит восклицательный знак. Подсчитать в последовательности символов, предшествующих восклицательному знаку количество пробелов. Ответ Program prim4; var t: string; I: byte; {счетчик цикла} c: byte; {количество пробелов} Begin write ('введите текст:'); readln (t); I:=1; c:=0; while t[i]<>'!' do Begin if t[i]=' ' then inc (c); inc (i); {увеличение на 1} end; writeln ('количество пробелов равно',с) end.
Задан текст S. Сколько раз в тексте встречается заданное слово (слова разделены пробелами) Ответ Program prim5; var t: string; {текст} s: string; {слово} c: string; {вспомогательный текст} I: byte; d: byte; {число раз слово в тексте} Begin d:=0; write ('введите текст:'); readln (t); t:=' '+t+' '; write ('введите заданное слово'); readln (s); s:=' '+s+' '; for I:=1 to length (t)-length (s)+1 do begin c:=copy (t,I,length (s)); if c=s then inc (d); end; writeln (d) end. 6.Сколько раз в тексте встречается заданное слово. Слова разделены пробелами или знаками препинания и т.п. Ответ Program prim6; var t: string; {текст} s: string; {слово} c: string; {вспомогательный текст} I: byte; {для цикла} d: byte; {число раз} Begin d:=0; write ('введите текст:'); readln (t); t:=' '+t+' '; write ('введите слово'); readln (s); for i:=1 to length (t)-length (s)+1 do begin c:=copy (t,I,length (s)); if c=s then if t[I-1]<chr (65) then {проверка, знаки препинания, пробел или другой символ} if t[I+ length (s)]<chr (65) then inc (d); end; writeln (d) end.
Дисциплина «Основы баз данных и знаний»
|
||||
Последнее изменение этой страницы: 2016-08-14; просмотров: 352; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.129.71.13 (0.006 с.) |