Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Write(Файл, Запись);)





номер записи автоматически увеличивается на 1, перед каждой операцией записи (чтения) необходимо задать номер (выполнить Seek).

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

 

Программа будет иметь вид.

Program Updtel;

Type

Tel=Record

Nom: Integer;

Fam, Adr: String[15];

End;

Var

Ftel: File Of Tel;

Rtel: Tel;

K, Num: Integer;

S: Char;

Begin

Assign(Ftel, ’Tsprav’);

Reset(Ftel); { Открытие файла }

Repeat {Поиск фамилии и адреса абонента по номеру телефона}

Write(’Введите номер телефона: ’);

ReadLn(k);

Seek(Ftel, k);

If Not Eof(Ftel) then

Begin

Read(Ftel, Rtel);

With Rtel do

Write (’Фамилия: ’, fam, ’ Адрес: ’, Adr);

Writeln(’Будем менять фамилию? -Д/Н Y/N’);

Readln(S);

If (S=’Д’) (S=’д’) Or (S=’Y’) Or (S=’y’) then

Begin

Writeln(’Введите фамилию’);

Read (Rtel.fam);

Seek (Ftel, k);

Write(Ftel, Rtel);

end;

End

else

Writeln (’Неправильный номер’);

Writeln (’Продолжаем? -Д/Н Y/N’);

Readln(S);

Until (S=’H’) Or (S=’н’) Or (S=’n’) Or (S=’N’);

Writeln (’Конец работы, нажмите клавишу Enter’);

Readln;

end.

 

 

Упорядочение записей в файле

 

Эта операция выполняется довольно часто. Ее можно произвести, используя известный метод " пузырька". Здесь возможны два подхода.

1. Записи из файла можно переписать в массив, упорядочить их там, а потом переписать этот массив в исходный файл.

2. Информация упорядочивается непосредственно в наборе данных.

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

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

Рассмотрим алгоритм на примере, в котором используется более общая по сравнению с телефонным справочником структура записей.

 

Задача. Набор данных, имя которого задается с клавиатуры, содержит информацию о компьютерах. Запись о компьютере имеет вид

Марка, Цена.

Упорядочить записи в наборе по возрастанию цены.







Дата добавления: 2014-12-06; просмотров: 594. Нарушение авторских прав; Мы поможем в написании вашей работы!




Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...


Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...


Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...


Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Что такое пропорции? Это соотношение частей целого между собой. Что может являться частями в образе или в луке...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Меры безопасности при обращении с оружием и боеприпасами 64. Получение (сдача) оружия и боеприпасов для проведения стрельб осуществляется в установленном порядке[1]. 65. Безопасность при проведении стрельб обеспечивается...

Весы настольные циферблатные Весы настольные циферблатные РН-10Ц13 (рис.3.1) выпускаются с наибольшими пределами взвешивания 2...

Хронометражно-табличная методика определения суточного расхода энергии студента Цель: познакомиться с хронометражно-табличным методом опреде­ления суточного расхода энергии...

Studopedia.info - Студопедия - 2014-2026 год . (0.012 сек.) русская версия | украинская версия