Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] простейшая программка.... помогите пожалуйста

Ответить
Настройки темы
C/C++ - [решено] простейшая программка.... помогите пожалуйста

Аватара для DruOleg

Старожил


Сообщения: 166
Благодарности: 2

Профиль | Отправить PM | Цитировать


Задание первого курса, на паскеле все сам сообразил, а вот на си не как не могу доехать...
Имеется задача:
Найти наибольшее и наименьшее расстояние между вершинами треугольника АВС.
Все в принципе просто - сначала идет запрос значений координат вершин, затем по теореме пифагора находятся расстояния между ними, ну и затем находится максимальное и минимальное значение расстояния между вершинами, с их последующим написанием.
Толковый борланд найти не смог, поэтому прошу знающих людей выложить исходный код данной программы и если можно скомпилированный файл... И очень благодарен буду за небольшие комментарии к операторам и командам...
Всем заранее спасибо

Отправлено: 20:26, 09-07-2008

 

Ветеран


Сообщения: 1404
Благодарности: 135

Профиль | Отправить PM | Цитировать


Скомпилишь сам
Код: Выделить весь код
#include <stdio.h>
#include <math.h>

#define max3(a,b,c)  (  ((a) > (b)) ? ( ((a)>(c)) ? (a) : (c)  ) : (   ((b)>(c)) ? (b) : ( ((b)>(c))? (b):(c)   )   ))
#define min3(a,b,c)  (  ((a) > (b)) ? ( ((b)>(c)) ? (c): (b)  ) : (((a)>(c)) ? (c): (a))  )

void main()
{

int a1,b1,a2,b2,a3,b3;
double r1,r2,r3;
scanf("%d%d%d%d%d%d",&a1,&b1,&a2,&b2,&a3,&b3);
r1=sqrt(pow(a2-a1,2)+pow(b2-b1,2));
r2=sqrt(pow(a2-a3,2)+pow(b2-b3,2));
r3=sqrt(pow(a3-a1,2)+pow(b3-b1,2));

printf("\npoint1: (%d,%d)\npoint2: (%d,%d)\npoint3: (%d,%d)\ndst1: %f\ndst2: %f\ndst3: %f\nMAX: %f\nMIN: %f\n" ,a1,b1,a2,b2,a3,b3,r1,r2,r3,max3 (r1, r2 ,r3 ),min3 (r1, r2 ,r3 ));

}

-------
Ehhh.. what's up, doc?..

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:14, 09-07-2008 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


Вложения
Тип файла: rar Triangle.rar
(34.0 Kb, 10 просмотров)

mrcnn, DruOleg, между
Код: Выделить весь код
r2=sqrt(pow(a2-a3,2)+pow(b2-b3,2));
r3=sqrt(pow(a3-a1,2)+pow(b3-b1,2));

printf("\npoint1: (%d,%d)\npoint2: (%d,%d)\npoint3: (%d,%d)\ndst1: %f\ndst2: %f\ndst3: %f\nMAX: %f\nMIN: %f\n" ,a1,b1,a2,b2,a3,b3,r1,r2,r3,max3 (r1, r2 ,r3 ),min3 (r1, r2 ,r3 ));

scanf ("%d", &exit); // Сюда строку нужно добавить, иначе окно закроется и объявить переменную exit.

}
Код: Выделить весь код
int a1,b1,a2,b2,a3,b3, exit; // здесь объявить переменную exit
Цитата DruOleg:
небольшие комментарии к операторам и командам... »
То просто,
Код: Выделить весь код
#include <stdio.h>
#include <math.h>

#define max3(a,b,c)  (  ((a) > (b)) ? ( ((a)>(c)) ? (a) : (c)  ) : (   ((b)>(c)) ? (b) : ( ((b)>(c))? (b):(c)   )   )) // макрос максимального расстояния между вершинами треугольника
#define min3(a,b,c)  (  ((a) > (b)) ? ( ((b)>(c)) ? (c): (b)  ) : (((a)>(c)) ? (c): (a))  ) // макрос минимального расстояния между вершинами треугольника

void main()
{

int a1, b1, a2, b2, a3, b3, exit; // Объявление пременных для ввода данных
double r1, r2, r3; // объявление переменных для хранения и вывода результата

scanf("%d%d%d%d%d%d",&a1,&b1,&a2,&b2,&a3,&b3); // Считывание значений с клавиатуры в переменные для ввода данных

r1=sqrt(pow(a2-a1,2)+pow(b2-b1,2)); // Расчёт
r2=sqrt(pow(a2-a3,2)+pow(b2-b3,2));  // Расчёт
r3=sqrt(pow(a3-a1,2)+pow(b3-b1,2));  // Расчёт

printf("\npoint1: (%d,%d)\npoint2: (%d,%d)\npoint3: (%d,%d)\ndst1: %f\ndst2: %f\ndst3: %f\nMAX: %f\nMIN: %f\n" ,a1,b1,a2,b2,a3,b3,r1,r2,r3,max3 (r1, r2 ,r3 ),min3 (r1, r2 ,r3 )); // расчёт по условиям макроса и вывод результата на экран

scanf ("%d", &exit); // чтобы не закрылось окно

}
Откомпилированный файл приложил

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:51, 09-07-2008 | #3


Аватара для DruOleg

Старожил


Сообщения: 166
Благодарности: 2

Профиль | Отправить PM | Цитировать


mrcnn, Drongo, спасибо большое! Не знаю прям как отблагодарить
Еще вопрос нескромный, чем файл компилировать лучше, для таких "примитивных" целей... В интернете пока не чего толкового не нашел

Отправлено: 22:03, 09-07-2008 | #4


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


DruOleg,
Цитата DruOleg:
спасибо большое! »
Вообще, отдельное спасибо за решение задачи mrcnn, а откомпилировать это даже труда не составило.
Цитата DruOleg:
чем файл компилировать лучше »
Ну, я сделал это Borland C++ Builder 6.0
Цитата DruOleg:
Толковый борланд »

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 22:12, 09-07-2008 | #5


Ветеран


Сообщения: 3320
Благодарности: 916

Профиль | Отправить PM | Цитировать


Скомпилить можно и с помощью...
Если продукт от Борланд проблематично достать то скомпилить можно и использовав компилятор входящий в Visual Studio 2008 Express Editions.
Кроме того в темах Выбор компилятора и IDE для C++
Помогите выбрать компилятор для С++
Нужен компилятор/IDE С
Какой компилятор C++ под Win лучше?
Вопрос обсуждался так что выбирать есть из чего.
Это сообщение посчитали полезным следующие участники:

Отправлено: 02:21, 12-07-2008 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] простейшая программка.... помогите пожалуйста

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VBA - [решено] Помогите, пожалуйста, отладить макрос St33l Программирование и базы данных 4 20-12-2009 12:41
[решено] Помогите пожалуйста с графиккартой! Сергей.inri Тест-форум 4 04-12-2009 21:09
Прочее - [решено] помогите пожалуйста с проектированием сети network_newbie Сетевое оборудование 4 13-11-2009 18:28
Прочее - [решено] Помогите пожалуйста с роутингом alive_corpse Общий по Linux 3 08-08-2008 13:47
Разное - [решено] Помогите пожалуйста! Ошибка ASMS... Grunger86 Наборы обновлений для Windows XP/2003/Windows 7 44 05-06-2008 21:39




 
Переход