Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 07.07.2011
Сообщений: 6

Типизированый файл

11.07.2011, 20:45. Показов 572. Ответов 3
Метки нет (Все метки)

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

Типизованный файл содержит информацию о меню (6 записей). Блюдо меню характеризуется следующими показателями: код блюда (целое число), наименование (симольное),цена (вещественное), вид блюда (символьное). Поиск блюда по заданному жанру.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.07.2011, 20:45
Ответы с готовыми решениями:

Неправильно записывает типизированый файл!
type pInfo = record name:array of string; // Имя family:array of string; // Фамилия patronymic:array of string; //...

файлы типизированый
Даны два типизированных файла целых чисел. Записать в третий файл целых чисел суммы соответствующих чисел из исходных файлов, пока не...

не типизированый файл
Создать файл, компоненты (количество <=9) которого являются вещественными числами. После создания файла поменять местами значения...

3
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
11.07.2011, 20:57
Цитата Сообщение от FSXRAY Посмотреть сообщение
Поиск блюда по заданному жанру.
В смысле?
0
0 / 0 / 0
Регистрация: 07.07.2011
Сообщений: 6
11.07.2011, 21:14  [ТС]
Ну имеется в виду что поиск блюда по коду либо по наименованию либо по цене либо по виду.
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
12.07.2011, 08:55
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
uses crt;
const n=6;
type menu=record
          kod:integer;
          naz:string;
          cen:real;
          vid:string;
          end;
     tfile=file of menu;
procedure Kontrol(s1,s2:string;var f:boolean;var a:integer;var b:real);
var c:integer;
    s:string;
begin
f:=true;
val(s1,a,c);
if (c<>0)or(a<=0) then f:=false;
val(s2,b,c);
if (c<>0)or(b<=0) then f:=false;
end;
procedure Vvod(var f:tfile);
var z:menu;
    i,a:integer;
    b:real;
    s1,s2:string;
    fl:boolean;
begin
assign(f,'menu');
rewrite(f);
for i:=1 to n do
 begin
  writeln('Введите данные о блюде ',i);
  with z do
   begin
    repeat
    write('Код, натуральное число: ');read(s1);
    write('Наименование:');read(naz);
    write('Цена, вещественное положительное число:');readln(s2);
    write('Вид блюда:');read(vid);
    Kontrol(s1,s2,fl,a,b);
    if not fl then writeln('Данные введены неверно, повторите ввод')
    else
     begin
      z.kod:=a;
      z.cen:=b;
     end;
    until fl;
    write(f,z);
   end;
 end;
close(f);
clrscr;
end;
procedure Zagl;
begin
writeln('----------------------------------------------');
writeln('|  Код   | Наименование  |  Цена  |   Вид    |');
writeln('----------------------------------------------');
end;
procedure Vyvod(var f:tfile);
var z:menu;
begin
clrscr;
reset(f);
writeln('Меню:':25);
Zagl;
while not eof(f) do
 begin
  read(f,z);
  with z do
   begin
    gotoXY(1,whereY);write('|',kod:6);
    gotoXY(10,whereY);write('| ',naz);
    gotoXY(26,whereY);write('|',cen:7:2);
    gotoXY(35,whereY);write('| ',vid);
    gotoXY(46,whereY);writeln('|');
   end;
 end;
close(f);
writeln('----------------------------------------------');
readln;
end;
procedure Kod(var f:tfile);
var z:menu;
    s:string;
    k,c,p:integer;
begin
clrscr;
repeat
write('Введите код, натуральное число k=');
read(s);
val(s,k,c);
if c<>0 then writeln('Вы ввели не натуральное число, повторите ввод');
until c=0;
reset(f);
writeln('Блюда с кодом ',k);
Zagl;
p:=0;
while not eof(f)do
 begin
  read(f,z);
  with z do
  if kod=k then
   begin
    p:=1;
    gotoXY(1,whereY);write('|',kod:6);
    gotoXY(10,whereY);write('| ',naz);
    gotoXY(26,whereY);write('|',cen:7:2);
    gotoXY(35,whereY);write('| ',vid);
    gotoXY(46,whereY);writeln('|');
   end;
 end;
close(f);
writeln('----------------------------------------------');
if p=0 then write('Блюд с таким кодом нет');
readln
end;
procedure Naimenovanie(var f:tfile);
var z:menu;
    s:string;
    p:integer;
begin
clrscr;
writeln('Введите наименование блюда');
read(s);
reset(f);
writeln('Блюда с наименованием ',s);
Zagl;
p:=0;
while not eof(f)do
 begin
  read(f,z);
  with z do
  if naz=s then
   begin
    p:=1;
    gotoXY(1,whereY);write('|',kod:6);
    gotoXY(10,whereY);write('| ',naz);
    gotoXY(26,whereY);write('|',cen:7:2);
    gotoXY(35,whereY);write('| ',vid);
    gotoXY(46,whereY);writeln('|');
   end;
 end;
close(f);
writeln('----------------------------------------------');
if p=0 then write('Блюд с таким наименованием нет');
readln
end;
procedure Cena(var f:tfile);
var z:menu;
    s1,s2:string;
    k1,k2:real;
    c,p:integer;
begin
clrscr;
p:=0;
repeat
write('Введите нижний предел цены, вещественное число k1=');
read(s1);
val(s1,k1,c);
if c<>0 then p:=1;
write('Введите верхний предел цены, вещественное число k2>',k1:0:2,' k2=');
read(s2);
val(s2,k2,c);
if c<>0 then p:=1;
if (p=1)or(k1>=k2) then
writeln('Вы ввели неверные данные, повторите ввод');
until (p=0)and(k2>k1);
reset(f);
writeln('Блюда с ценой от ',k1:0:2,' до ',k2:0:2);
Zagl;
p:=0;
while not eof(f)do
 begin
  read(f,z);
  with z do
  if (cen>=k1)and(cen<=k2) then
   begin
    p:=1;
    gotoXY(1,whereY);write('|',kod:6);
    gotoXY(10,whereY);write('| ',naz);
    gotoXY(26,whereY);write('|',cen:7:2);
    gotoXY(35,whereY);write('| ',vid);
    gotoXY(46,whereY);writeln('|');
   end;
 end;
close(f);
writeln('----------------------------------------------');
if p=0 then write('Блюд с такими ценами нет');
readln
end;
procedure Vid(var f:tfile);
var z:menu;
    s:string;
    p:integer;
begin
clrscr;
writeln('Введите вид блюда');
read(s);
reset(f);
writeln('Блюда вида ',s);
Zagl;
p:=0;
while not eof(f)do
 begin
  read(f,z);
  with z do
  if vid=s then
   begin
    p:=1;
    gotoXY(1,whereY);write('|',kod:6);
    gotoXY(10,whereY);write('| ',naz);
    gotoXY(26,whereY);write('|',cen:7:2);
    gotoXY(35,whereY);write('| ',vid);
    gotoXY(46,whereY);writeln('|');
   end;
 end;
close(f);
writeln('----------------------------------------------');
if p=0 then write('Блюд такого вида нет');
readln
end;
var f:tfile;
    w:byte;
begin
Vvod(f);
repeat
clrscr;
writeln('Выберите действие:');
writeln('1-показать все меню');
writeln('2-поиск по коду');
writeln('3-поиск по наименованию');
writeln('4-поиск по цене');
writeln('5-поиск по виду');
writeln('6-выход');
repeat
read(w);
until w in [1..6];
case w of
1:Vyvod(f);
2:Kod(f);
3:Naimenovanie(f);
4:Cena(f);
5:Vid(f);
6:exit;
end;
until w=6;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.07.2011, 08:55
Помогаю со студенческими работами здесь

Запись в типизированый файл
Помогите найти ошибку. Ругается там где пытаюсь записать в файл, говорит нельзя преобразовать integer к ved. program fail_zap; uses...

Как записать типизированый файл в паскале
Помогите пожалуйста... объясните, как записать типизированый файл в паскале, что бы он потом по-человечески открывался в текстовом...

Типизированый файл, поменять местами половины
создать файл из целых чисел (количество чисел четно). поменять местами первую и вторую половины местами. помогите плиз! идет...

Типизированый файл: обслуживание граждан поликлиникой
Нужно создать типизированный файл записей, содержащий данные о гражданах, обслуживаемых определенной поликлиникой. Поля записи - фамилия,...

Типизированый файл: найти разность первого и последнего компонентов
3аписать в файл последовательно доступно N действительных чисел. Найти разность первого и последнего компонентов файла.


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru