Как написать программу телефонный справочник

Объектно-ориентированный язык программирования характеризуется тремя основными свойствами:
1. Инкапсуляция. Комбинирование записей с процедурами и функциями, манипулирующими полями этих записей, формирует новый тип данных — объект.
2. Наследование. Определение объекта и его дальнейшее использование для построения иерархии порожденных объектов с возможностью для каждого порожденного объекта, относящегося к иерархии, доступа к коду и данным всех порождающих объектов.
3. Полиморфизм. Присваивание действию одного имени, которое затем совместно используется вниз и вверх по иерархии объектов, причем каждый объект иерархии выполняет это действие способом, именно ему подходящим.

Прикрепленные файлы: 1 файл

Воронежский институт высоких технологий – АНОО ВПО

Факультет: ФЗ и ПО

Специальность: Информационные системы и технологии

по дисциплине «Объектно-ориентированное программирование»

на тему: Разработка программы «Телефонный справочник»

Введение

Объектно-ориентированное программирование (ООП) – основная парадигма программирования 80-90-х годов, которая по всей видимости сохранится и в течение текущего десятилетия. Она является результатом тридцатилетнего опыта и практики, которые берут начало в языке Симула 67 и продолжаются в языках Смолток, Эйфель, Турбо Паскаль, Объектный Паскаль, С++, Ява, C# и др. ООП – это стиль, который фиксирует поведение реального мира так, что детали его составных частей скрыты, и тот, кто решает задачу, мыслит в терминах, присущих самой задаче, а не языку программирования.

Программа Телефонный справочник

Объектно-ориентированный язык программирования характеризуется тремя основными свойствами:

1. Инкапсуляция. Комбинирование записей с процедурами и функциями, манипулирующими полями этих записей, формирует новый тип данных — объект.

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

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

Рассмотрим основные этапы развития программирования, которые помогают лучше понять взаимосвязь структурного подхода, модульного программирования и ООП.

Анализ и проектирование

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

Программа «Телефонный справочник». Надо обеспечить просмотр, занесение, модификацию и поиск информации по номеру и фамилии.

Алгоритм решения

Для хранения данных об абонентах в программе будет использоваться класс.

Класс — это тип. Этот производный тип вводится в программу с помощью специального оператора объявления класса. В объявлении класса используется ранее описанный инструментальный набор средств для построения и преобразования производных типов.

Телефонный справочник на C#

Очередное множество форм Бэкуса-Наура определяет синтаксис объявления класса.

Объявление ::= [ СписокСпецификаторовОбъявления ] [СписокОписателей];

УточнённыйСпецификаторТипа ::= КлючевоеСловоКласса ИмяКласса

::= КлючевоеСловоКласса Идентифика тор

::= КлючевоеСловоКласса [Идентификатор] [СпецификацияБазы]

::= КлючевоеСловоКласса ИмяКласса [СпецификацияБазы]

Спецификатор класса представляет то, что называется объявлением класса. Уточнённый спецификатор типа объявляет расположенный за ним идентификатор именем класса. Уточнённый спецификатор обеспечивает неполное предварительное объявление класса и перечисления.

Предварительное объявление обеспечивается уточнённым спецификатором типа и является своеобразным прототипом класса или перечисления. Его назначение — сообщение транслятору предварительной информации о том, что существует (должно существовать) объявление класса (или перечисления) с таким именем. Идентификатор, используемый в контексте уточнённого спецификатора имени становится именем класса (или именем перечисления).

Класс считается объявленным даже тогда, когда в нём полностью отсутствует информация о членах класса (пустой список членов класса). Неименованный класс с пустым множеством членов — уже класс!

Имя класса можно употреблять как имя (имя типа) уже в списке членов этого самого класса.

Класс может быть безымянным.

Написать программу телефонный справочник — Prolog

1. Получение информации о телефонном номере по фамилии человека. 2. Получение информации о фамилии абонента по телефонному номеру. 3. Добавление новой записи в телефонную базу. 4. Изменение существующего в телефонной базе записи. 5. Удаление записи из телефонной базы. Это примерно нужно так сделать:

DOMAINS name, number = String file=f DATABASE phone(name, number) PREDICATES name_phone(name, number) phone_name(name, number) m(char) menu start CLAUSES name_phone(Name,Phone):- phone(Name,Phone)!. name_phone(_,»Нет информации о телефонном номере»). phone_name(Name,Phone):- phone(Name,Phone). phone_name(«Нет информации о владельце телефона»,_). menu:- clearwindow, write(«1 — Получение телефонного номера по фамилии «), nl, write(«2 — Получение фамилии абонента по номеру телефона»), nl, write(«3 — Добавление новой записи в телефонную базу»), nl, write(«4 — Изменение номера абонента»), nl, write(«5 — Удаление записи из телефонной базы»), nl, write(«0 — Выйти»), nl, readchar(С) /* читаем символ с клавиатуры */ m(С). / * вызываем выполнение соответствующего пункта меню */ m(‘l’):- clearwindow, write («введите фамилию»), nl, readln(Name), name_phone(Name, Phone), write(«номер телефона: «,Phone), readchar(_), menu. m(‘2’):- clearwindow, write(«введите номер телефона»), nl, readln(Phone), phone_name(Name, Phone), wrіte(«фамилия абонента: «,Name), readchar(_), menu. m(‘3’):- clearwindow write(«введите фамилию»), nl, readln(Name), write(«введите номер телефона»), nl, readln(Phone), assert(phone(Name,Phone)), menu. m(‘4’):- clearwindow write(«Введите фамилию»),nl, readln(Name), write(«введите новый номер телефона»), nl, readln(Phone), retract(phone(Name,_)), menu. m(‘5’):- clearwindow, write(«укажите номер телефона, запись о котором нужно удалить из телефонной базы»), nl, readln(Phone), retract(phone(_,Phone)) menu. m(‘0’):- save(«phones.ddb») retractall(_). m(_):- menu. start:- existfile(«phones.ddb»). consult(«phones.ddb «), menu. start:- openwrite(f, ‘ phones.ddb»), closefile(f), menu. GOAL Start

У меня получилось так, но здесь ошибки можете исправить пожалуйста:

DOMAINS file=p DATABASE dbphonebook(symbol,symbol,real,symbol) PREDICATES menu select(char) findquation find(char) phone(symbol) year(real) delay start CLAUSES phone(«Tel»). year(2019). menu:- makewindow(4,7,7,»DB ‘PHONE BOOK'»,0,0,24,70),clearwindow, write(«1 — Add new entry»),nl, write(«2 — Search entry»),nl, write(«3 — Edit entry»),nl, write(«4 — Delete entry»),nl, write(«5 — Print_Number_Phone»),nl, write(«0 — Exit»), nl,nl, write(«Select menu item: «), readchar(N), select(N). select(‘1’):-clearwindow, write(«Enter full name: «), readln(Name), write(«Enter number phone : «), readln(Number), write(«Enter address_fp: «), readln(address_fp), write(«Enter apartment#: «), readln(Apartment), assertz(dbphonebook(Name,Number,Address,Apartment)),nl, write(«Entry added!»),nl, delay, menu. select(‘2’):-clearwindow, findquation, menu. select(‘3’):-clearwindow, write(«Enter full name: «), readln(Name), retract(dbphonebook(Name,_,_,_)), write(«Enter new number phone: «), readln(Numberph), write(«Enter new Address: «), readreal(addressN), write(«Enter new apartment: «), readln(Apartment), assert(dbphonebook(Name,Numberph,addressN,Apartment)),nl, write(«Entry was edited!»),nl, delay, menu. select(‘4’):-clearwindow, write(«Enter full name: «), readln(Name), retract(dbphonebook(Name,_,_,_)), write(«Entry was deleted!»),nl, delay, menu. select(‘5’):-clearwindow, dbphonebook(Q,W,E,R),phone(W),year(E),nl,write(«number telephone — «,Q),nl,write(«Adress — «,W),nl,write(«Apartment — «,E),nl,write(«hometel — «,R),nl, write(«_____________________»),fail,delay, menu. select(‘0’):-save(«number phone.ddb»),nl,nl, write(«Database was saved to file.»),nl, write(«Goodbay young friend!:)»),nl, retractall(_). select(_):-write(«________»), delay, menu. findquation:-clearwindow, write(«1 — Find entry by full name»),nl, write(«2 — Find entry by number phone»),nl, write(«3 — Find entry by address»),nl, write(«4 — Find entry by apartment»),nl,nl, write(«Enter item: «), readint(F), find(F), delay. find(1):-clearwindow, write(«Enter full name: «),readln(name), dbphonebook(full_name, number_phone, address, apartment),nl, write(«full information: «), write(full_name),nl, write(«address: «), write(number_phone),nl, write(«Apartment: «), write(street), write(«full_address: «), write(apartmet). find(1):-nl,write(«Not found!»). find(2):-clearwindow, write(«Enter Number phone: «), readln(Numberph), dbphonebook(Name, Numberph, Address, Apartment),nl, write(«full information: «), write(Name),nl, write(«number phone: «), write(phone),nl, write(«Full address: «), write(Address),nl, write(«Apartment: «), write(Apartment),nl. find(2):-nl, write(«Not found!»). find(3):-clearwindow, write(«Enter address: «), readreal(Address), dbphonebook(full_name, Number_phone,Address,Apartment),nl, write(«full information: «), write(name),nl, write(«Number phone: «), write(Number_phone),nl, write(«Address: «), write(Address),nl, write(«Apartment#: «), write(Apartment),nl. find(3):-nl, write(«Not found!»). find(4):-clearwindow, write(«Enter Apartment: «), readln(Apartment), dbphonebook(Name, number_phone, full_address,Apartment),nl, write(«Full information: «), write(Name),nl, write(«Number phone: «), write(number_phone),nl, write(«Full Address: «), write(full_address),nl, write(«Apartment: «), write(Apartment),nl. find(4):-nl, write(«Not found!»). delay:-nl, write(«Press any key. «), readchar(_). start:-existfile(«number_phone.ddb»). consult(«number_phone.ddb»), menu. start:-openwrite(p,»number_phone.ddb»), closefile(p), menu. GOAL start

Читайте также:
Сколько существует программ для которых при исходном числе 1 результатом является число 11

Код к задаче: «Написать программу телефонный справочник»

Листинг программы

DOMAINS /* раздел описания доменов */ name, number = String /* фамилию абонента и телефонный номер будем хранить в виде строк */ file=f /* файловый домен будем использовать для считывания с диска и записи на диск нашей телефонной базы */ DATABASE /* раздел описания предикатов внутренней базы данных */ phone(name, number) PREDICATES /* раздел описания предикатов */ name_phone(name, number) /* этот предикат находит номер телефона по фамилии абонента */ phone_name(name, number) /* этот предикат находит фамилию абонента по номеру телефона */ m(char) /* этот предикат реализует выполнение соответствующего пункта меню */ menu /* этот предикат реализует вывод меню и обработку выбора пользователя */ start /* этот предикат проверяет наличие файла с телефонной базой на диске и либо загружает факты из нее во внутреннюю базу данных, если такой файл существует, либо создает этот файл, если его не было */ CLAUSES /* раздел описания предложений */ name_phone(Name,Phone):– phone(Name,Phone). name_phone(_,»Нет информации о телефонном номере»). /* если соответствующего факта во внутренней базе данных не нашлось, вместо телефонного номера возвращаем соответствующее сообщение */ phone_name(Name,Phone):– phone(Name,Phone). phone_name(«Нет информации о владельце телефона»,_). /* если соответствующего факта во внутренней базе данных не нашлось, вместо фамилии абонента возвращаем соответствующее сообщение */ menu:– clearwindow, /* очистка текущего окна */ write(«1– Получение телефонного номера по фамилии «),nl, write(«2 — Получение фамилии абонента по номеру телефона «),nl, write(«3 — Добавление новой записи в телефонную базу.»),nl, write(«4 — Изменение номера абонента»),nl, write(«5 — Удаление записи из телефонной базы»),nl, write(«0 — Выйти»),nl, readchar(C), /* читаем символ с клавиатуры */ m(C). /* вызываем выполнение соответствующего пункта меню */ m(‘1’):– clearwindow, write(«Введите фамлию»), nl, readln(Name), name_phone(Name, Phone), write(«Номер телефона: «,Phone), readchar(_), menu. m(‘2’):– clearwindow, write(«Введите номер телефона»),nl, readln(Phone), phone_name(Name, Phone), write(«Фамилия абонента: «,Name), readchar(_), menu. m(‘3’):– clearwindow, write(«Введите фамилию»),nl, readln(Name), write(«Введите номер телефона»),nl, readln(Phone), assert(phone(Name,Phone)), /* добавляем факт во внутреннюю базу данных */ menu. m(‘4’):– clearwindow, write(«Введите фамилию»),nl, readln(Name), write(«Введите новый номер телефона»),nl, readln(Phone), retract(phone(Name,_)), /* удаляем устаревшую информацию из внутренней базы данных */ assert(phone(Name,Phone)), /* добавляем новую информацию в телефонную базу */ menu. m(‘5’):– clearwindow, write(«Укажите номер телефона, запись о котором нужно удалить из телефонной базы»), nl, readln(Phone), retract(phone(_,Phone)), /* удаляем соответствующий факт из внутренней базы данных */ menu. m(‘0’):– save(«phones.ddb «), /* сохраняем телефонную базу в файл */ retractall(_)./* удаляем все факты из внутренней базы данных */ m(_):– menu. /* если пользователь по ошибке нажал клавишу, отличную от тех, реакция на которые предусмотрена, ничего плохого не произойдет, будет отображено меню еще раз */ start:– existfile(«phones.ddb»). /* если файл с телефонной базой существует */ consult(«phones.ddb «), /* загружаем факты во внутреннюю базу данных */ menu. /* вызываем меню */ start:– openwrite(f,»phones.ddb»), /* если файла с телефонной базой не существует, создаем его */ closefile(f), menu. /* вызываем меню */ GOAL /* раздел внутренней цели*/ Start

Источник: studassistent.ru

Алгоритмический язык Pascal. Программа «Телефонный справочник»

Важнейшая роль в развитии современного общества в конце XX века принадлежит информатизации. По характеру и значению для будущего человеческой цивилизации процесс информатизации можно сравнить с переходом, человечества от аграрного общества к индустриальному. Подобно тому, как изобретение механического двигателя открыло эру комплексной механизации и автоматизации физического труда, изобретение ЭВМ сделало то же самое в отношении труда умственного.

Процесс информатизации характеризуется использованием информации в качестве общественного продукта, обеспечивающего интенсификацию всех сфер экономики, ускорение научно-технического прогресса, интеллектуализацию основных видов человеческой деятельности и демократизацию общества. В результате внедрения новых информационных технологий значительно изменяются общественно-экономические структуры, формируется гибкое динамическое общество, способное к активной самооценке и выбору целей развития, быстрой и адекватной реакции на изменение внешней и внутренней среды.

Читайте также:
Как пользоваться программой wp970

Основой информатизации является использование электронно-вычислительной техники для сбора, накопления, обработки и передачи информации. ЭВМ-комплекс технических средств, предназначенных для автоматической обработки информации в процессе решения вычислительных и информационных задач.

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

Современные компьютеры не настолько совершенны, чтобы понимать программы, записанные на каком-либо употребляемом человеке языке- русском, английском, японском. Команды, предназначенные для ЭВМ необходимо записать в понятной ей форме. С этой целью применяются языки программирования — искусственные языки, алфавит, словарный запас и структура которых удобны человеку и понятны компьютеру.

В самом общем смысле языком программирования называется фиксированная система обозначений и правил для описания алгоритмов и структур данных. Языки программирования имеют как бы два лица. Одно из них обращено к человеку, а другое адресовано к ЭВМ, которая должна понимать команды.

Исходя из этого все языки программирования делятся на языки низкого (ассемблер), высокого (Паскаль, Бейсик, Си, Фортран) и сверхвысокого (Алгол-67, Пролог) уровня.

Язык программирования Паскаль (назван в честь выдающегося французского математика и философа Блеза Паскаля (1623-1662)), разработан в 1968-1971 годах Никлаусом Виртом, профессором, директором Института информатики Швейцарской высшей политехнической школы. Язык Паскаль, созданный первоначально для обучения программирования как систематической дисциплине, скоро стал широко использоваться для разработки программных средств в профессиональном программировании.

Широкой популярностью Паскаля среди программистов способствовали следующие причины:

Благодаря своей компактности, удачному первоначальному описанию Паскаль оказался достаточно, лёгким для изучения

• Язык программирования Паскаль отражает фундаментальные и наиболее важные концепции (идеи) алгоритмов в очевидной и легко воспринимаемой форме, что предоставляет программисту средства, помогающие проектировать программы.

• Язык программирования Паскаль позволяет чётко реализовать идеи структурного программирования и структурной организации данных.

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

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

• Использование в Паскале простых и гибких структур управления: ветвлений, циклов.

Так как текст, записанный на Паскале программы не понятен компьютеру, то требуется перевести его на машинный язык. Такой перевод программы с языка программирования на язык машинных кодов называется трансляцией, а выполняется он специальными трансляторами.

Существуют три вида трансляторов: интерпретаторы, компиляторы и ассемблеры.

Любой транслятор решает следующие основные задачи:

Анализирует транслируемую программу, в частности определяет, содержит ли она синтаксические ошибки.

Генерирует выходную программу.

Распределяет память для выходной программы. Разработка программы на Паскале включает в себя следующие действия: ввод и редактированию теста программы на языке программирования Паскаль, её трансляцию, отладку. Для выполнения каждого этапа применяются специальные средства.

Для повышения качества и скорости разработки программ в середине 80-х годов была создана система программирования Турбо Паскаль. Слово Турбо в название системы программирования — это отражение торговой марки фирмы-изготовителя Вorland International, Inc (США).

Написать программу, которая позволяет найти нужные сведения в телефонном справочнике (а:phone.txt). Программа должна запрашивать фамилию человека и выводить его телефон. Если в справочнике есть одинаковые фамилии, то программа должна вывести список всех людей, имеющих эти фамилии.

RB=record Запись сведений

D,M,i,k,z: integer; Sr,Sr0,max:real;

BookFile: file of RB; Переменная для файла с записями RecBook

Work: RB; Переменная для доступа к записям

procedure AddRec; Добавление записи в файл

writeln(‘Ввод записи №’,FilePos(BookFile)+1);

Write(‘Введите телефон (32-22-12):’);

Write(BookFile, Work); end;

procedure Create_Supplementing_library; Создание нового файла

Ind, Count:integer; begin Name:=’A:phone.txt’;

Assign(BookFile, Name); Открыть новый файл для записи

Writeln(‘Создание записей файла ‘, Name);

Write(‘Введите количество телефонов на станции: ‘);

for Ind:=1 to count do

Writeln(‘Создание файла данных библиотеки завершена’);

Writeln(‘Файл данных имеет ‘, FileSize(BookFile), ‘ записи’); close(BookFile);

Reset(BookFile); clrscr; Seek(BookFile, 0);

Writeln(‘ Фамилия Телефон’);

while (not Eof(BookFile)) do begin

With Work do begin

Writeln(‘ Фамилия Телефон’);

while (not Eof(BookFile)) do begin

With Work do begin

if s=a then begin Outputrec;z:=1;end;

if z=0 then writeln(‘В справочнике данных о ‘,s,’е нет’);

End_Menu:=False; repeat textcolor(7);

Writeln(‘Выберите вид работы:’);

Writeln(‘ 1- создать новый файл данных’);

Writeln(‘ 2- вывод всей картотеки’);

Writeln(‘ 3- поиск телефона по фамилии’);

Writeln(‘ 0- завершение работы:’);

Writeln(‘Для продолжения нажмите Enter’);

Программа начинается стандартной строкой:

Далее следует описательная часть программы. Она состоит из нескольких разделов:

Процедура assign (ФайловаяПеременная, ИмяФайла) предшествует другим процедурам, т. к. ставит в соответствие физическому файлу на внешнем устройстве логический файл — файловую переменную, к которой впоследствии будут обращаться все другие файловые процедуры (связывает их). ИмяФайла должно представлять собой выражение строкового типа.

Дальнейшие операции с переменной ФайловаяПеременная будут выполняться над физическим файлом ИмяФайла. Это полное имя внешнего файла, удовлетворяющее требованиям операционной системы MS-DOS. Процедуру assign недопустимо использовать для открытого файла. Прежде чем использовать файловую переменную повторно, необходимо закрыть файл с помощью процедуры close.

После вызова assign связь файловой переменной с внешним файлом существует до тех пор, пока не будет выполнен другой assign для данной файловой переменной. Следовательно, файл можно повторно открыть без дополнительного использования процедуры assign даже после закрытия close.

Процедура reset (ФайловаяПеременная) открывает существующий файл на чтение (открывает входной файл) и ставит указатель на начало первого элемента файла. При отсутствии внешнего файла с указанным именем возникает сообщение об ошибке Error I: File not found (Ошибка 2: Файл не найден). Если при чтении файла возникнет необходимость вернуть указатель в его начало, достаточно будет просто применить процедуру reset к этому файлу еще раз.

Читайте также:
Как работают программы вымогатели

Функция ioresult проверяет существование файла на диске. По умолчанию при всех обращениях к стандартным функциям и процедурам ввода/вывода, используемым при работе с файлами, автоматически производится проверка на наличие ошибок. Программист должен предусмотреть возможность ввода неверных исходных данных пользователем программы, например, имени файла, предназначенного для чтения. Это приведет к завершению работы программы, что нежелательно, особенно при вводе больших объемов данных. Использование директивы компилятора и стандартной функции ioresult в цикле repeat позволит программе корректно обработать эту исключительную ситуацию.

Процедура rewrite (ФайловаяПеременная) создает и открывает новый (выходной) файл для последующей записи данных. После ее успешного выполнения файл готов к записи в него первого элемента.

Обратите внимание — использование rewrite требует особой аккуратности. Если внешний файл с указанным именем уже существует, то он удаляется, и на его месте создается новый пустой файл с тем же именем. Для предотвращения потери информации на практике необходимо создавать резервные копии файлов, над которыми могут производиться опасные действия. Обычно им назначается расширение bak.

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

Процедура rename (ФайловаяПеременная, ИмяФайла) используется ДЛЯ ТОГО, чтобы переименовать неоткрытый внешний файл любого типа. Новое имя задается строкой ИмяФайла.

Процедура erase (ФайловаяПеременная) удаляет неоткрытый внешний файл любого типа, задаваемый параметром ФайловаяПеременная.

Обратите внимание — процедуры rename и erase нельзя использовать для открытых файлов. Их необходимо предварительно закрыть. Если файл не существует, возникает ошибка выполнения программы.

Логическая функция eof (ФайловаяПеременная) выполняет проверку, достигнут ли конец файла (End Of File) при чтении из него данных Функция возвращает true, если конец файла обнаружен, и указатель текущей позиции находится в конце файла за его последним символомю Это значит, что последний элемент в файле уже прочитан, или файл по еле открытия оказался пуст. В противном случае функция возвращает – false.

Функция eof находит широкое применение в задачах обработки файлов поскольку позволяет задать условие выполнения цикла для чтения данных из файла. Особенно она важна для текстовых файлов. Если параметр ФайловаяПеременная отсутствует, подразумевается консоль.

Getdir Определяет текущий каталог на заданном диске

chdir Меняет текущий каталог

Mkdir Создает подкаталог

Rmdir Удаляет пустой подкаталог

Settextbuf Назначает для текстового файла буфер ввода/вывода

Flush Очищает буфер текстового файла, открытого для вывода (модуль dos)

Fsplit Разделяет имя файла на путь, имя и расширение (модуль dos)

Getfattr Возвращает атрибуты файла (модуль dos)

Getftime Возвращает дату и время последней записи файла (модуль dos)

Setf time Назначает новую дату и время последней записи файла (модуль dos)

Setfattr Устанавливает атрибуты файла (модуль dos)

Filesize Возвращает текущий размер файла

Diskfree Возвращает число свободных байтов на заданном диске (модуль dos)

Disksize Возвращает общий объем дисковой памяти на диске (модуль dos) Fexpand Расширяет имя файла до полностью определенного (модуль dos)

Findfirst Ищет в заданном каталоге первый элемент, совпадающий с заданным именем файла и его атрибутами (модуль dos, f indnext — следующий)

Fsearch Ищет файл в списке каталогов (модуль dos)

Функции проверки конца строки и файла:

• кроме использования функции eof, принимающей значение true, если файл исчерпан, при работе с текстовыми файлами необходимо уметь проверять также и конец строки. Для контроля используется функция еоln (ФайловаяПеременкая), принимающая значение true, если указатель текущей позиции находится на маркере конца строки (CR/LF), иначе – false. Если eof – true, то и eoln – true;

• функция sеекеоln (ФайловаяПеременная) аналогична функции eoln, НО пропускает пробелы и позиции табуляции перед проверкой на конец строки. Функцию можно использовать только для открытых текстовых файлов;

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

Если после then и else нужно использовать несколько операторов то эти операторы надо заключать в операторные скобки — begin ; … end.

Бывает полный и неполный — не содержит ветви else.

В конструкции While. do условие выхода удовлетворяется, если выражение, определяющее условие выхода, ложно. Пока это условие истинно, будет выполняться оператор стоящий после do. Если после do нужно использовать несколько операторов то эти операторы надо заключать в операторные скобки — begin ; … end.

Список используемой литературы

1. Турбо Паскаль 7.0 “BHV” 1996.

2. В.В. Фаронов. Турбо Паскаль 7.0 Начальный курс. Учебное пособие. Издательство “Нолидж” 1997.

3. В.В. Фаронов. Турбо Паскаль 7.0 Практика программирования. Учебное пособие. Издательство “Нолидж” 1997

4. А.И. Марченко, Л.А.Марченко. Программирование в среде Турбо Паскаль 7.0. Киев “ВЕК+” 1999.

5. Иванов А.Ф., Садриева Л.М. Методическое руководство по подготовке и защите курсовых работ по дисциплине “Информатика”. АлНИ, 2002.

Информация о работе «Алгоритмический язык Pascal. Программа «Телефонный справочник»»

Раздел: Информатика, программирование
Количество знаков с пробелами: 15178
Количество таблиц: 0
Количество изображений: 1

Источник: kazedu.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru