Форум программистов, компьютерный форум CyberForum.ru

ООП - C++

Восстановить пароль Регистрация
 
Igor Palienko
0 / 0 / 0
Регистрация: 21.09.2010
Сообщений: 22
24.03.2011, 22:23     ООП #1
помогите пожалуйста лабу сделать. не понимаю чет как ее делать((( я 7 вариант
C++ лаб 10.rar
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2011, 22:23     ООП
Посмотрите здесь:

C++ ООП
ООП C++
C++ ООП C++
C++ ООП
C++ по ООП .
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
djess92
0 / 0 / 0
Регистрация: 31.05.2010
Сообщений: 37
24.03.2011, 22:29     ООП #2
Цитата Сообщение от Igor Palienko Посмотреть сообщение
помогите пожалуйста лабу сделать. не понимаю чет как ее делать((( я 7 вариант
Вложение 68888
что ты именно не понимаешь?)
Igor Palienko
0 / 0 / 0
Регистрация: 21.09.2010
Сообщений: 22
24.03.2011, 22:32  [ТС]     ООП #3
да считай что все((
с чего начать даже не знаю.
djess92 а ты сможешь сделать???
djess92
0 / 0 / 0
Регистрация: 31.05.2010
Сообщений: 37
24.03.2011, 22:42     ООП #4
не..времени нету..
lemegeton
 Аватар для lemegeton
2909 / 1338 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
24.03.2011, 22:49     ООП #5
На кой пёс эта методичка в доке в архиве? Как смерть кащеева сокрыта. Что тебе надо сделать-то?
Igor Palienko
0 / 0 / 0
Регистрация: 21.09.2010
Сообщений: 22
24.03.2011, 22:59  [ТС]     ООП #6
там индивидуальное задание есть 7 вариант и примерно по этой методички надо сделать эту лабу

Добавлено через 20 секунд
lemegeton сможешь??
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
24.03.2011, 23:05     ООП #7
Igor Palienko, вам пытаются втолковать, что знающим людям на кол не сдалась методичка, чтобы выполнить студенческую лабу. А ещё о том, что задания надо выкладывать на форум текстом, а не ссылкой на архив с вордовским файлом. Будете дальше тупить - лабу не сдадите никогда.
Igor Palienko
0 / 0 / 0
Регистрация: 21.09.2010
Сообщений: 22
24.03.2011, 23:38  [ТС]     ООП #8
7. Напишите программу калькулятор, который позволяет производить действия с дробями. Пользователь вначале вводит: числить первой дроби и затем знаменатель первой дроби, потом знак действия и числить второй дроби и затем знаменатель второй дроби. В конструкторе класса должно происходить инициализация переменных, а вычисление значений, а также вывод результата в соответствующих методах класса.


Это задание помогите сделать

Добавлено через 21 минуту
??????
lemegeton
 Аватар для lemegeton
2909 / 1338 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
24.03.2011, 23:52     ООП #9
Вот в этой теме Mr.X выкладывал весьма годный класс для работы с дробями. Строк, эдак, на триста. Останется только по примеру (там же) ввод, действие и вывод.
slice
32 / 75 / 4
Регистрация: 04.11.2010
Сообщений: 249
24.03.2011, 23:57     ООП #10
Представляю, как препод обалдеет от этого кода.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.03.2011, 00:52     ООП
Еще ссылки по теме:

ооп C++
C++ ООП
ООП C++

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

Или воспользуйтесь поиском по форуму:
lemegeton
 Аватар для lemegeton
2909 / 1338 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
25.03.2011, 00:52     ООП #11
Вариант попроще.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#ifndef _COMMON_LIBRARY_FRACTION_H_
#define _COMMON_LIBRARY_FRACTION_H_
 
#include <iostream>
 
template <typename IntegerType_ = int,
          typename RealType_ = float,
          IntegerType_ NUMERATOR_DEFAULT_VALUE_ = 0,
          IntegerType_ DENOMINATOR_DEFAULT_VALUE_ = 1>
class Fraction {
 public:
  typedef IntegerType_ IntegerType;
  typedef RealType_ Real;
  static const IntegerType NUMERATOR_DEFAULT_VALUE
                         = NUMERATOR_DEFAULT_VALUE_;
  static const IntegerType DENOMINATOR_DEFAULT_VALUE 
                         = DENOMINATOR_DEFAULT_VALUE_;
  Fraction()
    : numerator_(NUMERATOR_DEFAULT_VALUE),
      denominator_(DENOMINATOR_DEFAULT_VALUE) {
    Reduce();
  }
  Fraction(IntegerType numerator, IntegerType denominator)
    : numerator_(numerator), denominator_(denominator) {
    Reduce();
  }
  explicit Fraction(IntegerType value)
    : numerator_(value), denominator_(1) {
    Reduce();
  }
  IntegerType Numerator() const { return numerator_; }
  IntegerType Denominator() const { return denominator_; }
  void Numerator(IntegerType value) { numerator_ = value; }
  void Denominator(IntegerType value) { denominator_ = value; }
  Fraction operator+(const Fraction &other) {
    return Fraction(Numerator() * other.Denominator() +
                    Denominator() * other.Numerator(),
                    Denominator() * other.Denominator());
  }
  Fraction operator-(const Fraction &other) {
    return Fraction(Numerator() * other.Denominator() -
                    Denominator() * other.Numerator(),
                    Denominator() * other.Denominator());
  }
  Fraction operator*(const Fraction &other) {
    return Fraction(Numerator() * other.Numerator(),
                    Denominator() * other.Denominator());
  }
  Fraction operator/(const Fraction &other) {
    return Fraction(Numerator() * other.Denominator(),
                    Denominator() * other.Numerator());
  }
  int Compare(const Fraction &other) {
    return Numerator() * other.Denominator() -
           Denominator() * other.Numerator();
  }
  bool operator<(const Fraction &other) {
    return Compare(other) < 0;
  }
  bool operator<=(const Fraction &other) {
    return Compare(other) <= 0;
  }
  bool operator>(const Fraction &other) {
    return Compare(other) > 0;
  }
  bool operator>=(const Fraction &other) {
    return Compare(other) >= 0;
  }
  bool operator==(const Fraction &other) {
    return Compare(other) == 0;
  }
  void  Reduce() {
    if(!denominator_) return;
    IntegerType gcd = GCD(numerator_, denominator_);
    numerator_    /= gcd;
    denominator_  /= gcd;
    if(denominator_ < 0) {
      numerator_ *= -1;
      denominator_ *= -1;
    }
  }
  static IntegerType GCD(IntegerType a, IntegerType b) {
    struct UniversalAbs {
      IntegerType operator()(IntegerType value) {
        return (value > 0)?value:-value;
      }
    } universal_abs;
    return (b)?GCD(universal_abs(b), universal_abs(a) % universal_abs(b))
              :universal_abs(a);
  }
 private:
  IntegerType numerator_;
  IntegerType denominator_;
};
 
#endif
Yandex
Объявления
25.03.2011, 00:52     ООП
Ответ Создать тему
Опции темы

Текущее время: 08:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru