PDA

Zobacz pełną wersję : proble z programem w turbo pascalu



Torre234
14-01-08, 14:53
Mam napisany program, który obrazuje w sposób graficzny na wykresie(słupki 3d) różnice w sprzedaży dwóch produktów. Użytkownik podaje nazwy tych produktów oraz wielkość sprzedaży, która przedstawiana jest za pomocą wykresów słupkowych 3d
chodzi o to żeby przerobić go tak żeby zmniejszyła się skala słupków bo po podaniu wartości powyżej 420 słupki wystają mi poza okno.
Drugi problem to to, że nie wiem co dopisać żeby pod każdym słupkiem wyświetlana była nazwa produktu określonego przez użytkownika

program kolo;

uses
graph, crt;

const
max=2;

var
nazwa1,nazwa2 :string;
sterownik,tryb :integer;
x,y,x1,x2,y1,y2 :integer;
w1,w2 :integer;



begin
ClrScr;
begin
Write('Podaj nazwe pierwszego produktu : ');
readln(nazwa1);
Write('Podaj wielkosc sprzedazy tego produktu : ');
Readln(w1);
Write('Podaj nazwe drugiego produktu : ');
read(nazwa2);
Write('Podaj wielkosc sprzedazy tego produktu : ');
Readln(w2);

end;

{----------inicjalizacja graph----------}
DetectGraph(sterownik,tryb);
InitGraph(sterownik,tryb,'c:\tp\bgi');

SetBkColor(white);
SetColor(brown);

{----------Osie wspolrzednych----------}
SetTextStyle(11,0,2);
SetLineStyle(0,2,3);
Line(120,430,480,430); {os X}
Line(120,430,120,170); {os Y}
line(110,390,130,390); {100}
outtextxy(80,385,'100');
line(110,350,130,350); {200}
outtextxy(80,345,'200');
line(110,310,130,310); {300}
outtextxy(80,305,'300');
line(110,270,130,270); {400}
outtextxy(80,265,'400');
line(110,230,130,230); {500}
outtextxy(80,225,'500');
line(110,190,130,190); {600}
outtextxy(80,185,'600');

{----------slupki bar3d----------}
SetLineStyle(0,2,2);

{-------wpolrzedne slupkow-------}
x1:=160;
y1:=430;
x2:=190;
y2:=430;

begin
{----------slupki 3d----------}
SetFillStyle(1,2);
Bar3d(x1,y1,x2,y2-w1,10,TopOn);
Bar3d(x1+50,y1,x2+50,y2-w2,10,Topon);
end;

readkey;
CloseGraph;
end.