Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
1 / 1 / 0
Регистрация: 15.03.2012
Сообщений: 23

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

21.02.2013, 13:14. Показов 919. Ответов 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;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.02.2013, 13:14
Ответы с готовыми решениями:

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

Найти и исправить ошибки в коде: игра "Крепс" (программа из учебника Харви и Пола Дейтелов)
Решил проверить работу программы из учебника Харви Дейтела и Пола Дейтеле. Получается, что при ее выполнении игрок всегда выигрывает, хотя...

Выполняемая процедура
Добрый день! Помогите, пожалуйста. Написала процедуру. Переменная i - процент на который нужно повысить цены в поле kol_vo Выдает...

2
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,532
Записей в блоге: 1
21.02.2013, 13:18
Цитата Сообщение от Mikle90 Посмотреть сообщение
for (raz = 1; raz <= 1000; raz++)
C++
1
for (raz = 0; raz < 1000; raz++)
Добавлено через 43 секунды
Цитата Сообщение от Mikle90 Посмотреть сообщение
int kreps()
{
* * srand(time(NULL));
лучше делать srand один раз в начале программы в мейне
1
What a waste!
 Аватар для gray_fox
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
21.02.2013, 13:21
Вот здесь
Цитата Сообщение от Mikle90 Посмотреть сообщение
proigrish[raz]++;
и здесь
Цитата Сообщение от Mikle90 Посмотреть сообщение
pobeda[raz]++;
будет выход за пределы массива, если raz == 1000 (индексирование массивов начинается с нуля, т.е. элементов proigrish[1000] и pobeda[1000] не существует).

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

Не по теме:

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

1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.02.2013, 13:21
Помогаю со студенческими работами здесь

1000 раз нажать клавишу
Добрый день.Нужна была программа,которая при нажатии в фоновом режиме клавиши ESC имитировалось 10-кратное нажатие клавиши 'W'.По-моему...

Одна выполняемая программа-процесс
Возможно ли в Delphi как-то сделать так, что бы в одно и то же время только 1 копия программы могла выполняться (ну, что бы невозможно...

Возможно, уже 1000 раз про выбори
Нужна помощь. Пытаюсь сделать базу данных. Есть таблица в которой указаны адреса (таблица &quot;справочник ОБЪЕКТОВ&quot;) и таблица...

Создать батник, который открывает файл 1000 раз
Здравствуйте!У меня есть простое консольное клиент-серверное приложение (многопоточное). Для проверки работоспособности...

Не работает событие focus() (я 1000 раз напишу на доске разницу JS и Java)
Помогите разобраться. Не заменяется картинка по событию focus() $(document).ready(function () { ...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru