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

Приведение типов? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Цикл сложный http://www.cyberforum.ru/cpp-beginners/thread377881.html
1. Элементы массива a(8) расположить в том массиве по убыванию. 2. Вычислить произведение матриц b(5*3) и c(3*6). Заранее вам большое спасибо! Программа С.
C++ Семантический вопрос... как называется язык-то? По моему правильно и разумно оформлять большие куски кода в классы в стиле с++, всё заинкапсулировать, следить за наследованием... Но чувствительные к скорости коды все пишут в стиле си, порой, отказываясь даже от функций в пользу дефайнов... этого явно Страуструп не хотел, а Кернигану и Ричи такая развитая объектная ориентированность в голову не приходила. Так как называть такой язык? http://www.cyberforum.ru/cpp-beginners/thread377866.html
C++ адаптеры
добрый вечер интересно ваше мнение. такие вещи как адаптеры, биндеры позиционируются как шибко быстро работающие. и рекомендуется ими активно пользоваться. Например вместо попыток определить собственную шаблон-функцию сравнения, которая сравнивает входное значение с неким фиксированным значением, рекомендуется юзать биндер, который сделает нам из функции less принимающей 2 параметра для...
Разбить строку C++
У меня есть строка string^ str в неё записано 6 символов. Как мне разбить эту строку на еще три строки в каждой из которых будут по два символа. тоесть примерно надо получить вот это: str ="123456" str1="12" str2="34" str3="56"
C++ Объясните пожалуйста алгоритм http://www.cyberforum.ru/cpp-beginners/thread377847.html
Вычислите сумму с данной точностью е. Используйте указатели на функции как параметры: Сумма от 1 до бесконечности sin n/n Как я понял подставлять вместо n числа от 1 до беск и делить пока выражение не станет < e Я так и сделал,но не могу применить указатели на функцию,как это сделать подскажите #include <conio.h> #include <iostream.h> #include <math.h> int main() {
C++ здравствуйте уважаемые програмисты не могли бы вы помочь с задачами?обычно Matrix21. Дана матрица размера M × N. Для каждой строки матрицы с нечет-ным номером (1, 3, …) найти среднее арифметическое ее элементов. Ус-ловный оператор не использовать. Matrix32. Дана целочисленная матрица размера M × N. Найти номер первой из ее строк, содержащих равное количество положительных и отрицательных элементов (нулевые элементы матрицы не учитываются). Если таких строк нет, то... подробнее

Показать сообщение отдельно
KeyGen
 Аватар для KeyGen
333 / 289 / 6
Регистрация: 07.08.2011
Сообщений: 789
Записей в блоге: 1
04.11.2011, 21:26  [ТС]     Приведение типов?
Вот полный код:
km.h
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
#ifndef KM_H_
#define KM_H_
#include <iostream>
 
namespace KM
{
    
    
    
class Km
{
private:
        static const double DIFFERENCE = 1.2;
        double kilometer;
        double mili;
 
public:
       //ГЉГ®Г*ñòðóêòîðû//
       Km();
       Km(double, char);
       Km(double);
       //ГЋГЇГҐГ°Г*öèè Г± òèïîì//
       Km operator+(const Km & t)const;
       Km operator-(const Km & t)const;
       Km operator*(const Km & t)const;
       Km operator/(const Km & t)const;
       //ГЋГЇГҐГ°Г*öèè ГІГЁГЇ(+,-,*,/)=
       friend void operator+=(Km & k, const Km & t);
       friend void operator-=(Km & k, const Km & t);
       friend void operator*=(Km & k, const Km & t);
       friend void operator/=(Km & k, const Km & t);
       //ГЋГЇГҐГ°Г*öèè öèôðГ*+ГІГЁГЇ//
       friend Km operator+(const double n, const Km & t);
       friend Km operator-(const double n, const Km & t);
       friend Km operator*(const double n, const Km & t);
       friend Km operator/(const double n, const Km & t);
       
       friend std::ostream & operator<<(std::ostream & os, const Km & t);
};
}
#endif
km.cpp
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
#include "km.h"
 
namespace KM
{
       Km::Km()
       {
           kilometer = mili = 0;
       }
       
       Km::Km(double m, char r)
       {
           if(r=='m'||r=='M')
           {
              kilometer=m*DIFFERENCE;
              mili=m;
           }
           else
           {
           kilometer=0;
           mili=0;
           std::cout << "\nÁûë ïðåìèГ*ГҐГ* Г*ГҐГўГҐГ°Г*ûé ГЁГ*äèôèêГ*òîð! Г‡Г*Г*Г·ГҐГ*ГЁГї ГіГ±ГІГ*Г*îâëåГ*Г*Г» Гў 0.\n";
        }
       }   
           
       Km::Km(double k)
       {
            kilometer=k;
            mili=k/DIFFERENCE;
       }
       
       std::ostream & operator<<(std::ostream & os, const Km & t)
       {
            os << t.kilometer << "-êèëëîìåòðû. " << t.mili << "-ìèëè.";
            
            return os;
       }
       
       Km Km::operator+(const Km & t)const
       {
            double temp=t.kilometer+kilometer;
 
            Km sum(temp);
            
            return sum;
       }
       Km Km::operator-(const Km & t)const
       {
            double temp=kilometer-t.kilometer;
 
            Km sum(temp);
            
            return sum;
       }
    
       Km Km::operator*(const Km & t)const
       {
        double temp=kilometer*t.kilometer;
 
            Km sum(temp);
            
            return sum;
        
      }
    
      Km Km::operator/(const Km & t)const
      {
        double temp=kilometer/t.kilometer;
 
            Km sum(temp);
            
            return sum;
        
      }
    
     Km operator+(const double n, const Km & t)
     {
        double temp=n+t.kilometer;
 
            Km sum(temp);
            
            return sum;
     }
     
     Km operator-(const double n, const Km & t)
     {
        double temp=n-t.kilometer;
 
            Km sum(temp);
            
            return sum;
     }
     
     Km operator*(const double n, const Km & t)
     {
        double temp=n*t.kilometer;
 
            Km sum(temp);
            
            return sum;
     }
     
     Km operator/(const double n, const Km & t)
     {
        double temp=n/t.kilometer;
 
            Km sum(temp);
            
            return sum;
     }
     
     void operator+=(Km & k, const Km & t)
     {
            k.kilometer=k.kilometer-t.kilometer;
            k.mili=k.mili-t.kilometer;
     }
     
     void operator-=(Km & k, const Km & t)
     {
            k.kilometer=k.kilometer-t.kilometer;
            k.mili=k.mili-t.kilometer;
     }
     
     void operator*=(Km & k, const Km & t)
     {
            k.kilometer=k.kilometer*t.kilometer;
            k.mili=k.mili*t.kilometer;
     }
     
     void operator/=(Km & k, const Km & t)
     {
            k.kilometer=k.kilometer/t.kilometer;
            k.mili=k.mili/t.kilometer;
     }
    
}
main.cpp
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
#include <iostream>
#include "km.h"
 
using std::cout;
using std::cin;
using std::endl;
using KM::Km;
 
int main()
{
    setlocale(LC_ALL, "rus");
    
    Km mili(50);
    Km km=20;
    
    cout << mili+km << endl;
    cout << mili-km << endl;
    cout << mili*km << endl;
    cout << mili/km << endl;
    
    cout << endl;
    
    cout << km+100 << endl;
    cout << 100-km << endl;
    cout << 100*km << endl;
    cout << 100/km << endl;
    
    km+=mili;
    cout << endl << km;
    
    km-=mili;
    cout << endl << km;  
    
    km*=mili;
    cout << endl << km; 
    
    km/=mili;
    cout << endl << km; 
    
    km+=10;
    cout << endl << km; //???
    
    
    cout << "\n\n\n";
    system("PAUSE");
    return 0;
}
 
Текущее время: 04:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru