Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
илья1995
3 / 3 / 3
Регистрация: 17.10.2011
Сообщений: 169
1

Игра "кости"

12.01.2013, 03:39. Просмотров 1340. Ответов 7
Метки нет (Все метки)

написал простенькую игру
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
#include<iostream>
#include<ctime>
using namespace std;
int main()
{
    setlocale(0,"");
srand(time(0));
int s=0,f=0,x,i=1,a,b,c,d;
a=rand() % 7;
b=rand() % 7;
c=rand() % 7;
d=rand() % 7;
cout<<"введите кол-во попыток: "<<endl;
cin>>d;
while(i<=d){ 
 
s+=c+d;
cout<<"игрок: "<<s<<endl;
f+=a+b;
cout<<"компьютер: "<<f<<endl;
i+=1;
}
if(s>f){cout<<"вы выйграли"<<endl;}
if(s==f){cout<<"ничья"<<endl;}
if(s<f){cout<<"вы проиграли"<<endl;}
system("pause");
return 0;
}
программа работает но как то странно генерирует числа особенно когда ставишь количество попыток больше 1 раза.
вот например 1 раз оно с генерировало числа у игрока в суме получилось 7 а у компьютера 10 и оно в последующем тупо складывает эти числа как видно на картинке т.е следующий бросок счет будет 14:10 патом 21:30 и так далее не могу понять что не так
0
Миниатюры
Игра "кости"  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2013, 03:39
Ответы с готовыми решениями:

Игра "Кости". Упростить код
Дело в том , что нужно написать игру &quot;Кости&quot; на С++ Вот код: = { ...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить...

Консольная "графика", игра "Тетрис". Фигуры перестают прорисовываться на определенном этапе
Доброго времени! Написал на днях тетрис (в консоле) с использованием, кажется...

Надо написать программу (игру) "Кости". Где ошибка?
Доброго времени. суток. Прошу помочь с решение &quot;проблемы&quot; по написанию...

Смоделировать выбор "наугад" одной кости домино из полного набора костей этой игры
Помогите пожалуйста:cry: Смоделировать выбор &quot;наугад&quot; одной кости домино из...

7
valeriikozlov
Эксперт С++
4686 / 2512 / 751
Регистрация: 18.08.2009
Сообщений: 4,550
12.01.2013, 06:25 2
Цитата Сообщение от илья1995 Посмотреть сообщение
вот например 1 раз оно с генерировало числа у игрока в суме получилось 7 а у компьютера 10 и оно в последующем тупо складывает эти числа как видно на картинке т.е следующий бросок счет будет 14:10 патом 21:30 и так далее не могу понять что не так
Сами так написали )
Вот это нужно?:
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
#include<iostream>
#include<ctime>
using namespace std;
int main()
{
    setlocale(0,"");
srand(time(0));
int s=0,f=0,i=1,a,b,c,d;
 
cout<<"введите кол-во попыток: "<<endl;
cin>>d;
while(i<=d){ 
 a=rand() % 6+1;
b=rand() % 6+1;
c=rand() % 6+1;
d=rand() % 6+1;
s+=c+d;
cout<<"игрок: "<<s<<endl;
f+=a+b;
cout<<"компьютер: "<<f<<endl;
i+=1;
}
if(s>f){cout<<"вы выйграли"<<endl;}
if(s==f){cout<<"ничья"<<endl;}
if(s<f){cout<<"вы проиграли"<<endl;}
system("pause");
return 0;
}
1
Ogniel
24 / 24 / 7
Регистрация: 30.05.2011
Сообщений: 127
12.01.2013, 13:22 3
тебе поможет randomise() перед рандомами

Добавлено через 1 минуту
иначе программа будет рандомить одно число подряд

Добавлено через 28 минут
тьфу, randomize()
0
JlightenDev_C++
63 / 63 / 33
Регистрация: 12.08.2012
Сообщений: 150
12.01.2013, 16:07 4
Вот пример.
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
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <conio.h>
 
bool check(std::string sname);
std::string winner(const int iplayer, const int ibot, std::string sname);
 
int main()
{
    std::string sname;
    int imax(0), isump(0), isumb(0);
    do
    {
    std::cout << "What is your name: ";
    getline(std::cin, sname);
    }while(check(sname));
    std::cout << "How many rounds: ";
    std::cin >> imax;
    srand(time(NULL));
    for(int icount(0); icount < imax; icount++)
    {
        std::cout << "\n\nPress any key for action.";
        getch();
        int iplayer(rand()%6+1), ibot(rand()%6+1);
        std:: cout << "\nRound " << icount + 1 << ": " << sname << " " << iplayer;
        std:: cout << "\nRound " << icount + 1 << ": bot " << ibot;
        isump += iplayer;
        isumb += ibot;
    }
    std::cout << "\n\nWinner " << winner(isump, isumb, sname) << " congratulation!";
    getch();
    return 0;
}
 
bool check(std::string sname)
{
     int len = sname.size();
     for(int i = 0; i < len; i++)
     {
         if((sname[i] - 48) >= 0 && (sname[i] - 48) < 10)
         {
             system("CLS");
             std::cout << "Incorrect name.\n";
             return true;
         }
     }
     return false;
}
 
std::string winner(const int iplayer, const int ibot, std::string sname)
{
     return iplayer > ibot ? sname : "bot";
}
0
илья1995
3 / 3 / 3
Регистрация: 17.10.2011
Сообщений: 169
12.01.2013, 17:12  [ТС] 5
я немного переделал программу теперь пользователь вводит свои два числа. как ограничить вводимые числа чтобы он в переменную c,d можно было вводить только числа 1,2,3,4,5,6
знаю что примерно так
C++
1
2
c={1,2,3,4,5,6};
d={1,2,3,4,5,6};
но так не работает
0
QVO
644 / 455 / 80
Регистрация: 26.10.2010
Сообщений: 1,263
Записей в блоге: 4
Завершенные тесты: 3
14.01.2013, 23:27 6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
while ( true )
{
cin >> number
if ( number > 0 && number < 7 )
{
c = number;
break;
}
else
{
cout << "re-enter the number" << endl;
}
}
0
coloc
погромист
411 / 247 / 30
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
14.01.2013, 23:32 7
C++
1
srand (time(NULL) + rand())
Вот такая функция srand будет генерировать более случайные числа
1
ВикаCat
0 / 0 / 0
Регистрация: 13.11.2013
Сообщений: 7
08.04.2014, 10:16 8
Ребята, так какая правильная программа Игра "Кости"?
0
08.04.2014, 10:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.04.2014, 10:16

Как написать игру "Кости"
Подскажите как правильно написать игру кости.

Программа, имитирующая игру в "Кости"
Написать программу, которая имитирует игру в кости. Игроки (2 человека) кидают...

Для каждой строки найти слова, которые не имеют ни одного из букв: "l", "k", "r", "s" i "j"
Задано символьные строки. Строка состоит из нескольких слов (наборов символов),...


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

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

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