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

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

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

Игра крепс, выполняемая 1000 раз, не запускается - C++

21.02.2013, 13:14. Просмотров 329. Ответов 2
Метки нет (Все метки)

Написал программу игры в крепс, выполняемая 1000 раз. Компилятор ошибок никаких не выдает. При запуске выходит исключение, помогите найти ошибку
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
#include<iostream>
#include<cstdlib>
#include<time.h>
using namespace std;
int kreps()
{
    srand(time(NULL));
    int ochki1 = 1 + rand()%6, ochki2 = 1 + rand()%6;
    return ochki1 + ochki2;
}
int main()
{
    setlocale(0,"");
    int  raz, ochki,pobeda[1000] = {0}, proigrish[1000] = {0} ;
 
    for (raz = 1; raz <= 1000; raz++)
    {
        ochki = kreps();
        while (ochki == 4 || ochki == 5 || ochki == 6 || ochki == 8 || ochki == 9 || ochki == 10)
        {
            raz++;
            ochki = kreps();
        }
        if (ochki == 2 || ochki == 3 || ochki == 12)
            proigrish[raz]++;
        else if (ochki == 7 || ochki == 11)
            pobeda[raz]++;
        
    }
    cout << "Побед после 1-ого броска:\t" << pobeda[1] << endl;
    cout << "Побед после 2-ого броска:\t" << pobeda[2] << endl;
    cout << "Побед после 5-ого броска:\t" << pobeda[5] << endl;
    cout << "Побед после 10-ого броска:\t" << pobeda[10] << endl;
    cout << "Побед после 20-ого броска:\t" << pobeda[20] << endl;
    cout << "Поражений после 1-ого броска:\t" <<  proigrish[1] << endl;
    cout << "Поражений после 2-ого броска:\t" <<  proigrish[2] << endl;
    cout << "Поражений после 5-ого броска:\t" <<  proigrish[5] << endl;
    cout << "Поражений после 10-ого броска:\t" <<  proigrish[10] << endl;
    cout << "Поражений после 20-ого броска:\t" <<  proigrish[20] << endl;
    cout << "Побед:\t" << pobeda[raz] << endl;
    cout << "Поражений:\t" << proigrish[raz] << endl;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2013, 13:14     Игра крепс, выполняемая 1000 раз, не запускается
Посмотрите здесь:

Игра в Крепс - C++
Привет всем, вот собсвенно задача: Написать программу,которая выполняет 1000 игр в крепс и отвечаеи на слудеющие вопросы: а)...

Void в программе моделирования игры в крепс - C++
если void не возвращает никакое значение, то почему в функции на скрине rollDice возвращает workSum переменную типа int? объясните пжл

Рекурсивная програма которая по очереди будет выводить 1(16 раз), 2(8 раз), 3 (4 раза) - C++
подробнее смотрите вложение

Отгадать число 1-1000 - C++
Суть программы, такой: пользователь загадывает число с 1 до 1000, а программе нужна отгадать, она мает право задать 10 вопросов в стиле...

Задача 1, 10, 100, 1000 - C++
Представим себе бесконечную последовательность цифр, составленную из записанных друг за другом возрастающих степеней десятки. Вот начало...

Подсчет простых чисел до 1000 - C++
Вот что я написал, а как сделать чтобы эти числа складывались каждый раз . using namespace std; int main(int argc, char *argv)...

Сгенерировать случайные числа от 1000 до 1112 - C++
for (int i = 1; i &lt;= 10; i++) { n = 1000 + rand () % 1112; cout &lt;&lt; n &lt;&lt; endl; } Почему вылазят цифры...

Зеркальное отражение числа 0001->1000 - C++
Может быть вопрос глупый, а может утро, или я еще не просунлся. все работет, но если первый ноль, то проблемка. а надо что бы и с...

Форматированный вывода значения 1000.5364 - C++
Откомпелируйте и исправьте ошибки в следующих программах: Пример 4: #include&lt;iostream&gt; using namespace std; void showflags();...

Найти простые числа в диапазоне от 1 до 1000 - C++
Задание звучит так Написать программу поиска простых чисел из множества натуральных чисел от 1 до 1000 и записи их в массив. Записать на...

Объясните, пожалуйста, строчку var %= 1000 - C++
Тут делов на две секунды, ибо я новичок, и вопросы априори у меня глупые. есть задачка для чайников. Напишите программу, которая...

Минимальное число, кратное 46 (от 1000 до 2000) - C++
Нужно найти в диапазоне от 1000 до 2000 наименьшее число, кратное 46 и наибольшее кратное 26. Почему в результате min46 = 1000? max26...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
1890 / 1745 / 118
Регистрация: 25.03.2012
Сообщений: 5,924
Записей в блоге: 1
21.02.2013, 13:18     Игра крепс, выполняемая 1000 раз, не запускается #2
Цитата Сообщение от Mikle90 Посмотреть сообщение
for (raz = 1; raz <= 1000; raz++)
C++
1
for (raz = 0; raz < 1000; raz++)
Добавлено через 43 секунды
Цитата Сообщение от Mikle90 Посмотреть сообщение
int kreps()
{
* * srand(time(NULL));
лучше делать srand один раз в начале программы в мейне
gray_fox
What a waste!
1449 / 1178 / 61
Регистрация: 21.04.2012
Сообщений: 2,466
Завершенные тесты: 3
21.02.2013, 13:21     Игра крепс, выполняемая 1000 раз, не запускается #3
Вот здесь
Цитата Сообщение от Mikle90 Посмотреть сообщение
proigrish[raz]++;
и здесь
Цитата Сообщение от Mikle90 Посмотреть сообщение
pobeda[raz]++;
будет выход за пределы массива, если raz == 1000 (индексирование массивов начинается с нуля, т.е. элементов proigrish[1000] и pobeda[1000] не существует).

Добавлено через 1 минуту

Не по теме:

ну написали уже...)

Ответ Создать тему
Опции темы

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