Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Работа для программиста > Фриланс
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2021, 11:30   #1
LevMark
Пользователь
 
Регистрация: 28.03.2021
Сообщений: 24
По умолчанию Каким образом можно написать эту программу с помощью процедуры вместо goto?

Создать файл, содержащий сведения об ассортименте обуви в мага-зине. Каждая запись содержит поля – артикул, наименование, коли-чество, стоимость одной пары. Количество записей – произвольное.
Артикул начинается с буквы Ж для женской обуви, М – для муж-ской, Д – для детской.
Написать программу, выдающую следующую информацию:
- наличие, стоимость обуви, артикул Х (Х вводится с клавиа-туры),
- список женской обуви с указанием наименования и имеющего-ся в наличии числа пар каждой модели.

uses crt;
type
Shoes = record
Art: string[15];
Name: string[20];
Kol: integer;
Price: real;
end;

var
Boty: Shoes;
F: file of Shoes;
q: integer;
Art1: string;

label 0, 1, 2, 3, 4,5;
begin
0: begin
clrscr;
writeln('Введите 1 - создание файла');
writeln('2 - ввод обуви');
writeln('3 - поиск по артикулам');
writeln('4 - поиск среди женской обуви');
writeln('5 - просмотр ассортимента');
readln(q);
case q of
1: goto 1;
2: goto 2;
3: goto 3;
4: goto 4;
5: goto 5;
else goto 0;
end;
end;

1: begin clrscr;
assign(F,'ЫЫЫ');
rewrite(F);
writeln('Файл создан');
readln;
goto 0;
end;
2: begin
clrscr;
assign(F,'ЫЫЫ');
reset(F);
while q <> 0 do
begin
Seek(F,FileSize(F));
writeln('Введите артикул');
readln(Boty.Art);

writeln('Введите название обуви');
readln(Boty.Name);

writeln('Введите количество пар');
readln(Boty.Kol);

writeln('Введите цену за пару');
readln(Boty.Price);
write(F,Boty);
writeln('Желаете продолжить?Если да, введите 1,если нет - введите 0');
readln(q);
end;
close(F);
goto 0;
end;
3: begin clrscr;
assign(F,'ЫЫЫ');
Reset(F);
writeln('Введите нужный вам артикул');
readln(Art1);
clrscr;
writeln('Введенный вами артикул: ',Art1);
while Eof(F) <> True do
begin
read(F, Boty);
if Art1 = Boty.Art then
writeln('Наименование: ',Boty.Name,' Количество пар: ',Boty.Kol,' Цена: ',Boty.Price);
end;
writeln('Желаете продолжить? Если да, введите 1,если нет - введите 0');
readln(q);
Close(F);
if q = 1 then
goto 3
else goto 0;
end;
4: begin clrscr;
assign(F,'ЫЫЫ');
reset(F);
while Eof(F) <> True do
begin
read(F,Boty);
if ('Ж' = Boty.Art[1]) or ('ж' = Boty.Art[1]) then begin
writeln('Наименование: ',Boty.Name, ' Количество пар ', Boty.Kol);
end;

end;
writeln('Желаете продолжить? Если да, введите 1,если нет - введите 0');
readln(q);
Close(F);
if q = 1 then
goto 4
else goto 0;
end;
5:begin clrscr;
assign(F,'ЫЫЫ');
reset(F);
while Eof(F) <> True do begin
read(F,Boty);
writeln('Артикул: ',Boty.Art,'; Наименование: ',Boty.Name,'; Количество пар: ',Boty.Kol,'; Цена: ',Boty.Price);
end;
readln;
goto 0;
end;
end.
LevMark вне форума Ответить с цитированием
Старый 12.04.2021, 13:55   #2
PressAnyKey
Новичок
Джуниор
 
Регистрация: 01.02.2021
Сообщений: 0
По умолчанию

LevMark, пишите pressanykeynow@yandex.ru
PressAnyKey вне форума Ответить с цитированием
Старый 12.04.2021, 18:30   #3
Larboss
Недо
Участник клуба
 
Регистрация: 11.08.2011
Сообщений: 1,394
По умолчанию

ТЗ, срок, бюджет: larbossfreelance@yandex.ru Метка: freelance. Указывайте ссылку на тему форума.
С помощью программирования можно разбогатеть и изменить мир к лучшему (с) Бьерн Страуструп
Larboss вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Каким образом можно нарисовать прямоугольник, C# Gogent Помощь студентам 2 19.08.2010 11:14
Каким образом можно замедлить выполнение программы? vedro-compota Мультимедиа в Delphi 4 08.06.2010 15:40
Каким образом можно доработать таймер? makcdrom JavaScript, Ajax 2 23.09.2009 22:29
Каким образом можно установить предел?? Xander Общие вопросы Delphi 4 23.11.2008 10:27
найти, каким образом можно получить длину строки. igroman Общие вопросы Delphi 2 25.05.2008 17:52