Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.06.2011, 11:58   #1
Kat.
Пользователь
 
Регистрация: 29.06.2011
Сообщений: 12
По умолчанию Как правильно вбить в делфи выражение?

Как правильно вбить в делфи выражение?
xc3:=(sqrt(sqr(x3)+ sqr(y3))-1)*cos(arctаg((acy-y3)/(acx-x3))) ;
у меня пишет ошибку в этой строке...(переменные все описаны)
Kat. вне форума Ответить с цитированием
Старый 29.06.2011, 12:32   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...прикупил по случаю агрегат для телепатического наблюдения


...не-а, все равно плохо видно ...весь код в студию или код ошибки, скорее с типом данных наворотили
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 29.06.2011, 12:37   #3
Kat.
Пользователь
 
Регистрация: 29.06.2011
Сообщений: 12
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);

    var x1,x2,x3,y1,y2,y3,acx,bcx,ccx,acy,bcy,ccy,xc3,yc3,xc2,yc2,xc1,yc1:integer;
begin
x1:=StrToInt(Edit1.Text);
y1:=StrToInt(Edit2.Text);
x2:=StrToInt(Edit3.Text);
y2:=StrToInt(Edit4.Text);
x3:=StrToInt(Edit5.Text);
y3:=StrToInt(Edit6.Text);
acx:=((x1+x2) div 2);
 acy:=((y1+y2) div 2);
bcx:=((x3+x2) div 2); bcy:=((y3+y2) div 2);
ccx:=((x1+x3) div 2); ccy:=((y1+y3) div 2);
xc3:=(sqrt(sqr(x3)+ sqr(y3))-1)*cos(arctan((acy-y3)/(acx-x3))) ;
Label4.Caption:=IntToStr(xc3);
end;

end.

Последний раз редактировалось Serge_Bliznykov; 29.06.2011 в 13:06.
Kat. вне форума Ответить с цитированием
Старый 29.06.2011, 12:41   #4
Kat.
Пользователь
 
Регистрация: 29.06.2011
Сообщений: 12
По умолчанию

ошибка в строке с вычисление xc3
если разбивать это выражение на отдельные части...то получается, что немогу получить квадратный корень, арктангенс и косинус
Kat. вне форума Ответить с цитированием
Старый 29.06.2011, 12:51   #5
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

Библиотеки (в частности Math) подключены?
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062
Mandrivnyk вне форума Ответить с цитированием
Старый 29.06.2011, 13:01   #6
execom
Редкий тунеядец
Форумчанин
 
Аватар для execom
 
Регистрация: 29.10.2006
Сообщений: 595
По умолчанию

Может тебе поробывать использовать тип double ответ то полюбому будет дробный)))) ну и соответственно вместо div - /
execom вне форума Ответить с цитированием
Старый 29.06.2011, 13:12   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Kat.
А Вы слышали, бывают целые числа и вещественные? Знаете, чем они отличаются?
А как Вы думаете функции деления, вычисления корня, косинуса и т.п. какое значение возвращают?! Подсказываю - ВЕЩЕСТВЕННОЕ (это которое имеет дробную часть...)

пробуйте так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  x1, x2, x3, y1, y2, y3, acx, bcx, ccx, acy, bcy, ccy, yc3, xc2, yc2, xc1, yc1: integer;
  xc3: extended; // (или можно взять тип double или даже real )
begin
..............
  bcx:=((x3+x2) div 2); bcy:=((y3+y2) div 2);
  ccx:=((x1+x3) div 2); ccy:=((y1+y3) div 2);

  try
    xc3 := (sqrt(sqr(x3) + sqr(y3)) - 1) * cos(arctan((acy - y3) / (acx - x3)));
    Label4.Caption := FloatToStr(xc3);
  except
    Label4.Caption := 'невозможно вычислить - ошибки в задании исх.данных!'
  end;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 29.06.2011, 13:22   #8
Kat.
Пользователь
 
Регистрация: 29.06.2011
Сообщений: 12
По умолчанию

Ребята, спасибо огромное!!!!!!!!!!
Kat. вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не правильно составлена цикл? делфи lisa007x Помощь студентам 4 06.10.2010 18:04
как записать в паскале выражение 92DMITRY Помощь студентам 3 21.06.2010 22:46
В делфи перевести выражение в постфиксное форму и заменить константы и индефикаторы буквами Toni Milano Помощь студентам 9 06.12.2009 15:08
правильно составить регулярное выражение. мимо Общие вопросы Delphi 0 04.07.2009 10:15
помогите правильно установить Делфи 7 nadija Софт 3 06.12.2008 15:20