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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2014, 20:13   #1
Praud
Форумчанин
 
Аватар для Praud
 
Регистрация: 11.10.2012
Сообщений: 409
По умолчанию класс дробь

с++.

Описываю класс дробь.
Пишу метод "дробь меньше?"
Код:
bool is_less(Fraction a)
{

}
при
Код:
Fraction t;
Fraction s;
if(t.is_less(s))
возвращает true или false.

Туплю, но как работать с текущим объектом(в данном случае t не передавая его через аргумент)
Praud вне форума Ответить с цитированием
Старый 17.02.2014, 20:23   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,431
По умолчанию

http://habrahabr.ru/post/132014/
На примере оператора сравнения сделайте
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 17.02.2014, 20:46   #3
Praud
Форумчанин
 
Аватар для Praud
 
Регистрация: 11.10.2012
Сообщений: 409
По умолчанию

Вы меня не поняли, мне не надо перегружать оператор.

Код:
bool is_less(Fraction a)
{
   if(...< a)
         return true;
}
Что вместо троеточия? Как обращаться к текущему объекту
Praud вне форума Ответить с цитированием
Старый 17.02.2014, 20:54   #4
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Цитата:
Что вместо троеточия? Как обращаться к текущему объекту
this? - но вместо троеточия не сойдет. Что-то в вашем коде не так.
rrrFer вне форума Ответить с цитированием
Старый 17.02.2014, 20:54   #5
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,431
По умолчанию

Код:
bool is_less(Fraction a)
{
    return (this->m < a.m);
}
Чтобы сравнить поля m.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 17.02.2014, 20:59   #6
Praud
Форумчанин
 
Аватар для Praud
 
Регистрация: 11.10.2012
Сообщений: 409
По умолчанию

Такая запись правильная?
Код:
return ((this->numerator / this->denomerator) < (a.numerator / a.denomerator));
только меня смущает, что типы то интовые.

Последний раз редактировалось Praud; 17.02.2014 в 21:01.
Praud вне форума Ответить с цитированием
Старый 17.02.2014, 21:03   #7
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,431
По умолчанию

Может быть так?
Код:
return (this->numerator * a.denomerator < a.numerator * this->denomerator);
Или
Код:
return (1.0f * this->numerator / this->denomerator < 1.0f * a.numerator / a.denomerator);
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 17.02.2014, 21:08   #8
Praud
Форумчанин
 
Аватар для Praud
 
Регистрация: 11.10.2012
Сообщений: 409
По умолчанию

1.0f это такое преобразование типа?
Praud вне форума Ответить с цитированием
Старый 17.02.2014, 21:16   #9
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,431
По умолчанию

Цитата:
Сообщение от Praud Посмотреть сообщение
1.0f это такое преобразование типа?
Типо того, так как 1.0f вещественное, то все выражение считается как вещественное.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 17.02.2014, 21:41   #10
Praud
Форумчанин
 
Аватар для Praud
 
Регистрация: 11.10.2012
Сообщений: 409
По умолчанию

спасибо, разобрался
Praud вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Класс дробь состоит из 2 целых полей P91 Помощь студентам 4 23.03.2013 14:37
рациональную дробь перевести в цепную дробь. на Паскале. (проверьте программку, где то ошибка:( ) masal86 Помощь студентам 1 20.02.2013 12:42
Описать класс «Обыкновенная дробь» SkyNexx Помощь студентам 6 22.01.2013 12:10
Несократимая дробь strateg66 Помощь студентам 1 20.12.2009 15:34