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

Вопрос по исходному коду - C++

Восстановить пароль Регистрация
 
Gus
 Аватар для Gus
24 / 35 / 2
Регистрация: 17.02.2009
Сообщений: 364
07.05.2011, 15:32     Вопрос по исходному коду #1
доброго времени суток..
Тут писал от балды себе развлекательную интерелектуальную игрушку на консоли и столкнулся с проблемой, при выборе сложности введеный мною код сложности (1) в операторе switch пролетает тут же на default и никаких действий в case не выполняет

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
#include <iostream>
#include <stdio.h>
#include <locale.h>
#include <stdlib.h>
#include <string.h>
#include <windows.h>
using namespace std;
int main()
{
  setlocale(LC_ALL,"Rus");
 
         int Counter = 0;
         int rNumb1 = 0;
         int rNumb2 = 0;
         int sum = 0;
         int sPower;
         int cinResult = 0;
         char cinCommand;
         string pName;
         cout <<"Äëÿ Г*Г*Г·Г*Г«Г* Г¤Г*ГўГ*éòå ïðåäñòГ*âèìñÿ ÂÂåäèòå ГўГ*ГёГҐ èìÿ: ";
         cin >> pName;
         cout << endl << "ÇäðГ*Г±ГІГўГіГ© " << pName << "Г*Г*Г·Г*ГҐГ¬ èãðó ???" << endl;
         cout << "ÂÂåäè ÷èñëî óðîâГ*Гї ñëîæГ*îñòè" << endl
         << " 1: ГЊГ*ГІГҐГ¬Г*ГІГЁГ·ГҐГ±ГЄГЁГҐ îïåðГ*öèè + - Г± ïðåäåëîì Г·ГЁГ±ГҐГ« Гў 100 "<<endl
         << " 2: ГЊГ*ГІГҐГ¬Г*ГІГЁГ·ГҐГ±ГЄГЁГҐ îïåðГ*öèè * / Г± ïðåäåëîì Г·ГЁГ±ГҐГ« Гў 100 "<<endl
         << " 3: ГЊГ*ГІГҐГ¬Г*ГІГЁГ·ГҐГ±ГЄГЁГҐ îïåðГ*öèè + - * / Г± ïðåäåëîì Г·ГЁГ±ГҐГ« Гў 100 "<<endl;
         cin >> sPower;
         cout << "ÈãðГ* Г*Г*Г·ГЁГ*Г*ГҐГІГ±Гї !!!!" << endl;
         while(true)
         {
                 rNumb1 = rand()%100;
                 rNumb2 = rand()%100;
                 switch(sPower)
                 {
                               case1:
                                     if(rNumb1 > rNumb2)
                                     {
                                           sum = rNumb1 + rNumb2;
                                           cout <<rNumb1<<"+"<<rNumb2<<"=?"<<endl;
                                           cin >> cinResult;
                                           if(cinResult==sum)
                                           {
                                                             Counter++;
                                                             cout <<"Âû ГЇГ°Г*ГўГ»"<<endl;
                                                             cout <<"Г‚Г*Гё Г±Г·ГҐГІ: "<<Counter<<endl;
                                                             }
                                                             else if (cinResult != sum)
                                                             {
                                                                 Counter--;
                                                                 cout <<"Âû Г*ГҐ ГЇГ°Г*ГўГ»"<<endl;
                                                                 cout <<"Г‚Г*Гё Г±Г·ГҐГІ: "<<Counter<<endl;
                                                                 }
                                                             else
                                                             {
                                                                 sum = rNumb2 + rNumb1;
                                           cout <<rNumb2<<"+"<<rNumb1<<"=?"<<endl;
                                           cin >> cinResult;   
                                           if(cinResult==sum)
                                           {
                                                             Counter++;
                                                             cout <<"Âû ГЇГ°Г*ГўГ»"<<endl;
                                                             cout <<"Г‚Г*Гё Г±Г·ГҐГІ: "<<Counter<<endl;
                                                             }
                                                             else
                                                             {
                                                                 Counter--;
                                                                 cout <<"Âû Г*ГҐ ГЇГ°Г*ГўГ»"<<endl;
                                                                 cout <<"Г‚Г*Гё Г±Г·ГҐГІ: "<<Counter<<endl;
                                                                 
                                                             }
                                                             }
                                                             }
                                                             default:
                                                                     cout <<"ГЋГёГЁГЎГЄГ* êîä 1"<<endl;
                                                                     system("pause");
                                                                     return 0;
                                                                     }
                                                                     }
                                                                     }
Вот собственно и/к программки
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ZloyVolkey
 Аватар для ZloyVolkey
27 / 27 / 6
Регистрация: 01.05.2011
Сообщений: 85
07.05.2011, 15:34     Вопрос по исходному коду #2
C++
1
case 1:
Пробел забыл
Gus
 Аватар для Gus
24 / 35 / 2
Регистрация: 17.02.2009
Сообщений: 364
07.05.2011, 15:42  [ТС]     Вопрос по исходному коду #3
Цитата Сообщение от ZloyVolkey Посмотреть сообщение
C++
1
case 1:
Пробел забыл
без изменений((

Добавлено через 1 минуту
хотя тут пробел не поможет
хоть так case1:, хоть так case 1:
ZloyVolkey
 Аватар для ZloyVolkey
27 / 27 / 6
Регистрация: 01.05.2011
Сообщений: 85
07.05.2011, 15:49     Вопрос по исходному коду #4
C++
1
2
3
4
5
6
7
8
9
         while(true)
         {
                 rNumb1 = rand()%100;
                 rNumb2 = rand()%100;
                printf("\n1 = %i 2 = %i\n", rNumb1, rNumb2);
                 switch(sPower)
                 {
                               case 1:
                                     if(rNumb1 > rNumb2)
Bash
1
2
3
4
Игра начинается !!!!
 
1 = 83 2 = 86
Ошибка код 1
Условие не выполняется. А закрывающая скобка этого ифа находится тут -
C++
1
2
}
        default:

Не по теме:

Книга, обязательная к прочтению - Правила программирования на С и С++. Ален И. Голуб (2001)

Gus
 Аватар для Gus
24 / 35 / 2
Регистрация: 17.02.2009
Сообщений: 364
07.05.2011, 16:07  [ТС]     Вопрос по исходному коду #5
Для начала давайте представимся ВВедите ваше имя: 1

Здраствуй 1начнем игру ???
ВВеди число уровня сложности
1: Математические операции + - с пределом чисел в 100 (Легко)
2: Математические операции * / с пределом чисел в 100 (Средне)
3: Математические операции + - * / с пределом чисел в 100 (тяжело)
1
Игра начинается !!!!
Ошибка код 1
Для продолжения нажмите любую клавишу . . .
ZloyVolkey
 Аватар для ZloyVolkey
27 / 27 / 6
Регистрация: 01.05.2011
Сообщений: 85
07.05.2011, 16:13     Вопрос по исходному коду #6
Расставь все скобки правильно, в них проблема 100%.
Onishare
30 / 30 / 5
Регистрация: 07.05.2011
Сообщений: 50
07.05.2011, 17:05     Вопрос по исходному коду #7
Исправил код. Многое изменил. Изменил бы больше, но пытался не отклонятся от оригинала.
Все работает.
Вложения
Тип файла: rar main.rar (775 байт, 12 просмотров)
Onishare
30 / 30 / 5
Регистрация: 07.05.2011
Сообщений: 50
07.05.2011, 17:11     Вопрос по исходному коду #8
Еще не стал изменять специально. Пускай автор разберется как работает функция rand(). PS че то надо добавить :-)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.05.2011, 21:23     Вопрос по исходному коду
Еще ссылки по теме:

Расположить слова строки в порядке, обратном исходному. C++
Как пройтись по чужому исходному коду ? C++
C++ По исходному списку строится два новых: положительные и остальные элементы

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

Или воспользуйтесь поиском по форуму:
Gus
 Аватар для Gus
24 / 35 / 2
Регистрация: 17.02.2009
Сообщений: 364
07.05.2011, 21:23  [ТС]     Вопрос по исходному коду #9
Можно закрыть тему, перестроил исходный код с нуля и убрал проблему.

Добавлено через 50 секунд
Цитата Сообщение от Onishare Посмотреть сообщение
Еще не стал изменять специально. Пускай автор разберется как работает функция rand(). PS че то надо добавить :-)
Спасибо, но аффтар решил проблему перестройкой))))
Yandex
Объявления
07.05.2011, 21:23     Вопрос по исходному коду
Ответ Создать тему
Опции темы

Текущее время: 11:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru