С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Doctor_
234 / 234 / 71
Регистрация: 03.02.2011
Сообщений: 1,431
#1

Можете скомпилировать и сказать работает ли? - C++

16.03.2012, 20:32. Просмотров 452. Ответов 7
Метки нет (Все метки)

Не хочу качать компилятор для 4-5 заданий, точнее занимали бы они меньше места как, например, Dev-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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
#include <iostream.h>
#include <string.h>
#include <cstring.h>
#include <conio.h>
 
class OverflowException {
      public:
             OverflowException() {
               cout << endl << "Exception created!" << endl;
             }
             OverflowException(OverflowException&) {
               cout << "Exception copied!" << endl;
             }
             ~OverflowException() {
               cout << "Exception finished!" << endl;
             }
};
 
class Article {
      protected:
           string Kod;
           string Nosaukums;
           float Cena;
      public:
           Article();
           Article(string,string,float);
           virtual ~Article() {
                   cout << "Message from the \"Article\" - destroyed!" << endl;
      }  
       
      string GetKod() const {
             return Kod;
             }
      
      void SetKod(const Kod) {
           this->Kod=kod;
           }
                      
      string GetNosaukums() const {
             return Nosaukums;
             }
             
      void SetNosaukums(const Nosaukums) {
           this->Nosaukums=Nosaukums;
           }
      
      float GetCena() const;
      void SetCena(float);
      virtual void Print() const;
};  
 
class Book : public Article {
      private:
          string Autors;
      public:
          Book():Article(), Autors(0) {
              }
          Book(string,string,float,string);
          virtual ~Book() {
                  cout << endl << "Message from the \"Book\" - destroyed!" << endl;
                  }
          
          string GetAutors() const {
                 return Autors;
                 }
          
          void SetAutors(string Autors) {
               this->Autors=Autors;
               }
               
          virtual void Print() const;
};
 
class BookShop {
      private:
              typedef Book* EPointer;
              EPointer *Nodes;
              static const unsigned int DEG_MAX_LENGHT;
              unsigned int MaxLenght;
                unsigned int Lenght;
                
              public:
                 BookShop(): MaxLenght(DEF_MAX_LENGHT), Lenght(0) {
                    Nodes = new EPointer[MaxLenght];
                    }
                    BookShop(unsigned int MaxLenght) : MaxLenght(MaxLenght), Lenght(0) {
                       Nodes = new EPointer[MaxLenght];
                    }
                    ~BookShop();
                    static unsigned int GetDefaultMaxLenght() {
                           return DEF_MAX_LENGHT;
                    }
                    int GetMaxLenght() const {
                        return MaxLenght;
                    }
                    int GetLenght() const {
                        return Lenght;
                    }
                    void AddNode(const Book&);
                    
                    void Add(const Book&);
                    float GetMaxPrice();
                    void Print() const;
};
const unsigned int BookShop:DEF_MAX_LENGHT = 5;
Article::Artcile() : Kod("12qw"), Nosaukums("Vardnica"),Cena(12.55) {
                   }
                   
Article::Article(string Pkod, string Pnosaukums, float Pcena): Kod(Pkod) {
                        Nosaukums=Pnosaukums;
                        Gads=Pcena;
                        }
 
inline float Article:GetCena() const {
       return Cena;
}
       
inline void Article::SetCena(float Gads) {
       this->Cena=Cena;
}
 
inline void Article::Print() const {
       cout<<"Kod: " << Kod <<", Nosaukums: " << Nosaukums << ", Cena: " << Cena;
}
 
Book::Book(string Kod, string Nosaukums, float Cena, string Pautors) : Article(Kod,Nosaukums,Cena) {
          Autors=Pautors;
}        
       
inline void Book::Print() const {
       Article::Print();
       cout << "Autors: " << Autors;
}
 
BookShop::~BookShop() {
     for(unsigned int i=0;i<Lenght;i++)
     delete Nodes[i];
     delete [] Nodes;
     }
 
void BookShop::Print() const {
     cout << "Dati par gramatam un gramatnicu: " << endl;
     for(unsigned int i=0;i<Lenght;i++) {
                  cout << (i+1) << ". ";
                  Nodes[i]->Print();
                  cout << "." << endl;
     }
}
 
void BookShop:AddNode(const Book& Node) {
     if(Lenght==MaxLenght)
     throw OverflowException();
     else
     Nodes[Lenght++] = new Book(Node.GetKod(),Node.GetNosaukums(),Node.GetCena(),Node.GetAutors());
}
 
float BookShop::GetMaxPrice()
      {
          float Cena;
          Cena=Nodes[0]->GetCena();
          for(int i=1;i<Lenght;i++)
          if(Nodes[i]->GetCena()<Cena)
          {
             Cena=Nodes[i]->GetCena();
             }
          return Cena;
      }  
 
void main(void) {
     BookShop *Line = new BookShop(2);
     Book *B1 = new Book("43rt","Dienasgramata",2.45,"Liene");
     Book B2("56qw","Romans",6.67,"Andris");
     
     try 
     Line->AddNode(*B1);
     cout << "--- Error: maximal lengh exceede! ---" << endl;
     }
     catch (...) { 
           cout << "Unknown error!" << endl;
           }
           delete B1;
           
     cout << " Default maximal lenght(from class)= " << BookShop::GetDefaultMaxLenght() << "." << endl;
     cout << "Default maximal lenght (from object)= " << Line->GetDefaultMaxLenght() << "." << endl;
     cout << "Maximal lenght= " << Line-> GetMaxLenght() << "." << endl;
     cout << "Current lenght= " << Line->GetLenght() << "." << endl;
     
     try {
         Line->AddNode(B2);
         cout << "New node addes successfully!" << endl;
         }
         
         catch (OverflowException&) {
               cout <<"--- Error: maximal lenght exceeded! ---" << endl;
               }
               
         catch (...) {
               cout << "Unknown error!" << endl;
               }
         
     try {
         Line->AddNode(B2);
         cout << "New node addes successfully!" << endl;
         }
         
         catch (OverflowException&) {
               cout <<"--- Error: maximal lenght exceeded! ---" << endl;
               }
               
         catch (...) {
               cout << "Unknown error!" << endl;
               }
     
    Line->Print();
    cout << "Maksimala cena ir= " << (Line->GetMaxPrice());
    delete Line;
 
while (kbhit())
getch();
getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2012, 20:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Можете скомпилировать и сказать работает ли? (C++):

Можете сказать, я правильно понял задание? - C++
Вычислить сумму чисел в каждой строке. N&lt;=10, M&lt;=10 #include&lt;conio.h&gt; #include&lt;stdio.h&gt; #include&lt;stdlib.h&gt; #include&lt;time.h&gt; int...

Что Вы можете сказать о индусе по его коду - C++
Не так давно взялся учить С++, будучи ещё школотой. Читаю книжку С.Прата &quot;Язык программирования С++&quot;. Это дело вроде нравится, но вот...

Можете сказать, на каком языке написан данный код - C++
Здравствуйте. Можете сказать, на каком языке написан данный код. На какой программе запустить? Также, это одна программа или же по...

Можете помочь дописать программу, неправильно работает. - C++
Вариант 8 Даны целые массивы А, B и значения R и F. Каждый массив пpеобpазовать по пpавилу: компоненты с четными номеpами,...

Можете поподробнее разъяснить как работает алгоритм - C++
sum=0; while (n!=0) { sum=sum+n%10; n=n/10; } Конкретно вот эти строчки:

Можете объяснить, как работает следующая проверка (на ввод букв)? - C++
do { k=scanf_s(&quot;%d&quot;,&amp;mas); if (k==0) { fflush(stdin); printf(&quot;\nОшибка,введите число:&quot;); } ...

7
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,389
Записей в блоге: 2
Завершенные тесты: 1
16.03.2012, 20:40 #2
http://liveworkspace.org/code/8c737eb284282cf1639b6b3b33adbb54
0
Doctor_
234 / 234 / 71
Регистрация: 03.02.2011
Сообщений: 1,431
16.03.2012, 20:43  [ТС] #3
так я пробовал, он там на iostream ругается
0
Taras_Z
100 / 84 / 2
Регистрация: 27.10.2010
Сообщений: 534
Записей в блоге: 2
16.03.2012, 20:44 #4
iostream без .h

Добавлено через 37 секунд
и cstring тоже
0
Doctor_
234 / 234 / 71
Регистрация: 03.02.2011
Сообщений: 1,431
16.03.2012, 20:46  [ТС] #5
Цитата Сообщение от Taras_Z Посмотреть сообщение
iostream без .h

Добавлено через 37 секунд
и cstring тоже
и он сразу кучу ошибок выдает, есть одна программка написана так же, переменные другие, знаю что она работает 100%, но там нет

плюс ругается на cionio.h
0
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,389
Записей в блоге: 2
Завершенные тесты: 1
16.03.2012, 21:14 #6
Цитата Сообщение от Doctor_ Посмотреть сообщение
и он сразу кучу ошибок выдает
Осмелюсь предположить, что это происходит потому, что в коде есть ошибки

Цитата Сообщение от Doctor_ Посмотреть сообщение
плюс ругается на cionio.h
Да, там похоже GCC, просто убери conio.h и getch(), kbhit() из кода, в данном случае они не принципиальны.

можешь еще здесь http://codepad.org/ta8HLLaA пробовать.

Добавлено через 10 минут
В общем в коде просте до%@ра опечаток и синтаксических ошибок. Часть я исправил http://liveworkspace.org/code/e9c5c63c3a0d7f4bdefee8fa55e7c71a но еще много осталось.
1
Doctor_
234 / 234 / 71
Регистрация: 03.02.2011
Сообщений: 1,431
16.03.2012, 22:21  [ТС] #7
Вроде исправил все ошибки, но на ругается на первый class
http://liveworkspace.org/code/dd16d733d43eb2a3369ea87d1fd5bf07
0
Kastaneda
Jesus loves me
Эксперт С++
4697 / 2901 / 238
Регистрация: 12.12.2009
Сообщений: 7,389
Записей в блоге: 2
Завершенные тесты: 1
17.03.2012, 08:13 #8
вот, все работает
http://liveworkspace.org/code/c9b2193f25ffee8c8028f38b356fa113
конструктор копирования имеет прототип
C++
1
className(const className&);
а у тебя было без const, так работает далеко не во всех компиляторах.
1
17.03.2012, 08:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.03.2012, 08:13
Привет! Вот еще темы с ответами:

можете привести пример программы со структурой данных, и объяснить как она работает - C++
можете привести пример программы со структурой данных, и объяснить как она работает. Добавлено через 23 минуты или опишу часть...

Как сказать циклу - C++
Как сказать циклу выполняться 4 раза ?

Что хотел сказать автор? - C++
Код C++ #define MAX_SIZE (8192) signed char buf; почему нельзя записать: signed char buf; точнее, чем они могут...

Что можете сказать ? - Программирование
У одной программулки в разделе импортируемых функций есть такие функции, как: CreateRemoteThread ShellExecute ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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