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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.10.2010, 17:17   #1
emnm
Пользователь
 
Регистрация: 25.06.2010
Сообщений: 12
По умолчанию Задача по классам

Помогите пожалуйста, вот условие задачи:

Найти площадь объекта Tri класа Triangle(треугольника). Закрытыми данными-членами являются длины двух его сторон и величина угла между этими сторонами, а открытыми являются члены-функции инициализации, вывод данными-членов на экран, нахождение площади обекта Tri класа Triangle.
emnm вне форума Ответить с цитированием
Старый 18.10.2010, 17:31   #2
Radical_Edward
Пользователь
 
Аватар для Radical_Edward
 
Регистрация: 05.08.2010
Сообщений: 33
По умолчанию

Код:
#include <iostream>
#include <math.h>

class threeangle
{
private:
   float _a;
   float _b;
   float _angle;
public:
threeangle(float a,float b,float angle){_a=a;_b=b;_angle=angle;}
void output(){cout>>"a="<<_a<<"b="<<_b<<"angle="<<_angle;}
float square(){return (_a*_b*sin(_angle)*0.5);}

};
void main()
{
threeangle Tre = new threeangle(5,6,90); //угол не помню в чем задавать. возможно в радианах
cout<<"square of Tre is "<<Tre.square()<<endl;
}
Где - то так. Мог ошибиться, так как давно не писал на С++

Последний раз редактировалось Radical_Edward; 18.10.2010 в 17:35.
Radical_Edward вне форума Ответить с цитированием
Старый 18.10.2010, 17:32   #3
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

в чем проблема? чем помочь?
p51x вне форума Ответить с цитированием
Старый 18.10.2010, 18:47   #4
emnm
Пользователь
 
Регистрация: 25.06.2010
Сообщений: 12
По умолчанию

Radical_Edward Спасибо большое за Код, очень благодарен.


p51x Помочь собственно в коде, так как я практически не знаю как данную задачу написать )
emnm вне форума Ответить с цитированием
Старый 18.10.2010, 20:21   #5
emnm
Пользователь
 
Регистрация: 25.06.2010
Сообщений: 12
По умолчанию

threeangle Tre = new threeangle(5,6,90); //угол не помню в чем задавать. возможно в радианах

Ругается на эту строку.

error C2440: 'initializing' : cannot convert from 'class threeangle *' to 'class threeangle'
emnm вне форума Ответить с цитированием
Старый 18.10.2010, 20:48   #6
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Учите матчасть и не гоняйтесь за халявой!
Звездочку там надо поставить, а где - ищите сами.

P.S. Кстати, насколько я понимаю, функция инициализации - это не конструктор, а обычная функция (т.е. должно делаться не по умному, а как скажут). Переделку лично я оставлю ТС в качестве несложного домашнего упражнения
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же

Последний раз редактировалось Гром; 18.10.2010 в 20:51.
Гром вне форума Ответить с цитированием
Старый 18.10.2010, 21:16   #7
emnm
Пользователь
 
Регистрация: 25.06.2010
Сообщений: 12
По умолчанию

Где бы не ставил звёздочку, все равно не хочет работать.
emnm вне форума Ответить с цитированием
Старый 18.10.2010, 21:36   #8
Syuf
Форумчанин
 
Аватар для Syuf
 
Регистрация: 02.02.2010
Сообщений: 599
По умолчанию

Код:
threeangle *Tre = new threeangle(5,6,90);
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
Syuf вне форума Ответить с цитированием
Старый 19.10.2010, 23:14   #9
emnm
Пользователь
 
Регистрация: 25.06.2010
Сообщений: 12
По умолчанию

Вот отлаженный код

Цитата:
#include <iostream.h>
#include <math.h>
class Triangle
{
private:
float a;
float b;
float angle;
public:
Triangle(float _a, float _b, float _angle)
{
a = _a; b = _b; angle = _angle;
}
float square()
{
return (a*b*sin(angle)*0.5);
}
void output()
{
cout << "\na =" << a << " b = " << b << " angle = " << angle;
}
};
void main()
{
Triangle tre(5.0,6.0,90);
cout << tre.square();
tre.output();
}
emnm вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача по классам Эльдар 18 Общие вопросы C/C++ 3 24.09.2010 00:38
Вопрос по классам делфи и их использованию. Solrainer7 Общие вопросы Delphi 6 12.07.2010 19:16
Лаба по классам m9yt Общие вопросы C/C++ 3 28.02.2010 00:36
Вопросы по классам JOFRIF Общие вопросы C/C++ 19 23.08.2009 05:43