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

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

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

> Помогите исправить программку
stager
сообщение 9.01.2007 0:15
Сообщение #1





Группа: Пользователи
Сообщений: 5
Пол: Мужской
Реальное имя: Кирик

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


Програма нахождения максимальной площади по заданым точкам
program dom2;
var
m,i,j,k,l,q,w,e,r,p:integer;
x,y:array[1..100] of real;
o:array[1..2,1..4] of real;
s,s1,a,b,c,d,f,g,h:real;
pri,prim:boolean;
x1,x2,x3,x4,y1,y2,y3,y4:real;
begin
writeln('nahogdenie iz tochek, chtobi ploshadb paralelogram');
writeln('s vershinami v etih tochkah bil MAX');
repeat
writeln('vvedite kolichestvo tochek');
read(m);
if (m<4) or (m>100) then
writeln('nevernoe chislo');
until (m>=4) and (m<=100);
i:=0;
repeat
i:=i+1;
p:=0;
writeln('Vvedite to4ki',I,'tochka');
readln(x[i],y[i]);
if i>1 then
begin
j:=0;
repeat
j:=j+1;
if (x[i]=x[j]) and (y[i]=y[j]) then
begin
writeln ('takaia tochka est');
p:=1;
end;
until (p=1) or (j=i-1);
end;
i:=i-p;
until i=m;
p:=0;
s1:=0;
s:=0;
for i:=1 to m-3 do
for j:= i+1 to m-2 do
for k:=j+1 to m-1 do
for l:= k+1 to m do
if (x[l]-x[i])*(y[j]-y[i])<>(y[l]-y[i])*(x[j]-x[i]) then
begin


pri:=true;


a:=sqrt(sqr(x[i]-x[j])+sqr(y[i]-y[j]));
b:=sqrt(sqr(x[j]-x[k])+sqr(y[j]-y[k]));
c:=sqrt(sqr(x[k]-x[l])+sqr(y[k]-y[l]));
d:=sqrt(sqr(x[l]-x[i])+sqr(y[l]-y[i]));
f:=sqrt(sqr(x[i]-x[k])+sqr(y[i]-y[k]));
g:=sqrt(sqr(x[j]-x[l])+sqr(y[j]-y[l]));
h:=sqrt(sqr(y[j]-y[i]));
if (a=c) and (b=d) then
begin
prim:=true;
s1:=a*h;
if s1>s then
begin
s:=s1;
q:=i;
w:=j;
e:=k;
r:=l;
end;
end;
end;
x1:=x[q];
x2:=x[w];
x3:=x[e];
x4:=x[r];
y1:=y[q];
y2:=y[w];
y3:=y[e];
y4:=y[r];



if (pri) and (prim) then
begin
Writeln('Parallelogramm imeet MAX S');

writeln('T',Q,',',X[Q]:4:1,y[q]:4:1);
writeln('T',W,',',X[W]:4:1,y[W]:4:1);
writeln('T',E,',',X[E]:4:1,y[E]:4:1);
writeln('T',R,',',X[R]:4:1,y[R]:4:1);
end;
if (pri=false) and (prim=false) then
writeln('paralelogramma net');
end.


М
С тегами лучше выглядит, правда?
volvo

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Bokul
сообщение 9.01.2007 1:22
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 117
Пол: Мужской
Реальное имя: Богдан

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


А какая ошибка? У меня компилируется.
Цитата
Вещественные числа нельзя сравнивать через = и <>.

blink.gif Честно?


--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Malice
сообщение 9.01.2007 12:17
Сообщение #3


Профи
****

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

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


Цитата(Bokul @ 9.01.2007 1:22) *

blink.gif Честно?

yes2.gif
var x:real;
begin
x:=0.1;
if x=0.1 then writeln ('Bokul rulez!') else
writeln ('Malice rulez!');
end.

Вот хороший пример, показательный. У hiv посложнее.. У меня, правда, чуть другой аспект затрагивается, но суть таже.

Сообщение отредактировано: Malice - 9.01.2007 12:19
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
stager   Помогите исправить программку   9.01.2007 0:15
Malice   [code=pas]if (x[l]-x[i])*(y[j]-y[i])<>(y[l]...   9.01.2007 1:15
Bokul   А какая ошибка? У меня компилируется. :blink: Ч...   9.01.2007 1:22
hiv   :blink: Честно? Как ты думаешь, что выдаст эта пр...   9.01.2007 12:03
Malice   :blink: Честно? :yes2: var x:real; begin x:=0...   9.01.2007 12:17
volvo   У меня, правда, чуть другой аспект затрагивается П...   10.01.2007 1:37
stager   не понял что такое e, я так понял берём разность...   9.01.2007 17:38
Malice   не понял что такое e :wacko: е- в смысле точност...   9.01.2007 17:54
stager   Всем большое спасибо теперь всё работает! :goo...   9.01.2007 20:07
Bokul   RE: Помогите исправить программку   10.01.2007 1:12
volvo   Bokul, раздел не про 32-битные компиляторы... В FP...   10.01.2007 1:17
Bokul   Почему тогда программа Malice-а дала неверный резу...   10.01.2007 1:32
Malice   Почему тогда программа Malice-а дала неверный рез...   10.01.2007 12:01
мисс_граффити   чтобы не обидно было: ...никак не пытаюсь отри...   10.01.2007 14:48
volvo   Юля, скрин настроек компилятора заодно - в студию....   10.01.2007 17:54
мисс_граффити   :) ну, как бы то ни было, это оффтоп. было так: ...   10.01.2007 18:06
Malice   Это нормально, у тебя же не 0.1 :) Скажем так, пог...   10.01.2007 18:55
мисс_граффити   я же не спорю :) понятно, что от числа зависит (0....   10.01.2007 19:11


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

 



- Текстовая версия 20.06.2024 17:01
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"