Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
6 / 6 / 7
Регистрация: 16.05.2013
Сообщений: 351
1

Даны гипотенуза и катет треугольника. Найти второй катет и радиусы описанной и вписанной окружностей

12.09.2014, 17:40. Показов 3177. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Даны гипотенуза и катет прямоугольного треугольника. Найти второй катет и радиусы описанной и вписанной окружностей R и r. При вычислении использовать формулы: (даны отдельно, есть в коде) , где a, b, c – стороны треугольника, S – площадь.

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
procedure TForm1.Button1Click(Sender: TObject);
var
a, b, S, c, r, Rad:integer;
// a - гипотенуза
// b - первый катет
// с - второй катет
// r - радиус вписанной окружности
// Rad - радиус описанной окружности
// S - площадь
begin
a:= Edit2.Text;
b:= Edit1.Text;
c:= sqrt(a*a-b*b);
S:= (1/2) * b * c;
r:= (2*S)/(a+b+c);
Rad:= (a*b*c)/(4*S);
label7.Caption:= Rad;
label8.Caption:= r;
label10.Caption:= c;
end;
Походу ошибка в типе данных, но не могу никак исправить её! Помогите =)
Миниатюры
Даны гипотенуза и катет треугольника. Найти второй катет и радиусы описанной и вписанной окружностей  
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.09.2014, 17:40
Ответы с готовыми решениями:

Даны гипотенуза и катеты прямоуг. треу-ка. Найти второй катет
Разработать минимум две версии перегруженной функции реализующий следующее варианты дейтсвий для...

Даны гипотенуза и катет прямоугольного треугольника, найти второй катет и радиус описанной окружности
Умоляю, помогите с Basic-ом. даны гипотенуза и катет прямоугольного треугольника найти второй...

Даны гипотенуза и катет прямоугольного треугольника. Найти катет и радиус вписанной окружности
даны гипотенуза и катет прямоугольного треугольника. найти катет и радиус вписанной окружности

Даны гипотенуза и катет прямоугольного треугольника, найти второй катет
Даны гипотенуза и катет прямоугольника треугольника. Найти второй катет.(Си++)

4
Native x86
Эксперт Hardware
5524 / 3279 / 938
Регистрация: 13.02.2013
Сообщений: 10,442
12.09.2014, 17:45 2
Лучший ответ Сообщение было отмечено SnapeEye как решение

Решение

Цитата Сообщение от SnapeEye Посмотреть сообщение
Походу ошибка в типе данных
Integer -- это только целые числа. Математические функции и оператор деления возвращают вещественные числа, поэтому заменяйте Integer на Double.

А Edit2.Text -- это строка, ее нельзя присваивать числу, нужно преобразовать в Double при помощи StrToFloat.

И с присвоением label10.Caption:= c аналогично, нельзя число присваивать строке, нужно преобразование при помощи FloatToStr.
1
6 / 6 / 7
Регистрация: 16.05.2013
Сообщений: 351
12.09.2014, 17:56  [ТС] 3
Цитата Сообщение от quwy Посмотреть сообщение
Integer -- это только целые числа. Математические функции и оператор деления возвращают вещественные числа, поэтому заменяйте Integer на Double.
А Edit2.Text -- это строка, ее нельзя присваивать числу, нужно преобразовать в Double при помощи StrToFloat.
И с присвоением label10.Caption:= c аналогично, нельзя число присваивать строке, нужно преобразование при помощи FloatToStr.
Я попытался исправить, но опять не выходит, вот новый код:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
procedure TForm1.Button1Click(Sender: TObject);
var
a, b, S, c, r, Rad:integer;
// a - гипотенуза
// b - первый катет
// с - второй катет
// r - радиус вписанной окружности
// Rad - радиус описанной окружности
// S - площадь
begin
a:= StrToFloat(Edit2.Text);
b:= StrToFloat(Edit1.Text);
c:= sqrt(a*a-b*b);
S:= (1/2) * b * c;
r:= (2*S)/(a+b+c);
Rad:= (a*b*c)/(4*S);
label7.Caption:= Rad;
label8.Caption:= r;
label10.Caption:= FloatToStr(c);
 
end;
 
end.
0
Native x86
Эксперт Hardware
5524 / 3279 / 938
Регистрация: 13.02.2013
Сообщений: 10,442
12.09.2014, 18:04 4
Цитата Сообщение от SnapeEye Посмотреть сообщение
Я попытался исправить, но опять не выходит, вот новый код:
Во-первых вы не прислушались к самому первому моему замечанию, а во-вторых вы почему-то решили, что переменные Rad и r чем-то отличаются от переменной c и их преобразовывать не нужно.
1
6 / 6 / 7
Регистрация: 16.05.2013
Сообщений: 351
12.09.2014, 18:10  [ТС] 5
Цитата Сообщение от quwy Посмотреть сообщение
Во-первых вы не прислушались к самому первому моему замечанию, а во-вторых вы почему-то решили, что переменные Rad и r чем-то отличаются от переменной c и их преобразовывать не нужно.
Осознал свою глупость =) Теперь всё работает, как по часам =)

Вот окончательный вариант:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
procedure TForm1.Button1Click(Sender: TObject);
var
a, b, S, c, r, Rad:double;
// a - гипотенуза
// b - первый катет
// с - второй катет
// r - радиус вписанной окружности
// Rad - радиус описанной окружности
// S - площадь
begin
a:= StrToFloat(Edit2.Text);
b:= StrToFloat(Edit1.Text);
c:= sqrt(a*a-b*b);
S:= (1/2) * b * c;
r:= (2*S)/(a+b+c);
Rad:= (a*b*c)/(4*S);
label7.Caption:= FloatToStr(Rad);
label8.Caption:= FloatToStr(r);
label10.Caption:= FloatToStr(c);
 
end;
 
end.
0
12.09.2014, 18:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.09.2014, 18:10
Помогаю со студенческими работами здесь

Даны гипотенуза и катет прямоугольного треугольника. Найти второй катет и площадь треугольника
Даны гипотенуза и катет прямоугольного треугольника. Найти второй катет и площадь треугольника.

Дана гипотенуза и катет прямоугольного треугольника. Найти второй катет.
Дана гипотенуза и катет прямоугольного треугольника. Найти второй катет.

Найти катет если есть второй катет и угол прямоугольного треугольника
Нужно найти и вывести длину катета если известна длина второго катета и угол прямоугольного...

Дано гипотенузу С и Катет А прямоугольного треугольника. Найти второй катет по формуле
Помогите Дано гипотенузу С и Катет А прямоугольного треугольника. Найти второй катет по формуле.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru