Показать сообщение отдельно
Старый 07.06.2011, 00:57   #1 (permalink)
bastilio
Member
 
Регистрация: 30.05.2011
Сообщений: 17
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помогите разобраться с ошибками, пожалуйста

вот код программы.

program a1;
uses graph, crt;
const n=9;
var Q:array[1..n] of real;
H:array[1..n] of real;
Hp:array[1..n] of real;
dH:array[1..n] of real;
x:array[1..n] of real;
y:array[1..n] of real;
i,j:integer;
grDriver,grMode:integer;
a,b:real;

procedure sum_count;
var s1,s2,s3,s4: real;
begin
s1:=0;
s2:=0;
s3:=0;
s4:=0;
for i:=1 to n do
begin
s1:=s1+y[i];
s2:=s2+x[i];
s3:=s3+x[i]*y[i];
s4:=s4+sqr(x[i]);
end;
a:=(s1*s2-n*s3)/(sqr(s2)-n*s4);
b:=(s3*s2-s4*s1)/(sqr(s2)-n*s4);
end;

function hr(z:real):real;
var m:real;
begin
m:=a*sqr(z)+b*z;
hr:=m;
end;

BEGIN
clrscr;
writeln('Vvedite znacheniya');
writeln;
for i:=1 to n do
begin
write('Q[',i,']=');
readln(q[i]);
x[i]:=q[i];
end;
writeln;
for i:=1 to n do
begin
write('H[',i,']=');
readln(h[i]);
y[i]:=h[i]/q[i];
end;
sum_count;
for i:=1 to n do
begin
Hp[i]:=hr(q[i]);
dH[i]:=abs(Hp[i]-h[i])/abs(h[i]);
end;

writeln;
textcolor(lightred);
writeln('Rezultati vi4islenii:');
writeln;
textcolor(white);
writeln(' a=',a:8:5);
writeln(' b=',b:8:5);
writeln;
writeln(' |------|-----|---------|---------|---------|');
writeln(' | n | Qi | Hi | Hp | dH |');
writeln(' |------|-----|---------|---------|---------|');
for i:=1 to n do
writeln(' |',i:2,' |',q[i]:3:0,' |',h[i]:8:5,' |',Hp[i]:8:5,' |',dH[i]:8:5,' |');
writeln(' |------|-----|---------|---------|---------|');
readln;

GrDriver:=detect;
initgraph(GrDriver,GrMode,'C:\BP\BGI');
cleardevice;
setcolor(white);
outtextXY(10,10,'Zavisimost_H_ot_Q');
outtextXY(15,50,'H');
outtextXY(205,205,'Q');
{ Dlya naglyadnosti masshtab raven 2:1 }
setcolor(blue);
line(10,50,10,200);
line(10,200,200,200);
for i:=1 to n do
putpixel(trunc(q[i])*2+10,200-trunc(h[i])*2,yellow);
setcolor(white);
outtextXY(300,10,'Zavisimost_Hp_ot_Q');
outtextXY(305,50,'Hp');
outtextXY(505,205,'Q');
setcolor(blue);
line(300,50,300,200);
line(300,200,500,200);
for i:=1 to n do
putpixel(300+trunc(q[i])*2,200-trunc(Hp[i])*2,yellow);
readln;
closegraph;

END.


помогите с алгоритмами пожалуйста.
Написать:
Алгоритм решения задачи (слова и блок-схема)
Алгоритмы процедур( слова-назначений,формальные параметры,как пользоваться,блок-схема)
Изображения
  
bastilio вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070