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

Приведите пример перегруженного ввода / вывода с консольными потоками - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ В чём здесь ошибка? http://www.cyberforum.ru/cpp-beginners/thread988965.html
В чём здесь ошибка? #include "stdafx.h" #include <iostream> #include <string.h> using namespace std; int main(){ string text;
C++ [Qt 5] Задание:Найти наибольший общий делитель n и m Здравствуйте, вот, дали задание для первого курса. Не могли бы помочь? Если можно, не очень сложный код, чтобы понятно было Заранее спасибо) http://www.cyberforum.ru/cpp-beginners/thread988957.html
Добавления элемента в бинарное дерево C++
Уже создавал подобную тему , но так и не получилось разобраться до конца . Есть такая задача : нужно создать бинарное дерево , вывести его значения на экран . Потом нужно определить K - количество...
Поиск цифр в массиве char C++
Задание: вводится строка из любых символов в ней ищутся цифры которые есть и выводятся только они непонимаю в чем ошибка ничего не выводит подскажите. #define _CRT_SECURE_NO_WARNINGS #include...
C++ Создать алгоритм http://www.cyberforum.ru/cpp-beginners/thread988938.html
Подскажите как можно сделать Дан список задач. У каждой задачи есть желательный срок выполнения (time min) и крайний срок (time max). Необходимо создать алгоритм сортировки данного списка по...
C++ Сформировать массив по условию элементы, которые присутствуют в массиве А, но отсутствуют в массиве В - пузырьком, линейный. помогите пожалуйста с решением! задание в C# подробнее

Показать сообщение отдельно
olia90
0 / 0 / 0
Регистрация: 16.04.2013
Сообщений: 37
31.10.2013, 13:17  [ТС]
Vot i peredelala etu programu
Smotrite:
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
#ifndef tort_h_
#define tort_h_
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
 
class tort
{
private:
    int number;
    static int count;
protected:
    char *nach;
public:
    char *name;
string name_kus;
    int numb_kus;
static int GetCount;
 
    
    void modifyInt(const int);
    void set_nach(char*);
    char*get_nach();
    void set_number(int);
    int get_number();
    bool kus(int );
    bool kus(string);
    string kus ();
    void show ();
    void vvid();
    bool firstWordEqual(const std::string &);
    
    std::string findInt() const;// знаходження числа
    
    static int get_count()
{
    return count;
};
    // допоміжна функція для визначення, чи є слово числом 
    bool isInt(const std::string &);
 
 
    //addition methods
    friend istream& operator >>(istream& in, tort& C)
    {
        char *s = new char[10];
        char *v = new char[10];
        cout<<"\nPlease enter the pises: "; 
        in>>C.number;
        cout<<"\nPlease enter the name: ";  in >> s; C.name = s;
        cout<<"\nPlease enter the inside: ";    in >> v; C.nach = v;
        return in;
    }
 
    friend ostream& operator <<(ostream& out, tort& C)
    {
        return out << "\n\nKilkist kuskiv = " << C.number << "\n Nazva torta = " << C.name << "\n Nachunka = " << C.nach;
    }
 
    void read_file();
    void write_in_file();
//.........................................................
    bool operator >(tort &C)
{
    if(number > C.number) return true;
    return false;
}
//............................................//
    bool operator <(tort &C)
{
    if(number < C.number) return true;
    return false;
}
//............................................//
    bool operator ==(tort &C)
{
    if(number == C.number) return true;
    return false;
}
 
    tort& operator = (tort& C)
    {
        if(&C == this) return *this;
        
        if(C.name)
        {
            name = new char [strlen(C.name)+1];
            strcpy (name, C.name);
        }
        else name = 0;
        
        if(C.nach)
        {
            nach = new char [strlen(C.nach)+1];
            strcpy (nach, C.nach);
        }
        else nach = 0;
        number = C.number;
        return *this;
    }
    int sort(tort,tort);
 
        tort();
    tort(char*,char*, int);
    tort(tort &);
    ~tort();
};
#endif
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
136
137
138
139
140
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
#include <algorithm>
#include <iterator>
#include <iostream>
#include <cctype>
#include "tort.h"
FILE*out;
FILE*Text;
 
using namespace std;
 const int size = 11; 
  string a[size];
int tort::count = 0;
 
bool tort::kus(int n)
{   if((n<=0)||(n>=12))
    return false;
    name_kus=a[n-1];
    return true;
}
 
bool tort::kus(string s)
{
    for(int i=0; i<12;i++)
    {   if(s==a[i])
    {numb_kus=i+1;
    return true;}
    } 
int j=0;
        for(int k=0; k<12;j=0,k++ )
    {for(int i=0; i<3;i++)
    {if ((a[k])[i]==s[i])
    {j++;
        if(j==3) return true;}}}
    return false;
}
 
string tort::kus()
{
    return name_kus;
}
 
void tort::set_nach(char*s)
{
    nach=s;
}
 
char* tort::get_nach()
{
    return nach;
}
 
void tort::set_number(int s)
{
    number=s;
}
 
int tort::get_number()
{
    return number;
}
 
tort::tort()
{   cout<<"Konstryktor\n";
    cout<< "tort() {"<< hex << this << "}" <<endl;
    number=5;
    name="Nic";
    nach="zawarnuj krem";
count ++;
}
 
void tort::read_file()
{
    char *s = new char [10];
    char *n = new char [10];
    ifstream f("tortu.txt");
    f >> s >> number >> n;
    name = s; nach = n;
    f.close();
 
    }
int tort::sort(tort a,tort b)
{
     return (a.number > b.number);
}
    void tort::write_in_file()
{
    ofstream f("Text.txt", ios::out | ios::app);
    f<<name<<' '; 
    f<<number<<' '<<nach; 
    f.close();
}
 
void tort::vvid()
{
    char*s=new char[12];
    char*b=new char[12];
    int a;
    cout<<"Nazva torta "; cin>>s; cout<<"K-st kuskiv "; cin>>a;
    cout<<"Nachunka -  "; cin>>b;
    this->name=s;
    this->set_number(a);
    this->set_nach(b);
};
 
void tort::show()
{
    cout<<"Nazva torta "<<name<<endl; cout<<"K-st kuskiv "<<number<<endl;
    cout<<"Nachunka -  "<<nach<<endl;
};
 
 
 
tort::tort(tort &m)
{
    name=new char[strlen(m.name)+1];
    nach=new char[strlen(m.nach)+1];
    number=m.number;
    strcpy(name, m.name );
    strcpy(nach,m.nach);
    count ++;
}
 
tort::tort(char*ptr,char*l, int d)
{
int len=strlen(ptr);
int dow=strlen(l);
name=(char*) malloc(len+1);
nach=(char*) malloc(dow+1);
number=d;
strcpy(name,ptr);
strcpy(nach,l); 
count ++;
}
 
tort::~tort()
{count --;}
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
#include <fstream>
#include <sstream>
#include <string>
#include <algorithm>
#include <iostream>
#include <iterator>
#include <cctype>
#include "tort.h"
 
using namespace std;
 
int main()
{   //konstryctoru
    tort tort_1, tort_2("Surnyk","glasur",3), tort_3(tort_2), tort_4;
    tort *A = new tort[4];
    cout << endl;
    cout <<tort_1 << "\n" << tort_2 << endl;
    cin >> tort_3 ;
    cout << tort_3 << endl;
    tort_4.read_file();
    cout << tort_4 << endl;
    A[0] = tort_1;
    A[1] = tort_2;
    A[2] = tort_3;
    A[3] = tort_4;
    
    //сортування методом пошуку найменшого елемента
    int N = 4;
    int max;
    tort temp;
    while(N >0)
    {  max = 0;
       for(int i = 0; i <N; i++)
         {
        if(A[i].sort(A[i], A[max]))
            max = i;
          }
         temp = A[N-1];
         A[N-1] = A[max];
         A[max] = temp;
         N--;
     }
    for(int i=0; i<4; i++)
    A[i].show();
 
   cout<<endl;  
   system("pause");
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru