IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> графическое меню, создать графическое меню
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 8
Пол: Женский

Репутация: -  0  +


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



program biblioteka;
uses crt;
const n=100;
label menu;
type knigi=record
janr:string[12];
avtor:string[20];
nazvanie:string[30];
izdatelstvo:string[15];
god_izdaniya:word;
end;
var
zap:knigi;
z1,z:array[1..n] of knigi;
jan:string[12];
av:string[20];
m,l,l1:integer;
s:real;
procedure vvod(var a:array of knigi; var l:integer);
var i:integer;
ff:file of knigi;
begin
Assign(ff,'C:\tp7\bin\knigi.dat');
reset(ff);
i:=1;
while not eof (ff) do
begin
read(ff,a[i]);
i:=i+1;
end;
l:=i-1;
close(ff);
end;
procedure vvod_KL(var a:knigi);
var
ff:file of knigi;
begin
writeln('введите жанр');
readln(a.janr);
writeln('введите автора*');
readln(a.avtor);
writeln('введите название');
readln(a.Nazvanie);
writeln('введите издательство');
readln(a.izdatelstvo);
writeln('введите год издания');
readln(a.god_izdaniya);

Assign(ff, 'C:\tp7\bin\knigi.dat');
Rewrite(ff);
write(ff,a);
close(ff);
end;
procedure Vivod(var zap:knigi);
var
k:knigi;
f:file of knigi;
i:integer;
begin
vvod(z,l);
l:=l+1;
z[l]:=zap;
Assign(f, 'C:\tp7\bin\knigi.dat');
rewrite(f);
for i:=1 to l do
write(f,z[i]);
Close(f);
end;

procedure Vvod_fl(var zap:knigi);
var
name:string;
k:knigi;
f:text;
ff:file of knigi;
i:integer;
begin
gotoxy(15,23);
write('введите имя файла: ');
readln(name);
writeln;
Assign(f,name );
Vvod(z,l);
Assign(ff,'C:\tp7\bin\knigi.dat');
Rewrite(ff);
Reset(f);
for i:=1 to l do
write(ff,z[i]);
while not Eof(f) do
begin
Read(f,zap.janr);
write(zap.janr);
Read(f,zap.avtor);
write(zap.avtor);
Read(f,zap.nazvanie);
write(zap.nazvanie);
Read(f,zap.izdatelstvo);
write(zap.izdatelstvo);
Readln(f,zap.god_izdaniya);
write(zap.god_izdaniya);
writeln;
write(ff,zap);
end;
Close(f);
Close(ff);
end;

procedure vivod_sp(var a:array of knigi; k:integer);
var i:integer;
begin
for i:=1 to k do
begin
write(a[i].janr);
write('*',a[i].avtor);
write(a[i].nazvanie);
write(a[i].izdatelstvo,' ');
write(a[i].god_izdaniya);
writeln;
end;
end;

procedure janr;
var j,i:integer;
m:string[12];
begin
write('какой жанр вы желаете увидеть? ');
readln(m);
vvod(z,l);
for j:=1 to l do
for i:=1 to l-j do
begin
if z[i].avtor>z[i+1].avtor then
begin
zap:=z[i];
z[i]:=z[i+1];
z[i+1]:=zap;
end;
end;
l1:=0;
for i:=1 to l do
if z[i].janr=m then
begin
l1:=l1+1;
z1[l1]:=z[i];
end;

j:=0;
av:=z1[1].avtor;
for i:=1 to l1 do
begin
if z1[i].avtor=av then
begin
j:=j+1;
end
else
begin
writeln(' Количество книг = ',j);
j:=1;
av:=z1[i].avtor;
end;
{write(z[i].janr); }
write(j,'. ');
write(z1[i].avtor);
write(z1[i].nazvanie);
write(z1[i].izdatelstvo,' ');
write(z1[i].god_izdaniya);
writeln;
end;
writeln(' Количество книг = ',j);
end;

pocedure avtor;
var i:integer;
s,ss:string[20];
begin
write('Какого автора вы желаете увидеть? ');
readln(s);
vvod(z,l);
for i:=1 to l do
begin
ss:=z[i].avtor;
if s=ss then
begin
write(z[i].janr);
write(z[i].avtor);
write(z[i].nazvanie);
write(z[i].izdatelstvo,' ');
write(z[i].god_izdaniya);
writeln;
end;
end;end;

procedure nazvanie;
var i:integer;
m:string[30];
begin
write('Какое название книги желаете увидеть? ');
readln(m);
vvod(z,l);
for i:=1 to l do
begin
if z[i].nazvanie=m then
begin
write(z[i].janr);
write(z[i].avtor);
write(z[i].nazvanie);
write(z[i].izdatelstvo,' ');
write(z[i].god_izdaniya);
writeln;
end;
end;end;

procedure izdatelstvo;
var i:integer;
m:string[15];
begin
write('Какое издательство хотите увидеть? ');
read(m);
vvod(z,l);
for i:=1 to l do
begin
if z[i].izdatelstvo=m then;
begin
write(z[i].janr);
write(z[i].avtor);
write(z[i].nazvanie);
write(z[i].izdatelstvo,' ');
write(z[i].god_izdaniya);
writeln;
end;
end;end;

procedure god_izdaniya;
var i:integer;
m:word;
begin
write('Какой год издания желаете увидеть');
read(m);
vvod(z,l);
for i:=1 to l do
begin
if z[i].god_izdaniya=m then
begin
write(z[i].janr);
write(z[i].avtor);
write(z[i].nazvanie);
write(z[i].izdatelstvo,' ');
write(z[i].god_izdaniya);
writeln;
end;
end;end;


begin
menu:
clrscr;
gotoxy(25,1);
writeln('Библиотека*');
gotoxy(15,3);
write('1.выборка по жанру');
gotoxy(15,5);
write('2.выборка по автору');
gotoxy(15,7);
write('3.выборка по издательству');
gotoxy(15,9);
write('4.ввод с клавиатуры');
gotoxy(15,11);
write('5.ввод из файла');
gotoxy(15,13);
write('6.вывод всего списка записей');
gotoxy(15,15);
write('7.удаление записей');
gotoxy(15,17);
write('8.выход');
gotoxy(15,21);
readln(m);

case m of
1:janr;
2:avtor;
3:izdatelstvo;
4:Vvod_KL(zap);
5:Vvod_fl(zap);
6: begin
vvod(z,l);
Vivod_sp(z,l);
end;
7:writeln('удаление записей');
8:halt;
end;
write('для выхода нажмите <Enter>');
readln;
goto menu;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 8.05.2024 0:49
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name