![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 24.10.2013
Сообщений: 241
|
![]()
Здравствуйте!Помогите пожалуйста с программой.
Задание: Определить периметры треугольников, заданных координатами их вершин XA(5), XB(5), XC(5),(координаты в массиве) YA(5), YB(5), YC(5) Длину стороны треугольников вычислять в подпрограмме Немного написал код,но не знаю правилен ли он(компилятор выдает ошибку): Код:
Последний раз редактировалось Stilet; 09.12.2013 в 12:46. |
![]() |
![]() |
#2 | ||
Пользователь
Регистрация: 26.03.2013
Сообщений: 25
|
![]()
У тебя функция объявлена как:
Цитата:
Цитата:
|
||
![]() |
![]() |
#3 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]()
А что должно произойти после
Код:
В Си нет процедур, только функции. Подпрограмма - имелось ввиду наверное вычисление одной стороны. И a,b,c - лучше double. По теореме Пифагора редко так повезет, что будет целое расстояние между точками. |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 24.10.2013
Сообщений: 241
|
![]()
А толку мне вычислять в подпрограмме только одну сторону,если мне нужно 3-и чтобы найти периметр!Спасибо!
Код:
Последний раз редактировалось Stilet; 09.12.2013 в 12:49. |
![]() |
![]() |
#5 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]()
Повторяю вопрос: что ожидаешь от вызова treyg(a,b,z); ?
То, что в a,b,z будут длины сторон ? Не дождешься. Останется то же, что было до вызова. См. " Передача параметров по значению" |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 26.03.2013
Сообщений: 25
|
![]()
Ошибку выбивает по тому, что xa, ya, xb, yb, xc, yc объявлены локально в функции main и по этому функция treyg о них ничего не знает. Переменная i, используемая для индексации, из той же оперы
И вообще, функция, которая вычисляет расстояние между двумя точками выглядит так: Код:
Последний раз редактировалось Stilet; 09.12.2013 в 12:54. |
![]() |
![]() |
#7 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]()
Используйте функцию как функцию. Вот эту
Код:
Код:
PS Исправил: double p - надо в начале объявить. От греха подальше.. Последний раз редактировалось type_Oleg; 09.12.2013 в 01:27. |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 24.10.2013
Сообщений: 241
|
![]()
а 2 другие стороны мне находить аналогично ?!
sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)); Вот так: Код:
Код:
Последний раз редактировалось Stilet; 09.12.2013 в 12:57. |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 24.10.2013
Сообщений: 241
|
![]()
Ну не могу понять,что делаю не так!
|
![]() |
![]() |
#10 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]()
У вас же сказано "Определить периметры треугольников" И все !
То есть сумму длин сторон. Одна строка Код:
Остальное у вас - зачем нужно? Мне кажется, вы совершенно не понимаете, что такое функция. |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите разобраться с программой С++ Builder | spectrum988 | C++ Builder | 10 | 25.10.2013 01:15 |
Управление STM8S-Discovery программой на C++ Builder | ShevlyakoV | Общие вопросы C/C++ | 3 | 10.12.2012 19:26 |
Процесс после завершения работы с программой остается в диспетчере зедач с++ builder | romec1 | Помощь студентам | 0 | 09.06.2010 14:07 |
Помогите с программой Borland C++ Builder 6.0 | Vikelf | Помощь студентам | 1 | 15.05.2009 15:09 |