Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.01.2023, 22:57   #1
Rusikfsk
 
Регистрация: 26.11.2022
Сообщений: 7
По умолчанию игра камень ножницы бумага

помогите разобраться в чем ошибка почему программа выдает один результат?

Код:
#include <ctime>
#include <iostream>

using namespace std;

int main() 
{
    cout << "ROCK, PAPER, CISSORS" << endl;
    cout << "You need to enter number from 1 to 3" << endl;
    cout << "ROCK - 1" << endl;
    cout << "PAPER - 2" << endl;
    cout << "CISSORS - 3" << endl;
    
    srand((int)time(NULL));
    int human = 0;
    int cpu = 0;
    cpu = rand() % 3 + 1;
    cin >> human;
    //human
    if (human == 1)
    {
        cout << "ROCK" << endl;
    }
        else if (human == 2)
        {
            cout << "PAPER" << endl;
        }
            else 
            {
                cout << "CISSORS" << endl;
            }
    //cpu
    if (cpu == 1)
    {
        cout << "ROCK" << endl;
    }
            else if (cpu == 2)
            
                cout << "PAPER" << endl;
            
            else
            {
                cout << "CISSORS" << endl;
            }
    //equal
    if (human = cpu)
    {
        cout << "Tie" << endl;
    }
    //ROCK
    else if (human == 1)
    {
        if (cpu == 2) 
        {
            cout << "CPU WIN" << endl;
        } 
        if (cpu == 3) 
        {
            cout << "YOU WIN" << endl;
        }
    
    }
    //PAPER
    else if (human == 2) 
    {
        if (cpu == 2)
        {
            cout << "YOU WIN" << endl;
        }
        if (cpu == 3)
        {
            cout << "CPU WIN" << endl;
        }

    }
    //CISSORS
    else if (human == 3)
    {
        if (cpu == 1)
        {
            cout << "CPU WIN" << endl;
        }
        if (cpu == 2) 
        {
            cout << "YOU WIN" << endl;
        }
    }





    return 0;
}
Rusikfsk вне форума Ответить с цитированием
Старый 14.01.2023, 23:24   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,432
По умолчанию

Сравнение на равенство "==", а вы присвоили переменной human значение переменной cpu в строке "if (human = cpu)". А еще перепроверьте ифы в теле ифа "else if (human == 2)".
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 15.01.2023, 01:04   #3
Valick
Форумчанин
 
Регистрация: 27.04.2022
Сообщений: 522
По умолчанию

Код:
<?php
declare(strict_types=1);

$itemRules = [
    'stone' => [
        'scissors' => 'You win!',
        'paper' => 'You loss!',
        'stone' => 'Tie',
    ],
    'scissors' => [
        'paper' => 'You win!',
        'stone' => 'You loss!',
        'scissors' => 'Tie',
    ],
    'paper' => [
        'stone' => 'You win!',
        'scissors' => 'You loss!',
        'paper' => 'Tie',
    ],
];
$item = array_keys($itemRules);
shuffle($item);
$cpu = array_shift($item);
$human = $_GET['item'];
$result = !empty($human) ? $itemRules[$human][$cpu] : '';
?>
<html lang="ru">
<head>
    <meta charset="utf-8">
    <title></title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"
          rel="stylesheet"
          integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
          crossorigin="anonymous">
    <style>
        table {
            text-align: right;
        }
    </style>
</head>
<body>
<div class="container">
    <div class="col-6">
        <h1>Game "stone - scissors - paper"</h1>
        <h2>Select item</h2>
        <form>
            <select class="form-select" name="item" aria-label="selector">
                <?php foreach (array_keys($itemRules) as $item) {
                    $selected = $item === $human ? ' selected' : ''; ?>
                    <option value="<?= $item ?>"<?= $selected ?>><?= $item ?></option>
                <?php } ?>
            </select>
            <hr>
            <button type="submit" class="btn btn-secondary float-end">- Enter -</button>
        </form>
        <?php if (!empty($result)) { ?>
            <h2><?= $human ?> vs <?= $cpu ?></h2>
            <h1><?= $result ?></h1>
        <?php } ?>
    </div>
</div>
</body>
</html>

Последний раз редактировалось Valick; 15.01.2023 в 01:53.
Valick вне форума Ответить с цитированием
Старый 15.01.2023, 01:19   #4
Valick
Форумчанин
 
Регистрация: 27.04.2022
Сообщений: 522
По умолчанию

http://kaval.beget.tech/ssp.php
Valick вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Java как правильно написать условие вывода картинки (Игра Камень, Ножницы, Бумага)? Pain123 Общие вопросы по Java, Java SE, Kotlin 3 25.05.2017 16:32
Камень, ножницы, бумага. Davel Помощь студентам 2 01.09.2016 00:00
Игра камень ножницы бумага Ri777 Microsoft Office Excel 2 18.11.2013 10:45
Игра "Камень, Ножницы, Бумага" three_cats Общие вопросы C/C++ 11 26.10.2012 09:15