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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
pigah
12 / 12 / 2
Регистрация: 05.07.2009
Сообщений: 147
Записей в блоге: 1
#1

Работа с классами - C++

01.09.2009, 23:05. Просмотров 718. Ответов 6
Метки нет (Все метки)

плиз помогите решить
нужно написать функции которыи будут выполнять сложение, вычитание, умножение и деление допустим d1 и d3
вот то чтоу меня получилось доделать
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
#include "stdafx.h"
#include <iostream>
#include <windows.h>
#include <string.h>
 
using namespace std;
 
 class Drob{
   int ch,zn;
 public:
   int getCh(){
     return ch;
   }
   int getZn(){
     return zn;
   }
   void setZn(int y){
     if(y!=0)zn=y;
   }
   void setCh(int y){
     if(y!=0)ch=y;
   }
   Drob(int c=1,int z=1){
     ch=c;
     if(z!=0)zn=z;
     else zn=1;
   }
   void output(){
     cout<<ch<<"/"<<zn<<"\n";
   }
  /* Drob(int c){
     ch=c;
     zn=1;
   }
   
   */
   Drob(Drob&ob){
     this->ch=ob.ch;
     this->zn=ob.zn;
   }
 };
 
int _tmain(int argc, _TCHAR* argv[]){
  SetConsoleOutputCP(1251);
  SetConsoleCP(1251); 
  Drob d1(5,-2),d2(5),d3;
  d1.output();
  d2.output();
  d3.output();
  Drob d4(d2);
  d4.output();
  return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.09.2009, 23:05     Работа с классами
Посмотрите здесь:

Работа с классами - C++
Помогите плз Определите значение переменных а, х, с после выполнения следующих команд: class First { int value; public: ...

Работа с классами в С++ - C++
Доброго всем дня.У меня возникла проблема с освоением языка C++ , сейчас пишу курсовую на этом языке, и ещё не совсем всё понимаю, но книги...

Работа с классами - C++
Не знаю как правильно задать вопрос, поэтому приведу пример. У меня есть класс матрица как лучше реализовать операцию сложения матриц? Я...

Работа с классами - C++
Имеется заголовочный файл В нем создаю два класса Vector и MyCamera. class Vector { public: float x,y,z; }; ...

работа с классами - C++
прошу помощи с лабой, вообще вкурить немогу что и как делать:\ Комплексное число, задаваемое своей вещественной и мнимой...

Работа с классами - C++
Здравствуйте. Есть код, компиляция происходит нормально, Dev-C++ не выдаёт никаких ошибок. Но когда запускаю программу и начиная там...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
FunDuck
688 / 379 / 4
Регистрация: 22.01.2009
Сообщений: 1,135
01.09.2009, 23:21     Работа с классами #2
Это?:
C++
1
2
3
4
5
6
7
8
9
10
11
12
int multi(){
    return this->ch*this->zn;
}
int add(){
    return this->ch + this->zn;
}
double div(){
    return this->ch + this->zn;
}
int sub(){
    return this->ch - this->zn;
}
#pragma
Временно недоступен
952 / 223 / 6
Регистрация: 12.04.2009
Сообщений: 921
01.09.2009, 23:25     Работа с классами #3
Неплохо сделать проверку на равенство знаменателей,а так вот :
C++
1
2
3
4
5
6
Drob::Drob sum(Drob d1,Drob d2,Drob &result)
{   
   rezult.setZh() = d1.getZh() * d2.getZh();
   rezult.setCh() = d1.getCh + d2.getCh();
   return rezult;
}
Вычитание по аналогии,можно ещё добавить сокращение дроби.
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
01.09.2009, 23:27     Работа с классами #4
Пока вижу только утверждения - вопрос-то в чем состоит ?

if(y!=0)zn=y;
Зачем тут сравнение с 0 ?

if(y!=0)ch=y;
Вот тут точно не нужно
HIMen
4126 / 1375 / 39
Регистрация: 12.04.2009
Сообщений: 2,346
01.09.2009, 23:41     Работа с классами #5
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
#include <iostream>
#include <windows.h>
using namespace std; 
class Drob
{
public:
    Drob()
    {
        ch=0;
        zn=1;
    }
    /*Drob(Drob &obj)
    {
        ch=obj.ch;
        zn=obj.zn;
    }*/
    Drob(int c,int z)
    {
        ch=c;
        if(z!=0) zn=z;
        else zn=1;
    }
    Drob operator =(Drob &obj)
    {       
        ch=obj.ch;
        zn=obj.zn;
        return *this;
    }
    Drob operator *(Drob &obj)
    {
        Drob local;
        local.ch=ch*obj.ch;
        local.zn=zn*obj.zn;
        return local;
    }
    friend ostream& operator << (ostream &stream, Drob &obj)
    {
        stream << obj.ch << "/"<< obj.zn << "\n";
        return stream;
    }
private:
    int ch,zn;  
}; 
int main()
{
  SetConsoleOutputCP(1251);
  SetConsoleCP(1251); 
  Drob d1(1,2),d2(1,4);
  Drob d3;
  d3=d1*d2;
  cout << d3;  
  return 0;
}
c перегрузкой для умножения
pigah
12 / 12 / 2
Регистрация: 05.07.2009
Сообщений: 147
Записей в блоге: 1
02.09.2009, 00:44  [ТС]     Работа с классами #6
Всем спасибо огромное))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.09.2009, 00:46     Работа с классами
Еще ссылки по теме:

Работа с классами. - C++
Или это задача такая лёгкая (на экзамене будет), или я чего-то не понимаю. В классе Pair может содержаться только 2 числа (ну и 2 метода не...

Работа с классами - C++
Есть задание, создать 2 класса. Один с данными но без методов, а второй сметодом отображения данных первого класса. Надо в метод передавать...

Работа с классами - C++
Подскажите, создал класс class Person { private: ... public: static int count;

работа с классами в С++ - C++
Пусть есть class.срр, в котором описан класс MyClass{ public: int i; ... } Есть файл main.cpp, в нем я использую...


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

Или воспользуйтесь поиском по форуму:
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
02.09.2009, 00:46     Работа с классами #7
Да пребудет с нами Страуструп !
Yandex
Объявления
02.09.2009, 00:46     Работа с классами
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru