Подскажите по Паскалю, кто знает!!!
Создать структуру лекарства, хранящую информацию о продукции аптеки: код товара, название препарата, производитель, лекарственная группа, необходимость наличия рецепта. Создать массив таких структур и заполнить его. Вывести на экран все препараты, которые можно купить в аптеке без рецепта.
Я написал код, но не знаю, как реализовать показ всех препаратов, которые можно купить без рецепта. И как можно задать правильно количество препаратов? Чтобы можно было ввести с клавиатуры это количество.
Вот код:
type Apteka=record
nomber:string;
name:string;
proizvod:string;
group:string;
adres:string;
recept: string;
end;
var
i:integer;
preparats: array [1..3] of Apteka; //задать количество препаратов
begin
for i:=1 to 3 do
begin
writeln ('Сведения о ', i , '-м препарате: ');
writeln ('введите код препарата: ');
readln (preparats[i].nomber);
writeln ('введите название препарата: ');
readln (preparats[i].name);
writeln ('введите производителя: ');
readln (preparats[i].proizvod);
writeln ('введите лекарственную группу: ');
readln(preparats[i].group);
writeln ('Необходим рецепт? ');
readln(preparats[i].recept);
writeln ('Препараты, которые можно купить без рецепта: ');
end;
end.
Другие языки программирования и технологии
Задача с заполнением структур на паскале
вот похожая, примени, все не влезло, могу прислать в адрес
{Разработать штатное содержание сотрудников отдела, содержащее ФИО сотрудника,
даты рождения, образования, домашнего адреса, номера телефона, должности профессии.
Выводить информацию о :
Сотрудниках с Высшим образованием
Сотрудниках с конкретной профессией
Именинниках конкретного месяца }
uses crt;
type
firm = record
f,ob,ad,tel,d: string;
den,mes,god:string;
end;
var
a: array[1..100] of firm;
obr,prof,im:string;
n,i,k:integer;
W:firm;
t:Text;
// t: file of firm;
z:char;
namebd:string;
Procedure make; // -------- процкдура записи в файл --------
begin
{ write(' ввести имя файла ( например: otdel): ');
readln( namebd);
namebd:=namebd+'.txt'; }
assign(t,namebd);
rewrite(t);
write('количество сотрудников='); readln(n);
for i:=1 to n do
with a[i] do begin
writeln('фамилия ',i,' сотрудника: '); readln(f); writeln(t,f);
writeln('день рождения (DD): '); readln(den); writeln(t,den);
writeln('месяц рождения (MM): '); readln(mes); writeln(t,mes);
writeln('год рождения (GGGG): '); readln(god); writeln(t,god);
writeln('образование: '); readln(ob); writeln(t,ob);
writeln('адрес: '); readln(ad); writeln(t,ad);
writeln('телефон: '); readln(tel); writeln(t,tel);
writeln('должность: '); readln(d); writeln(t,d);
end;
close(t);
end;
procedure show; //------------просмотр файла-------------
var i:integer;
begin
writeln('просмотр файла');
reset(t);
writeln('---------------------------------------------------------------');
writeln(' N Фамилия дата образ адрес тел должность ');
writeln('---------------------------------------------------------------');
i:=0;
writeln;
while not eof(t) do begin
inc(i);
readln(t,w.f);
readln(t,w.den);
readln(t,w.mes);
readln(t,w.god);
readln(t,w.ob);
readln(t,w.ad);
readln(t,w.tel);
readln(t,w.d); // readln;
with w do
writeln(i:3,f:10,' ', den:2,mes:3,god:5,' ',ob:6,' ',ad:6,tel:9,' ',d:6);
end;
writeln('--> enter'); readln;
close(t);
end;
{Разработать штатное содержание сотрудников отдела, содержащее ФИО сотрудника,
даты рождения, образования, домашнего адреса, номера телефона, должности профессии.
Выводить информацию о :
Сотрудниках с Высшим образованием
Сотрудниках с конкретной профессией
Именинниках конкретного месяца }
uses crt;
type
firm = record
f,ob,ad,tel,d: string;
den,mes,god:string;
end;
var
a: array[1..100] of firm;
obr,prof,im:string;
n,i,k:integer;
W:firm;
t:Text;
// t: file of firm;
z:char;
namebd:string;
Procedure make; // -------- процкдура записи в файл --------
begin
{ write(' ввести имя файла ( например: otdel): ');
readln( namebd);
namebd:=namebd+'.txt'; }
assign(t,namebd);
rewrite(t);
write('количество сотрудников='); readln(n);
for i:=1 to n do
with a[i] do begin
writeln('фамилия ',i,' сотрудника: '); readln(f); writeln(t,f);
writeln('день рождения (DD): '); readln(den); writeln(t,den);
writeln('месяц рождения (MM): '); readln(mes); writeln(t,mes);
writeln('год рождения (GGGG): '); readln(god); writeln(t,god);
writeln('образование: '); readln(ob); writeln(t,ob);
writeln('адрес: '); readln(ad); writeln(t,ad);
writeln('телефон: '); readln(tel); writeln(t,tel);
writeln('должность: '); readln(d); writeln(t,d);
end;
close(t);
end;
procedure show; //------------просмотр файла-------------
var i:integer;
begin
writeln('просмотр файла');
reset(t);
writeln('---------------------------------------------------------------');
writeln(' N Фамилия дата образ адрес тел должность ');
writeln('---------------------------------------------------------------');
i:=0;
writeln;
while not eof(t) do begin
inc(i);
readln(t,w.f);
readln(t,w.den);
readln(t,w.mes);
readln(t,w.god);
readln(t,w.ob);
readln(t,w.ad);
readln(t,w.tel);
readln(t,w.d); // readln;
with w do
writeln(i:3,f:10,' ', den:2,mes:3,god:5,' ',ob:6,' ',ad:6,tel:9,' ',d:6);
end;
writeln('--> enter'); readln;
close(t);
end;
паскаль - язык созданный ДЛЯ ОБУЧЕНИЯ
для написания прикладных программ надо использовать DELPHI
для написания прикладных программ надо использовать DELPHI
Viktor Pudovkin
нам задали на паскале, на делфи было бы естественно проще
Похожие вопросы
- Задача для написания на языке паскаль
- Кто знает очень сложные задачи по информатике, для программы Паскаль?? ? Напишите несколько задач...
- Помогите,пожалуйста,решить задачу на двумерные массивы,в паскале.(задача вн.)Спасибо.
- Задача по программированию Крестики-нолики ( Паскаль) . Помогите с решением, пожалуйста.
- Pascal. Помогите пожалуйста решить задачу в паскале !
- Как ответ на эту задачу записать в паскале, либо просто в алгоритм?
- Помогите решить задачу на Турбо паскале
- ПОМОГИТЕ С ЗАДАЧАМИ В ПАСКАЛЕ
- Помогите, пожалуйста с задачей :( Сижу, туплю уже какой день, вообще не соображу - чтокуда. Задача на Паскале
- Решение задач по паскалю