2 / 2 / 3
Регистрация: 06.10.2009
Сообщений: 123
1

Создать файл, содержащий сведения о телефонах абонентов

17.04.2010, 11:29. Показов 3544. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
1. Создать файл, содержащий сведения о телефонах абонентов. Каждая запись содержит поля: фамилия абонента, год установки телефона, номер телефона. Количество записей произвольное. Написать программу, выводящую на экран следующую информацию:
- по фамилии абонента выдаётся номер телефона;
- определяется количество установленных телефонов с XXXX года.




Проверьте пожалуйста,прога работает,но интересует правильно ли файлы организовал,ну всмысле там вводв/вывод?проверьте пожалуйста

вот код:
Pascal
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
type baza=record
   surname: string[10];
   name: string[10];
   telephone_number: string[50];
   year_install: integer;
   home: string[50];
end;
 
var
 
f:file of baza; friends: array [1..100] of baza;
a:array[1..100] of string;
   I,j,k, n: integer;
 
begin
writeln('Vvedite svedeniya ob abiturientah');
assign(F,'c:\baza.dat');
rewrite(f);
 
writeln('Введите количество людей');
readln(n);
for I:=1 to n do
 
  with friends [I] do begin
   begin
 
        writeln ('введите фамилию ',' ',i,'-го человека');
        readln (surname);
        writeln ('введите Имя ',' ',i,'-го человека');
        readln (name);
 
        writeln ('Телефонный номер:',' ',i,'-го человека');
        readln( telephone_number);
        writeln ('Год установки:',' ',i,'-го человека');
        readln(year_install);
 
 
          end;write(F,friends[i]); end;
          writeln;
           writeln;
 
 
writeln('Файл успешно создан');
 
 
 writeln;
 
while not Eof(F) do
 
for i:=1 to n do
read(f,friends[i]);
 
 
k:=0;
for i:=1 to n do
if (friends[i].surname=friends[i].surname)  then Writeln('Фамилия и Имя по заданному телефону:',i,'-го',' ','человека',' ',friends[i].surname,' ',friends[i].name);
 
 
 
writeln;
 
for i:=1 to n do
 
 
if (friends[i].telephone_number=friends[i].telephone_number) or (friends[i].telephone_number<>friends[i].telephone_number) then  inc(k);
 
writeln('Количество телефонов:', k)  ;
 
 
 
Close(F);
 
 
 
end.
вот непонятно вот здесь:

Pascal
1
2
3
4
while not Eof(F) do
 
for i:=1 to n do
read(f,friends[i]);
правильно ли?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.04.2010, 11:29
Ответы с готовыми решениями:

Создать файл, содержащий сведения о телефонах абонентов
Создать файл, содержащий сведения о телефонах абонентов. Каждая запись содержит поля: фамилия...

Создать файл, содержащий сведения о справочной автовокзала
Создать файл, содержащий сведения о справочной автовокзала, где хранится расписание движения...

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

Создать файл, содержащий сведения о сотрудниках универа
Создать файл, содержащий сведения о сотрудниках универа. Структура записи: фамилия сотрудника,...

1
Тимуровец
445 / 285 / 50
Регистрация: 10.09.2009
Сообщений: 963
17.04.2010, 12:00 2
Смущает такой вот момент:
1. Вы заполнили файл данными, при этом у вас указатель позиции файла должен находится на последней записи. А вы сразу-же пытаетесь прочитать все записи. Скорее всего вы прочитаете только последнюю.
2. Конечно можно читать данные и двойным циклом, но при условии что количество данных в файле будет ровно столько на сколько заточен цикл. В противном случае при меньшем количестве будет ошибка, а при большем будет неправильно заполнен массив и снова будет ошибка.
0
17.04.2010, 12:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.04.2010, 12:00
Помогаю со студенческими работами здесь

Создать файл, содержащий сведения о товарах в магазине
Создать файл, содержащий сведения о товарах в магазине: наименование товара, изготовитель, год...

Создать файл, содержащий сведения о личной коллекции книголюба
создать файл содержащий сведения о личной коллекции книголюба страктура записи:1) шифр книги,...

Создать типизированный файл avto, содержащий сведения об автомобилях
Program zadanie1; type avto = record marka:string; nomer:string; fam:string; end;...

Создать файл, содержащий сведения о сдаче студентами сессии
1) Создать файл, содержащий сведения о сдаче студентами сессии. Структура записи: индекс группы,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru