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

Подскажите где ошибка в классе - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Передача динамического массива в функции http://www.cyberforum.ru/cpp-beginners/thread858170.html
#include <iostream> #include <cstdlib> using namespace std; /*const*/ int k=3; //void sum (int mas); void sum (int * arr, int k, int t); //void max(int matrix); void max(int * arr ,int g, int r);
C++ Подсчитать количество слов,начинающихся с указанной буквы Ребят,помогите пожалуиста. вот ,есть задачка: Дан текст произвольной длины,оканчивающийся точкой.текст состоит из слов,разделенных пробелами.Подсчитать количество слов,начинающихся с указанной буквы; Я программку написала,он считает слова,а главного условия,т.е счичать не все слова,а именно,с указанной буквы,не считает вот сама прога: #include <stdio.h> #include<string.h> enum{OUT,IN};... http://www.cyberforum.ru/cpp-beginners/thread858159.html
C++ Найти максимальное и минимальное значение функции
Просьба решить задачку, так как я сам ни бум бум...=( А через пару недель нужно перездать зачет. Очень прошу помочь!! Составить таблицу значений заданной функции. Найти максимальное и минимальное значение функции, соответствующие им значения аргументов для каждого значения параметра. Шаг изменения аргумента и параметра студент выбирает самостоятельно так, чтобы число значений параметров было...
Реализация семафоров C++
Возможно ли реализовать семафоры вручную или же для этого нужна обязательная поддержка процессора?
C++ Как распарсить строку и положить данные в элементы структуры http://www.cyberforum.ru/cpp-beginners/thread858139.html
Здравствуйте! Интересует следующий вопрос. У нас есть есть строка. Например, ab|ac|ad|ae|af|ag|ah. И есть структура -> struct table { string ab, ac, ad, ae, af, ag, ah; }; Задача состоит в том, чтобы из строки вытащить значения, какими являются ab, ac, .., ah. Я написал кусок кода, который вытаскивает эти значения. Но т.к. это дело происходит в цикле, я не могу на каждом шаге записать...
C++ структуры с указателями Ребят, не могу понять как сделать 2 структуры вместе, при этом я могу что то в них поменять, например, как здесь # include <iostream> # define N 10 using namespace std; struct computer { char firma ; char CPU ; int kolvo; подробнее

Показать сообщение отдельно
iferko
0 / 0 / 0
Регистрация: 07.05.2013
Сообщений: 7
Завершенные тесты: 1
07.05.2013, 17:08  [ТС]     Подскажите где ошибка в классе
прошу строго не судить) первая попытка что-то сделать самому(учу с++ около месяца в свободное время от работы)

Кликните здесь для просмотра всего текста

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
#include <iostream>
#include <stdlib.h>
#include <iomanip>
#include <time.h>
#include <string>
#include <fstream>
 
using namespace std; // использую потому что нет риска пересечения пространства имен.
 
/*
задам переменные для мейн которые будут использоваться в бою.
они примут значение из 2х классов и будут использоваться в функции Бой!
(не забудь её доработать!)
*/
int win;
int YouHP=0, YouDMG=0, YouARM=0; //это для боя персонажа
int EneHP=0, EneDMG=0, EneARM=0;//это для боя врага
string m;//это для мануала
class Person{
public:
    int d;
    int hp;
    int arm;
    
};
 
 
class Fight{
 
public:
int yh; 
int ed; 
int ya; 
int eh; 
int yd; 
int ea; 
int w;
int Attack();
    
};
int Fight::Attack(){
    int count=0;//раундов боя прошло
    int dmg=0;//урон, будет использоваться для вывода урона и подщета жизни.
    
while(true){
cout<<"Now you atack enemy.\n";
dmg =yd + rand()%6;
        eh = (eh + ea) - dmg;
        if(eh < 0){
            cout<<"Enemy died, You win! Congratulation!\n";
            return w=1; //вернуть после функции 1 что бы потом использовать победу.
            break;      
        }else
            cout<<"You paid enemy : "<<dmg<<"damages\n";
cout<<"Now enemy atack you.\n";
dmg =ed + rand()%6;
        yh = (yh + ya) - dmg;
        if(yh < 0){
            cout<<"You Loose!Deat and End!\n";
            return w=0; //  если 0 то конец игры    
            break;
        }else
            cout<<"You left Hit Point:"<<yh<<"\n";
 
        count++;
        cout<<"Raund "<<count<<" end.\n";
 
 
    }
}
 
 
class Class{
public:
    int d;
    int hp;
    int arm;
void Print(){
    cout<<"Demage: "<<d<<"\nHit Point: "<<hp<<"\nArmor: "<<arm<<"\n";
    }
};
 
class Stat{   //n задаёт размер одной характеристики, st задаёт её имя.
public:
    int n;
    string st;
    void Print(){
    cout<<st<<":"<<n<<"\n";}
};
 
    
int main(int argc, char* argv[]){
 
    
 
    cout<<"Helo it's my first program, i houpe it's will like you\n";
    char ptr;
    cout<<"For game you mast choise class your player\n";
 
    srand(time(0));
    cout<<"Hello, it's your stats\n";
    Stat str; //сила
    str.st="Str";
    str.n=8+rand()%10;
    str.Print();
    Stat dex; //ловкость
    dex.st="Dex";
    dex.n=8+rand()%10;
    dex.Print();
    Stat con; //живучесть
    con.st="Con";
    con.n=8+rand()%10;
    con.Print();
    Stat Int; //интелект
    Int.st="Int";
    Int.n=8+rand()%10;
    Int.Print();
    
    while(true){    
    cout<<"Choice your class:\n\n"<<"Poosh (1) for choice Fighter\n"
    <<"Poosh (2) for choice Mage\n\n";  
    int c;
    cin>>c;
    
    if(c==1){
    cout<<"You choice fighter\n";
    Class StF;
    StF.d=4 + ((str.n - 8) / 2);  
    StF.hp=10 + (con.n / 4); 
    StF.arm=2+((dex.n - 8) / 2);
    StF.Print();            
    
    YouDMG =StF.d;
    YouHP=StF.hp;
    YouARM=StF.arm;
    
    break;
    }else
    if(c==2){
    cout<<"You choice mage\n";
    Class StM;
    StM.d=6 + ((Int.n - 8) / 2);  
    StM.hp=6 + (con.n / 4); 
    StM.arm=2+((dex.n - 8) / 2);
    StM.Print();
    
    YouDMG =StM.d;
    YouHP=StM.hp;
    YouARM=StM.arm;
    
    break;  
    }else
        if((c<=0) || (c>=3))
        cout<<"Not choise"; 
    }
    //на этом этапе в винде выбивает и все
 
    cout<<"Now we have fight!\n";
        
    int m = 1 + rand()%5;
        
    if(m<=3){
        cout<< "You enemy Ugly Ork with big exe\n";     
    EneHP=25;
    EneDMG=4; 
    EneARM=3;
        }       
 
    if(m>=4){
        cout<< "You enemy mean Necromanser\n";      
    EneHP=16;
    EneDMG=6; 
    EneARM=0;   
    }
    // cout<<"You can choise: run of fight!(Push 1 or 2)\n";
 
    
    int Y_HP_N=YouHP;//Жизнь в бою, когда будет 0 то смерть и конец игры. 
    int E_HP_N=EneHP;//Жизнь Монстра.
        
    Fight You;
    You.yh=Y_HP_N;  
    You.yd=YouDMG;
    You.ya=YouARM;
    You.eh=E_HP_N;
    You.ed=EneDMG;
    You.ea=EneARM;
    You.w=win;
    You.Attack();
    
        
    cout<<win;//для проверки возвращения w из класса Fight
    
 cout<<"\n"; // мне красивее
}


 Комментарий модератора 
Пользуйтесь тегами форматирования кода. Выделите код и на панели редактирования сообщения нажмите кнопку "c++"
 
Текущее время: 09:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru