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

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

Войти
Регистрация
Восстановить пароль
 
 
Darell_ldark
0 / 0 / 0
Регистрация: 30.06.2013
Сообщений: 11
#1

Не могу справиться с if! - C++

02.08.2013, 13:41. Просмотров 913. Ответов 28
Метки нет (Все метки)

Вот код:
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
#include <iostream.h>
#include <stdio.h>
int main()
{
 using namespace std; 
 
 string name;
 cout << "Type name:      ";
 cin >> name;
 
 int life;
 int damage;
 int mana;
 
 int klas;
 cout << "Choose your class: 1 - witcher, 2 - warior, 3 - shooter   ";
 cin >> klas;
 
switch (klas)
{ 
      case 1:
           life = 100;
           damage = 10;
           mana = 150;
           cout << "Your name is " << name << "\n";
           cout << "Your class is witcher  \n";
           cout << "Your life is   " << life << " now. You can upgrade it\n";
           cout << "Your damage is  " << damage << " now\n";
           cout << "And you have " << mana << " mana! It`s really more!\n";
      break;
      case 2:
           life = 160;
           damage = 14;
           mana = 0;
           cout << "Your name is " << name << "\n";
           cout << "Your class is warrior \n";
           cout << "Your life is   " << life << " now. You can upgrade it\n";
           cout << "Your damage is  " << damage << " now\n";
           cout << "And you have no mana, becose you are warrior, yeah. Discrimination.\n";
      break;
      case 3:
           life = 50;
           damage = 20;
           mana = 10;
           cout << "Your name is " << name << "\n";
           cout << "Your class is shooter \n";
           cout << "Your life is   " << life << " now. You can upgrade it \n";
           cout << "Your damage is  " << damage << " now\n";
           cout << "And you have " << mana << " mana! You have mana! It`s cool!\n";
}
int gnomtown;
int elftown;
int orktown;
 
int goo;
cout << "Where you want to go? 1 - to gnomes, 2 - to elftown, 3 - to orktown     ";
cin >> goo;
switch (goo)
{
       case 1:
            cout << "You are in Gnomes Town now! You can repair your armor!"<< endl;
       break;
       case 2:
            cout << "You are in Elfs Town now! You can buy weapon here!"<< endl;
            cout << "Type !shop for shopping!"<< endl;
                int shop;
                cin >> shop;
    if (shop=!shop);
     {
                    cout << "What are you want? Maybe, you want to buy Legendary Sword?" << endl;
                    int buy;
                    cout << "1 - to buy sword, 2 - for bow, 3 - for sniper rifle" << endl;
                    cin >> buy;
                                 switch (buy)
                                 {
                                 case 1:
                                       damage = 17;
                                       cout << "Your damage is 14 + 3 now"<< endl;
                                 break;                                 
                                       
                                 case 2:
                                       damage = 15;
                                       cout << "Your damage is 14 + 1 now"<< endl;
                                 break;
                                 case 3:
                                      if (klas = 2)
                                       {
                                               cout << "You can`t buy this item, becouse you are warrior. Dicramination!"<< endl;
                                               }
                                               else
                                               {
                                                   cout << "Your damage is 20 + 6 now! You are dangerous!"<< endl;
                                               }
                                       }
                    }
 
       break;
       case 3:
            life -= 44;
            cout << "Orks hate you and want to kill you. Run away!\n ";
            cout << "You was damaged. Your health for now  " << life << "\n";
            break;
}
system("pause");
return 0;
}
После if (shop=!shop) должен следовать else. Но как я не пытаюсь его поставить после switch у меня ничего не выходит. Помогите пожалуйста!
P.S. Если можно, объясните наследование, как его правильно сделать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.08.2013, 13:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не могу справиться с if! (C++):

Не могу справиться с задачей на BorlC++ - C++
Дерево Пифагора – такая вещь, когда все начинается с квадрата, который на одной из сторон имеет равнобедренный прямоугольный треугольник....

Не могу справиться с функцией с++ istringstream - C++
В общем, изначальный код был таков: #include &quot;stdafx.h&quot; #include&lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;sstream&gt; #include...

не могу справиться с программами (они несложные) - C++
Парни, от меня в универе требуют к четвергу написать проги на C++, я написала около 9, осталось только 3.. помогите пожалуйста :-[ ...

не могу справиться задачкой в С++. У кого светлая голова напишите пожалуйста - C++
Задан массив, состоящий из 10 элементов. Из положительных элементов извлечь квадратный корень, отрицательные возвести в квадрат, нулевые...

Не могу справиться с задачей: "по какому предмету у студента с заданным номером в журнале лучшая оценка по итогам сессии?"! - C++
Задача выглядит так: &quot;по какому предмету у студента с заданным номером в журнале лучшая оценка по итогам сессии?&quot; То есть дан список...

Как справиться с задачей! - C++
Попались примеры сложные помогите решить

28
Praktolock
65 / 65 / 1
Регистрация: 29.11.2011
Сообщений: 300
02.08.2013, 15:25 #16
Всё чётко в условии, кому не нравится - изучите разницу операторов "=" и "==". Если не прояснилось, погоняйте в отладчике.
1
SatanaXIII
02.08.2013, 15:32
  #17

Не по теме:

0
Darell_ldark
0 / 0 / 0
Регистрация: 30.06.2013
Сообщений: 11
02.08.2013, 15:35  [ТС] #18
Эм... Ну я хотел, чтобы было так: если переменная shop равна !shop, то выполняются условия, если нет, то идут другие действия. Как я понял, это вообще неправильно.
0
Praktolock
65 / 65 / 1
Регистрация: 29.11.2011
Сообщений: 300
02.08.2013, 15:36 #19
Ну если так, то да, неправильно xD
0
zer0mail
2374 / 2004 / 199
Регистрация: 03.07.2012
Сообщений: 7,198
Записей в блоге: 1
02.08.2013, 15:37 #20
Цитата Сообщение от Darell_ldark Посмотреть сообщение
После if (shop=!shop) должен следовать else. Но как я не пытаюсь его поставить после switch у меня ничего не выходит. Помогите пожалуйста!
P.S. Если можно, объясните наследование, как его правильно сделать.
Разве четко? Если "Да", то как одновременно поставить else после if и switch, учитывая, что сразу за if() стоит ';' ?

else можно либо поставить после нее, либо убрать ';' после if() (скорее всего, 2-й вариант).
0
Kuzia domovenok
1960 / 1813 / 143
Регистрация: 25.03.2012
Сообщений: 6,288
Записей в блоге: 1
02.08.2013, 15:40 #21
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Если она [shop] равна !shop
Вот я и говорю, что проверка на равность shop и не shop выглядела бы как
Так ты не говори, а лучше спроси, что именно он хотел проверить! Видишь же, что бред!
0
Darell_ldark
0 / 0 / 0
Регистрация: 30.06.2013
Сообщений: 11
02.08.2013, 15:43  [ТС] #22
zer0mail, объясните, пожалуйста, разницу между if(); и if() Я недавно начал изучать, не знаю еще таких тонкостей.
0
Kuzia domovenok
1960 / 1813 / 143
Регистрация: 25.03.2012
Сообщений: 6,288
Записей в блоге: 1
02.08.2013, 15:46 #23
Цитата Сообщение от Darell_ldark Посмотреть сообщение
zer0mail, объясните, пожалуйста, разницу между if(); и if() Я недавно начал изучать, не знаю еще таких тонкостей.
А в какой книге ты вообще нашёл, что надо if(); использовать?
конструкция if(); ничего не делает, если выполнено условие и приводит только к лишним ошибкам
if() при выполнении условия будет выполнять следующее за ним выражение
0
zer0mail
2374 / 2004 / 199
Регистрация: 03.07.2012
Сообщений: 7,198
Записей в блоге: 1
02.08.2013, 15:49 #24
C++
1
2
3
if(x) a=1;
if(у);
b=1;
Если x истина, "а" присвоится 1
Если y истина, то выполнится пустой оператор ";" а b=1; выполнится всегда.

Поэтому
C++
1
if(у);
эквивалентен
C++
1
 if(y) {;}
, т.е. это законченный оператор if (раз после него нет else).
0
Darell_ldark
0 / 0 / 0
Регистрация: 30.06.2013
Сообщений: 11
02.08.2013, 15:52  [ТС] #25
Kuzia domovenok, да ни в какой... Просто почти в каждой строке нужно ; вот я и подумал, что тут такой случай. Убрал. Теперь не выводит ничего после !shop, а раньше выводилось.

Добавлено через 1 минуту
Kuzia domovenok, ан нет. Написал 0 и все появилось. Теперь вопрос: как мне сделать так, чтобы меню шопа появлялось после !shop, а не 0?

Добавлено через 45 секунд
zer0mail, спасибо, теперь понял.
0
Kuzia domovenok
1960 / 1813 / 143
Регистрация: 25.03.2012
Сообщений: 6,288
Записей в блоге: 1
02.08.2013, 15:56 #26
Цитата Сообщение от Darell_ldark Посмотреть сообщение
C++
1
2
3
4
cout << "Type !shop for shopping!"<< endl;
int shop;
cin >> shop;
if (shop=!shop);
По-моему, все, кто тут писал, даже близко не поняли замысла автора. Ему не нужна проверка shop на ноль/не ноль!
Ему нужно, чтобы с клавы вводилась строка и затем сравнивалась со строкой "shop" !

C++
1
2
3
4
5
6
std::string cmd_shop;
cin>>cmd_shop;
if (cmd_shop=="shop"){
  cout << "you want to buy Legendary Sword?" << endl;
 ///....
}
0
Darell_ldark
0 / 0 / 0
Регистрация: 30.06.2013
Сообщений: 11
02.08.2013, 16:19  [ТС] #27
Kuzia domovenok, блин, а про строки то я забыл. Сейчас пробую поместить. Ошибки вылазят, как добьюсь результата - отпишу. Заранее спасибо!

Добавлено через 6 минут
Kuzia domovenok, стыдно, но я не могу это поместить. Опять, похоже, ошибка со скобками. Не могли бы Вы дать код?
0
Kuzia domovenok
1960 / 1813 / 143
Регистрация: 25.03.2012
Сообщений: 6,288
Записей в блоге: 1
02.08.2013, 16:31 #28
C++
1
#include <string>
Хотя стой... какая среда С++?
0
Darell_ldark
0 / 0 / 0
Регистрация: 30.06.2013
Сообщений: 11
02.08.2013, 16:38  [ТС] #29
Kuzia domovenok, увы, я не разбираюсь. Пишу код в Dev-C++, а что к чему - я не знаю.
0
02.08.2013, 16:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.08.2013, 16:38
Привет! Вот еще темы с ответами:

Помогите справиться с задачей!! - C++
Начал изучать С++ и попалась задача, не подскажите как ее сделать? Задача 2.29 Для действительных чисел х и а составить функцию...

Помогите справиться с лабой по массивам) - C++
Задан массив из k чисел. Определить количество инверсий в массиве (т. е. таких пар элементов, в которых большее число находится слева от...

книга стивен прата как справиться с задачей стр 342 листинг 7.12 - C++
стивен прата 6 издание. стр 343 листинг 7.12 strctfun переписал код, код полностью работает и проблем в этом нет, но при вводе данных по...

Народ, как справиться с такой задачей: определить кол-во столбцов матрицы B, содержащих все положительные элементы - C++
определить кол-во столбцов матрицы B, содержащих все положительные элементы. Bkm=E в степени xk + E в степени ym / 2 где xk={2,7; 1; 4,1}...


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

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

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