Реферат: Паскаль. Модули, записи и файлы - текст реферата. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Реферат

Паскаль. Модули, записи и файлы

Банк рефератов / Программирование

Рубрики  Рубрики реферат банка

закрыть
Категория: Реферат
Язык реферата: Русский
Дата добавления:   
 
Скачать
Архив Zip, 30 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникального реферата

Узнайте стоимость написания уникальной работы

Модули , записи и файлы. Введение Целью к урсового проектиров ания является приобретение и закрепление навы ков в организации вычислительных процессов и программирования на алгоритмическом языке ПА СКАЛЬ . Основной акцент в работе уделяется рассмотрению модульного программирования , использован ию проц е дур и функций . Кроме т ого , большое внимание уделяется работе с ф айлами , подробно рассматриваются функции открытия и закрытия файла . Полученные знания помог ут в будущем более эффективно подходить к процессу разработки программного обеспечения . Язык програм мирования Pascal был разработан в 1968 — 1971 гг . Никлаусом В иртом в Цюрихском Институте информатики (Швей цария ). Первоначальная цель разработки языка д иктовалась необходимостью инструмента "для обучен ия программированию как систематической дисципли не ". Одна ко очень скоро обнаружилась ч резвычайная эффективность языка Pascal в самых разнообразных приложениях , от решен ия небольших задач численного характера до разработки сложных программных систем — компиляторов , баз данных , операционных систем и т.п . К настоящ ему времени Pascal принадл ежит к группе наиболее распространенных и популярных в мире языков программирования . Существуют многочисленные реализации языка практ ически для всех машинных архитектур ; разработ аны десятки диалектов и проблемно-ориентированных ра сширений языка Pascal ; обучение программированию и научно-те хнические публикации в значительной степени б азируются на этом языке. Характеристика и особенности языка . Сущес твует ряд объективных причин , обусловивших вы дающийся успех языка Pascal . Среди них в первую очередь не обходимо указать следующие : 1. Язык в естественной и элегантной форме отразил важнейшие современные концепции технологии раз работки программ : развитая система типов , орие нтация на принципы структурного программирования , поддержка процесса пошаговой разработки. 2. Благодар я своей компактности , концептуальной целостности и ортогональности понятий , а также удачно му первоначальному описанию , предложенному авторо м языка, Pascal оказался весьма легок для изучения и освоения . В противоположно сть громоздким многотомным описаниям таких языков, как PL / I , Cobol , FORTRAN , достаточно полное описание языка Pascal занимает около 30 страниц текста , а его си нтаксические правила можно разместить на одно й странице. 3. Несмотря на относительную простоту языка, он оказался пригоден для весьма широкого спек тра приложений , в том числе для разработки очень больших и сложных программ , наприме р операционных систем. 4. Pascal весьма те хнологичен для реализации практически для все х , в том числе и нетрадиционных , машинн ых архитектур . Утверждается , что разработк а Pascal-транслятора "почти не превышает по трудоемкости хорошую дипломную работу выпускника вуза ". Б лагодаря этому для многих ЭВМ существует несколько различных реализации языка , отражающих те или иные практически е потребности программистов. Язык Pascal стандартизован во мног их странах . В 1983 году был принят международный ста ндарт ( ISO 7185:1983). Готовится (сведения на 1989 год ) станда рт СЭВ на Pascal . Рассмотрим основные особенности языка Pascal . 1. Pascal являе тся традиционным алгоритмическим языком программ ирования , продолжающим линию Algol -60. Это означает , что программа на языке Pascal представляет собой спе циально организованную последовательность шагов по преобразованию данных , приводящую к решени ю некоторо й задачи . Это отличает Pascal от так называемых непроцедурных я зыков типа Prolog , по сущ еству представляющих собой формализмы для зап иси начальных условий некоторой задачи и синтезирующих решение посредством встроенных мех анизмов логического вывода. 2. Язы к Pascal содержит удобные средс тва для представления данных . Развитая систем а типов позволяет адекватно описывать данные , подлежащие обработке , и конструировать струк туры данных произвольной сложности. Pascal является типизированным языком , что означает фи ксацию типов переменных при их описании , а также строгий контроль преобразований типов и контроль доступа к данным в соответствии с их типом (как на этапе компиляции , так и при исполн ении программ ). 3. Набор операторов языка Pascal отражает при нципы структ урного программирования и поз воляет записывать достаточно сложные алгоритмы в компактной и элегантной форме. Pascal являетс я процедурным языком с традиционной блочной структурой и статически определенными област ями действия имен . Процедурный механизм сочет ает в себе простоту реализации и использования и гибкие средства параметризации. 4. Синтакси с языка достаточно несложен . Программы записы ваются в свободном формате , что позволяет сделать их наглядными и удобными для изуч ения. Модуль - это автономно компил ируемая программная единица , включающая в себя различные компон енты раздела описаний (типы , константы, переменные , процедуры и функци и ) и , возможно , некоторые исполняемые операторы инициирующей части . В модулях Turbo PASCAL явным образом выделяется некотор ая "ви димая " интерфейсная часть , в которой сконцентр ированы описания глобальных типов , констант и переменных , а также приводятся заголовки глобальных про цедур и фун кций . Появление объектов в интерфейсной части делает их доступными для других модулей и осно вной программы. Тела процедур и функций располагают ся в исполняемой части модуля , которая может быть скрыта от пользователя. Модули представляют собой прекрас ный инструмент для разработки библиотек прикладных програм м и мощное средство модельного программи рования . Важная особенн ость модуля заключается в том , что компиля тор Turbo PASCAL разме щает их программный код в отдельном сегменте . Модуль имеет следующую структуру : UNIT <имя >; INTERFACE <интерфейсная часть > IMPLEMENTATION <исполняемая часть > BEGIN <инициирующая часть > END. Здесь UNIT - зарезервированное слово , начинает заголовок модуля ; <имя > - имя модуля (должно совпадать с именем файла , в который помещен модуль ); IMPLEMENTATION - зарезервированное слово (вып олнение ), начи нает исполняемую час ть ; BEGIN - зарезервированное слово , начи нает инициирующую часть (часть модуля BEGIN <инициирующая ч асть > необязательна ); EN D - зарезервированное слово , признак к онца модуля. Заголовок модуля состоит из зарезервир ованного слова UNIT и следующего за ним им ени модуля . Для правильной работы Turbo PASCAL и возможности подключения средств , облегчающих разработку крупных программ , это имя должно совпадать с именем файла , в который п омещается исходный текст модуля . Имя модуля служит для его связи с другими модул я ми и основной программой . Эта связь устанавливается специальным приложением USES <список модулей >. Здесь USES - зарезервированное слово ; <список модулей > - список модулей , с которы ми устанавливается связь , элементами списка я вляются имена модулей , отделяе м ые друг от друга запятыми . Если объявление USES используется , то оно должно открывать раздел описаний основной программы . Модули могут использовать другие модули . Предложение USES в модулях может следовать либо сразу за зар езервированным словом INTERFACE, либо сразу за словом IMPLEMENTATION. Интерфейсная часть открывается зарезервированным словом INTERFACE. В этой части содержатся объявления всех глобальных объектов модуля (типов , констант , переменных и подпрограмм ), к оторые должны стать доступными основной программе и (или ) другим модулям . При объ явлении глобальных подпрограмм в интерфейсной части указывается только их заголовок . Объявление подп рограмм в интерфейсной части автоматически со провождается их компиляцией с использованием дальней модели памяти . Т аким образом , обеспечивается дост уп к подпрограммам из основной программы и других модулей . Порядок появления различных разделов объявлений и их количество може т быть произвольным . Исполняемая часть начина ется зарезервированным словом IMPLEMEN- TATION и со де ржит описания подпрограмм , объявленных в инте рфейсной части . В ней могут объявляться ло кальные для модуля объекты - вспомогательные т ипы , константы , переменные и блоки , а также метки , если они используются в инициирующ ей части . Описанию подпрограммы , об ъ явленной в интерфейсной части модуля , в исполняемой части должен предшествовать заг оловок , в котором можно опускать список фо рмальных переменных (и тип результата для функции ), так как они уже описаны в инт ерфейсной части . Но если заголовок программы прив о дится в полном виде , т.е ., со списком формальных параметров , то он должен совпадать с заголовком , объявленным в интерфейсной части . Инициирующая часть за вершает модуль . Она может отсутствовать вмест е с начинающим ее словом BEGIN или быть пу стой - тогда за BEGIN сразу следует п ризнак конца модуля (слово END и следующая за ним точка ). В инициирующей части размещаю тся исполняемые операторы , содержащие некоторый фрагмент программы . Эти операторы исполняются до передачи управления основной программе и обычно ис п ользуются для подг отовки ее работы . Например , в них могут инициироваться переменные , открываться нужные ф айлы , могут устанавливаться связи с другими ПК по коммуникационным каналам и т.п . Не рекомендуется делать инициирующую часть пуст ой , лучше ее опустить : пустая час ть содержит пустой оператор , которому будет передано управление при запуске программы. В среде Turbo PASCAL имеются средства , управляющие способом компиляции модулей и облегчающие разработку крупных программных проектов . В частности , определены три режима компиляции : COMPILE, MAKE и BUILD. Режимы отличаются только способами связи компилируемого модуля и основной про граммы с другими модулями , объявленными в приложении USES. При компиляции модуля или основн ой программы в режиме COMPILE компилирует с я только файл , находящийся в активном окне . По умолчанию предполагается , что ис пользуемые модули уже откомпилированы и резул ьтаты помещены в одноименные файлы с расш ирением .TPU; файл с расширением .TPU (от английского Turbo Pа scal Unit) создается в резул ь тате компиляции модуля . В режиме МАКЕ компилятор проверяет наличие TPU-файлов для каждого об ъявленного модуля . Если какой-либо из файлов не обнаружен , то система пытается отыскать одноименный файл с расширением .PAS, т.е . файл с исходным текстом модуля . Е с ли PAS-файл найден , то происходит его компиля ция . Кроме того , в этом режиме система следит за возможными изменениями исходного те кста любого используемого модуля . Если в PAS- файл (исходный текст модуля ) внесены какие-либо изменения , то независимо от того, есть ли уже в каталоге соответствующи й TPU-файл или нет , система осуществляет его компиляцию перед компиляцией основной програ ммы . Если изменения внесены в интерфейсную часть модуля , то будут перекомпилированы та кже и все другие модули , обращающиеся к нем у . Режим МАКЕ существенно обле гчает процесс разработки крупных программ с множеством модулей . В режиме BUILD существующие TPU-файлы игнорируются , и система пытается оты скать и компилировать соответствующий PAS-файл д ля каждого объявленного в предложении US E S модуля . После компиляции в режиме BUILD программист может быть уверен в том , что учтены все сделанные им изменения в любом из модулей. Подключение модуля к основной программ е и их возможная компиляция осуществляется в порядке их объявления в предложении USES. При переходе к очередному модулю система предварительно отыскивает все модули , на которые он ссылается . Ссылки модулей д руг на друга могут образовывать древовидную структуру любой сложности , однако запрещаетс я явное или косвенное обращение модуля к самому себе . Дело в том , что Turbo PASCAL разрешает ссылки на частично откомпилирован ные модули , что приблизительно соответствует опережающему описанию подпрограммы . Если интерфей сные части любых двух модулей независимы , Turbo PASCAL сможет идентифицирова т ь все глоба льные идентификаторы в каждом из модулей , после чего откомпилирует тела модулей обычным способом. Модуль программы unit kurp1; interface const n=5; type matr=array[1..n,1..n] of real; vect=array[1..n] of real; procedure form(var a:matr); proce dure vivod (var a:matr); function max(c:vect):real; procedure pr(a:matr;var c:vect); implementation procedure vivod (var a:matr); var i,j:integer; begin for i:=1 to n do begin for j:=1 to n do write (a[i,j]:6:2); writeln; end; writeln; end; proce dure form(var a:matr); var i,j:integer; begin randomize; for i:=1 to n do for j:=1 to n do a[i,j]:=random*2-1; end; function max( c:vect):real; var i:integer; m:real; begin m:=-2; for i:=1 to n do if c[i]>m then m:=c[i]; max:=m end; procedure pr(a:matr;var c:vect); var i,j:integer; begin c[i]:=1; for i:=1 to n do begin for j :=1 to n do c[i]:=a[j,i]*c[i]; writeln('Произведение ',i,'-го столбца =',c[i]:6:4); end; writeln; end; end. Основная программа program kursovik; uses crt,kurp1; var a:matr; c:vect; begin clrscr; window (45,2,75,7) ; writeln ('Курсовая работа по информатике ') ; writeln('Факультет АЭС группа А -92'); writeln ('студента : Грязина Дмитрия '); window(1,1,80,25); writeln('вариант 21'); window(10,8,80,20); writeln('Разработанный модуль содержит следующие программы :'); writeln('1.Процедуру формирования элементов матриц ы в интервале от 1.0 до 1.0.'); writeln('2.Процедуру вывода матрицы на экран .'); writeln('3.Процедуру определения произведения кажд ого столбца матрицы .'); writeln('4.Функцию определения максимального произ велдения .'); window(1,1,80,25); gotoxy(10,24); writeln('Для продолжения нажмите пробел '); clrscr; form(a); writeln('Сформированная матрица '); vivod(a); pr(a,c); writeln('Максимальное произведе ние =',max(c):6:4); readln; end. Результаты работы Сформированная матрица -0.68 0.22 0.58 -0.62 -0.14 0.25 -0.11 -0.90 0.41 -0.57 0.24 -0.69 -0.84 0.28 0.71 -0.46 -0.26 0.16 0.49 -0.73 0.60 0.17 0.28 -0.77 -0.61 Произведение 1-го столбца =0.0112 Пр оизведение 2-го столбца =-0.0007 Произведение 3-го столбца =0.0187 Произведение 4-го столбца =0.0264 Произведение 5-го столбца =0.0243 Максимальное произведение =0.0264 Записи Запись – это структура да нных , состоящая из фиксированного числа компо нентов , называемых полями записи . В отлич ие от массива , компоненты (поля ) записи мог ут быть различного типа . Чтобы можно было ссылаться на тот или иной компонент записи , поля именуются. Структура обьявления типа записи такова : < имя тип а > = RECORD < пс . полей > END Здесь <и мя типа > - правельный индификатор ; RECORD, END – зарезервированные с лова (запись , конец ); <сп . полей > - список полей ; представляют собой последовательность разделов записи , между которыми ставитс я точка с запитой. Каждый раздел записи сос тоит из одного или нескольких индификаторов полей , отделяемых друг от друга запятыми . За инди фикатором ставится двоеточие и описание типа поля например : type birthday = record day, month : byte; year : word: end; var a,b : Birthday; . . . . . . . . В этом примере тип Birthday есть запись с пол ями DAY, MONTH, и YEAR; перемен ные А и В содержат записи типа Birthday. Как в массиве , значения пер еменных типа записи можно присваивать другим переменным того же типа , например : a : = b; К каждому из ко мпонент ов записи можно получить доступ , если испо льзовать составное имя , т.е . указать имя пе ременной , затем точку и имя поля : a.day := 27;b.year := 1991; Чтобы упростить доступ к п олям записи , используется оператор присоединения WITH: WITH < переменная > DO < оператор > Здесь WITH, DO – ключевые слов а (с , делать ); < переменная > - имя переменной типа запись , за которым , возможно , следует список вложенных поле й ; < переменная > - любой оператор Турбо Паскаля . Например : with c.bd do month := 9; Имена полей д олжны быт ь уникальными в пределах той записи , где они обьявлены , однако , если записи содерж ат поля – записи , т.е . вложена одна в другую , имена могут повторяться на разных уровнях вложенности . . Файлы Под файлом понимается именованная область памяти на магнитном носителе , используе мая для долговременного хранения некоторой ло гически связанной информации . В эту область внешней памяти можно как поместить определ енные данные , так и извлечь их из нее . Эти действия имеют общее название - ввод-в ывод. Программ ирование доступа к файлу в языке Turbo Pascal начинается с описания файловой перемен ной (переменной файлового типа ). Это описание строится с помощью служебного слова file, после которо го (после служебного слова of) может быть указан тип отдельных элементов файла , например : var F : file of integer; При необходимости можно отдельно определи ть некоторый файловый тип , которым в дальн ейшем пользоваться при описании файловых пере менных : type RecordFile = file of record А , В : real; end; var Fl, F2 : RecordFile; Очень важно различать собственно файл (область памяти на магнитном носителе с некоторой информацией ) и переменную файлового типа в некоторой Turbo Pascal- программе . Считается , что файловая перем енная является представителем некоторого дискового файла в п рограмме . Для того , чтобы реализо вать доступ к файлу па магнитном диске , программа должна связать его с файловой переменной . Для этого необходимо сопоставить переменную с именем файла . Это имя представляется в виде строки , содержащей полное имя файла и , бы ть может , цепочку объемлющих катал огов и обозначение дисковода . Такая строка носит название маршрута (или пути ) к фай лу и формируется по общим правилам MS-DOS. Связывание маршрута и файловой переменной производится стандартной процедурой Assign, которой пе редаются два параметра : имя переменной файлового типа и строка с именем (маршр утом ) дискового файла , например : Assign (F, 'с : \books\book4\test3 .раз ' ) ; Помимо маршрута , во втором параметре м ожет быть указано условное (символическое ) обо значение некотор ого “псевдофайла” MS-DOS, то есть файла , связанного с конкретным физическим уст ройством . Допускаются имена , в основном совпад ающие с принятыми в MS-DOS обозначениями ( ‘ con ’ – консоль , то есть э кран дисплея и /или клавиатура, ‘ lpti ’ или ‘ prn ’ – печатающее ус тройство и т . д .). До тех пор , пока файловая переменная не связана с каким-либо дисковым файлом , никакие операции с ней в программе н евозможны , Заметим , что можно связать файловую переменную с еще не существующим дисковым файлом . Это может быт ь оправдано д ля случая последующего с оздания Turbo Pascal-программой файла с данным именем с помо щью некоторой системной процедуры. После того , как файловая переменная с помощью процедуры Assign связана с конкретным дисковым файлом , можно выполнить любую допустимую опе рацию с ним . Здесь рассмотрим две операции общего характера , позволяющие переименов ывать и уничтожать существующие дисковые файл ы . Такие операции выполняются системными подп рограммами Rename и Erase со следующими спецификациями : Rename ( var f; nevname : string ); Erase ( var f ); Основным параметром этих процедур являетс я файловая переменная (она может идентифициро вать файл любого типа , и к ней должна была быть ранее применена процедура Assign), а процед уре Rename доп олнительно передается новое имя файла . Д ействие указанных процедур основывается на со ответствующих DOS-функциях и функционально эквивале нтно командам ren и del командно го процессора . 7.2.1Открытие и закрытие файлов В этом и следующем разделах рассматри ваются файлы традиционной для языка P ascal структур ы , которые описываются в программе в терми нах составляющих компонент . Кроме таких файло вых переменных (они также называются "типизиро ванными " файлами ), в языке Turbo Pascal имеются также файлы специального типа - текстовые файлы , которые введ ены для поддержки одного практически важного частного случая файловых структур , и нетипизированные файлы , которые используются для более эффективной организации обменов на низком уровне . Важнейшим моментом при использовании пере менных файловых типов являе тся интерпрета ция файла как потенциально бесконечного списк а значений одного и того же (базового ) типа . Например , описание переменной F вида var F : file of integer; понимается как определение в программе под именем F списка неопределенного количества целы х чисел , расположенного на некото ром внешнем запоминающем устройстве (например , на магнитном диске ). С каждой переменной файлового типа та кже связано понятие текущего указателя файла . Текущий указатель можно понимать как скр ытую переменную (то есть перемен ную , н еявно описанную вместе с файловой переменной ), которая обозначает ("указывает " на ) некоторый конкретный элемент файла . Таким образом , можно графически так представить интерпретацию файла , связанного с переменной F: 0 1 2 N Как правило , все действия с файлом (чтение из файла , запись в файл ) производятся поэлементно , причем в этих действиях участвует тот элемент файла , который обозначается текущим указателем . В результате совершения операций текущий указатель может перемещаться , настраиваясь на тот и л и иной элемент файла . Все элеме нты файла считаются пронумерованными ; начальный элемент имеет нулевой номер . Имеется возможность явной установки текущего указателя на некоторый элемент файла. Заметим , что один и тот же внешний файл в различных Turbo Pascal-п рограммах (или даже в различных частях одной и той же прог раммы ) может интерпретироваться по-разному , наприме р , как последовательность целых чисел , или как последовательность символов , или как посл едовательность некоторых записей , и т . д . Э та возможность о чень важна и ча сто используется в работе с файлами сложн ой структуры . Например , в процессе работы с внутренним представлением файлов баз данных (в частности , с DBF-файлами ) может понадобить ся интерпретировать файл по-разному в зависим ости от того , какую е г о компон енту (заголовок или содержательную часть ) мы обрабатываем. Нужно также отметить , что все операции с файлами в языке Turbo Pascal реализованы с использованием базовых средств операционной системы ; в ч астности , понятие текущего указателя файла по ддер жано в MS-DOS. Однако все перемещения по файлу (как явное управление указателем , так и сдвиги при обменах ) выполняются в терминах байтов . Таким образом , все аспекты , связан ные с типизацией содержимого файлов , представ ляют собой системную надстройку языка T urbo Pascal. Для выполнения некоторой операции по вводу-выводу необходимо прежде всего открыть дисковый файл (напомним , что предварительно нужно связать фа йловую переменную с дисковым файлом с пом ощью процедуры Assign). Под открытием в данном случае понима ется подготовка к обмену с ф айлом со стороны программы , заключающаяся пре жде всего в поиске файла на внешнем н осителе , установке его текущего указателя на определенный (как правило , нулевой элемент ) и формировании буфера в оперативной памяти , посредством к оторого будут произво диться обмены. Обычные типизированные файлы открываются с помощью одной из двух системных процеду р - Reset или Rewrite, единст венным параметром которых в данном случае является файл овая переменная . Обе эти процедуры открывают файл для обмена . Разница между ними заключается в начальных действиях с файл ом. Процедура Reset предполагает , что открываемый дисковый файл уже сущес твует , в противном случае возникает ошибка . Процедура Rewrite допускает , что открываемый файл может еще не сущест вов ать ; в этом случае она создаст заданный файл . Если же файл существует , то Rewrite очищает его . Повторим , что в обоих случаях текущ ий указатель файла устанавливается на его нулевой элемент . Следует иметь в виду , ч то обе операции допускают в дальнейшем ка к ч тение из файла, так и запись в него (это будет обсуждаться в следующем разделе ). Разумеется , две введенные процедуры носят в основном подготовительный характер , однако можно указать практически важные случаи их вполне самостоятельного использования . Так , п роцедура Rewrite может применяться для стирания со держимого файла без его удаления с диска или для создания нового файла. Процедура close заверша ет действия с файлом , который указывается в качестве ее единственного параметра . При этом буфер , образованный при открытии файла , ликвидируется . После этого файловую пер еменную можно связать посредством процедуры Assign с каки м-либо другим дисковым файлом . Заметим , что при окончании работы всей программы происх одит автоматическое закрытие всех файлов , отк рытых в п рограмме . Однако хорошим прав илом является явное закрытие файлов процедуро й close пос ле окончания работы с ними. Помимо закрывающей процедуры close, в системе Turbo Pascal также имеется дополнительная процедура Flush (ее параметр - файловая переменная ). Fl ush используется для завер шения обменов с файлом без его закрытия . Обмены с файлами всегда реализуются через некоторый буфер в оперативной памяти , поэ тому в процессе записи на файл последние записываемые элементы могут еще находиться ("застрять ") в буфере. Процедура Flush вызывает при нудительный сброс этих элементов в файл . Э та процедура имеет смысл в том случае , если с файлом проводились операции записи , и используется редко , так как процедура close произво дит такие же действия. Основная программа program part2; uses crt; type table = record n : integer ; inn : string[12]; Name : string[20]; Sng : integer; Nop : integer; Uop : integer; Skop : integer; End; Var f : file of table; x : table; begin clrscr; window(45,2,75,7); textcolor (5) ; writeln ( ‘ Курсова я работа по информатике ’ ) ; writeln ( ‘ Факультет АЭС группа А -92 ’ ) ; writeln ( ‘ студента : Грязина Д.’ ) ; window (1, 1, 80, 25) ; gotoxy (30, 5) ; writeln ( ‘ Часть 2 ’ ) ; window(10, 8, 80, 20) ; writeln ( ‘ В файле table.txt содержатся справочные сведения ’ ) ; writeln ( ‘ о предприятиях-задолжниках по уплате налогов ’ ) ; writeln ; writeln ( ‘ Задание’ ) ; writeln ( ‘ Выдавать полные сведен и я о предприятиях , которые не ’ ) ; writeln ( ‘ начисляли налоги в отчетный период. ’ ) ; window(1, 1, 80, 25); gotoxy(10, 24); textcolor (4 + blink); writeln ( ‘ Для продолжения нажмите Enter ’ ) ; readln ; textcolor (10) ; clrscr ; assign (f, table.txt) ; reset (f) ; writeln ( ‘ Cведения о предприятиях , которые не начисляли ’ ) ; writeln ( ‘ налоги в отчетный период ’ ) ; writeln ( ‘ +----- -----------------------------+ ’ ) ; writeln ( ‘ | № | ИНН | Наименование | 1 | 2 | 3 | 4 | ’ ) ; writeln ( ‘ | ---+----------+----------------+----+----+----+-----| ’ ) ; while not Eof(f) do begin read (f, x) ; with x do if Nop = 0 then begin writeln ( ‘ | ‘ № : 3 ’ | ‘ ,Inn : 12, ’ | ’ ,Name : 20, ’ | ’ ,Sng :4, ’ | ’ ,Nop : 4, ’ | ’ ,Uop : 4, ’ | ’ ) ; writeln (Skop : 4, ‘ | ’ ) ; end; end; writeln ( ‘ +-----------------------------------------------------------------------+ ’ ) ; writeln ; writeln ( ‘ 1- Сведения на нача ло года ’ ) ; writeln ( ‘ 2 – Начислено налогов в отчетн ый период ’ ) ; writeln ( ‘ 3 – Уплачено налогов в отчетны й прериод ’ ) ; writeln ( ‘ 4 – Сведения на конец отчетног о преиода ’ ) ; writeln ; readln ; end. Заключение Полученный мною практический опыт примени тельно к п рограммированию на ПАСКАЛЕ позволяет использовать эффективное модульное про граммирование . Кроме того , изучив представленный в курсовом проектировании материал , я приоб рел практические навыки использования процедур , функций . Наряду с этим я научился прави л ь но использовать файловые функции операционной системы MS-DOS, что является одним из ос новных вопросов программирования.
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Британские учёные доказали, что если девушка красит ресницы более девяти раз в день, то велика вероятность застудить гланды.
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

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

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru