SearchEngines.bg

Това е примерно съобщение за гост. Регистрирайте безплатен акаунт днес, за да станете потребител на SearchEngines.bg! След като влезете, ще можете да участвате в този сайт, като добавите свои собствени теми и публикации, както и да се свържете с други членове чрез вашата лична входяща кутия! Благодарим ви!

Откриите грешките :)

tedi_ii

New member
Здравейте! Опитвам се да напиша една програмка, но нещо не мога да разбера къде греша. Ще съм благодарна ако някой успее да ми помогне. Ето условето на задачата и какво съм написала.

Да се състави програма за построяване графиката на функцията
y=x*x/100 - 2x+100 в интервала [0,190]


Код:
program grafika;
var x1,y1,xd,yd:integer;
begin
 graphmode;
  x1:=0; y1:=100;
   for xd:=1 to 190 do
     begin
       yd:=(xd*xd div 100)-2*xd+100;
       draw(x1,y1,xd,yd,3);
       x1:=xd; y1:=yd;
     end;
end.
:confused:
 
Re: Откриите грешките :)

Код:
program grafika;
var x1,y1,xd,yd:integer;
begin
 graphmode;
  x1:=0; y1:=100;
   for xd:=0 to 190 do
     begin
       yd:=((xd*xd) div 100)-2*xd+100;
       draw(x1,y1,xd,yd,3);
       x1:=xd; y1:=yd;
     end;
end.
Това draw() доколкото си спомням не е точно стандартно в Pascal(каква версия?) иначе двете малки корекции горе може и да са ти от полза.
 
Re: Откриите грешките :)

Ами Турбо Паскал v7. направих някои промени и програмата тръгва, дава ми черен екран и пише BGI Error: Graphics not initialized (use InitGraph)
А в поправката съм го използвала.
 
Последно редактирано:
Re: Откриите грешките :)

Ами Турбо Паскал v7.
Това се нарича пълнолетен софтуер :)

Вероятно имаш проблем с инициализацията на графичния режим и използването му.
Тук споменават подобен проблем:
http://www.programmersheaven.com/mb/pasprog/353536/353543/re-bgi-graphics-not-working-on-my-pc/

Също би трябвало да има BGIDEMO.PAS някъде из на паскала нещата и там може да се види пример как се ползва.

Понеже не съм пипвал точно тази среда от повече от десетилетие не знам за несъвместимости породени от нов хардуер/софтуер. Имаше пач за AMD процесори когато излезе атлон... Може да успееш да заобиколиш тези проблеми с DosBox(емулатор)

Формално графика през BGI интерфейса не съм ползвал сериозно и навремето, защото и тогава имаше по добри варианти, така че повече идеи нямам.
 
Re: Откриите грешките :)

Малко съм позабравил паскала, но не трябва ли някъде да инклуднеш библиотекта за графика. и двете процедури draw(); и graphmode; са от въпросната библиотека.
 
Re: Откриите грешките :)

Малко я преправих, и ми казаха че работи, но при мен не тръгва?! Как да стартирам програмата под дос?

:(
 
Re: Откриите грешките :)

пусни финалния код.

а относно Дос-а зависи от wndows-а ти.
 
Re: Откриите грешките :)

program grafika;
uses graph;
var x1,y1,xd,yd:integer;
driver,mode:integer;
begin
driver:=0;
initgraph(driver,mode,'c:\bp\bgi');
x1:=0; y1:=100;
for xd:=1 to 190 do
begin
yd:=(xd*xd div 100)-2*xd+100;
rectangle(x1,y1,xd,yd);
x1:=xd; y1:=yd;
end;
closegraph;
end.


Казаха ми че това работи но при мен не тръгва, вече се отчаях
 
Re: Откриите грешките :)

procedure InitGraph (var GraphDriver : Integer; var GraphMode : Integer; PathToDriver : String );

сигурна ли си че пътя до драйвера ти е c:\bp\bgi ? Паскала да не е инсталиран някъде на друго място? А събщение за грешка дава ли?
 
Re: Откриите грешките :)

procedure InitGraph (var GraphDriver : Integer; var GraphMode : Integer; PathToDriver : String );

сигурна ли си че пътя до драйвера ти е c:\bp\bgi ? Паскала да не е инсталиран някъде на друго място? А събщение за грешка дава ли?

This sistem does not support full screen mode? Това ми излиза от операционната система. Мисля че паскала ми е скапан, някои може ли да ми предложи такъв на които ще излезе тъпата графика?
 
Re: Откриите грешките :)

кажи какъв ти е windows-a?

и още един въпрос: от паскала ли компилираш или си направила exe файл?
 

Горе