Практикум по программированию. Основы. Циклы. Игра в 100

From AsIsWiki
Jump to: navigation, search

Назад · Задачи · Дальше


Contents

Java

import java.util.Scanner;

public class Task17 {

    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);

        System.out.println();
        System.out.println("---------------------- И Г Р А ----------------------");
        System.out.println(" Вы и компьютер по очереди называете числа: 1 ... 10");
        System.out.println(" Числа складываются.");
        System.out.println(" Кто первым достигнет 100, тот выиграл.");
        System.out.println(" Ваш ход - первый.");
        System.out.println("-----------------------------------------------------");

        int n, d, sum = 0;
        String winner;

        do {

            do {
                System.out.print("   Ваш ход: ");
                n = in.nextInt();
            } while (n < 1 || n > 10);

            sum += n;
            winner = "user";

            if (sum < 100) {
                // sum == n - индикатор первого хода пользователя
                d = sum == n ? 12 - n : 11 - n;
                sum += d;
                System.out.print(" Компьютер: " + d);
                winner = "computer";
            }

            System.out.println("  Сумма: " + sum);

        } while (sum < 100);

        System.out.println("-----------------------------------------------------");

        if (winner.equals("user")) {
            System.out.println(" Вы выиграли!");
        } else {
            System.out.println(" Выиграл компьютер!");
        }
    }
}


C++

// g++ 4.2

#include <iostream>

using namespace std;

int main() {
    
    cout << "\n---------------------- И Г Р А ----------------------\n";
    cout << " Вы и компьютер по очереди называете числа: 1 ... 10\n";
    cout << " Числа складываются.\n";
    cout << " Кто первым достигнет 100, тот выиграл.\n";
    cout << " Ваш ход - первый.\n";
    cout << "-----------------------------------------------------\n";

    int n, d, sum = 0;
    string winner;
    
    do {
        
        do {
            cout << "   Ваш ход: ";
            cin >> n;
        } while (n < 1 || n > 10);
        
        sum += n;
        winner = "user";
        
        if (sum < 100) {
            // sum == n - индикатор первого хода пользователя
            d = sum == n ? 12 - n : 11 - n;
            sum += d;
            cout << " Компьютер: " << d;
            winner = "computer";
        }
        
        cout << "  Сумма: " << sum << "\n";
        
    } while (sum < 100);
    
    cout << "-----------------------------------------------------\n";
    
    if (winner == "user") {
        cout << " Вы выиграли!";
    } else {
        cout << " Выиграл компьютер!";
    }

    cout << "\n\n";
    return 0;
}


Pascal



JavaScript

<html lang="ru">
<head>
    <meta charset="UTF-8">
    <script>

        var sum;

        function start() {
            document.getElementById('userActionId').disabled = false;
            document.getElementById('userActionId').value = "";
            document.getElementById('userActionId').focus();
            document.getElementById('computerActionId').innerHTML = "Компьютер:";
            sum = 0;
            document.getElementById('amountId').innerHTML = "Сумма: " + sum;
        }

        function stop(winner) {
            document.getElementById('userActionId').disabled = true;
            document.getElementById('resultId').innerHTML =
                    winner == "user" ? "Вы выиграли!" : "Выиграл компьютер!";
        }

        function checkUserAction() {

            var n = Number(document.getElementById('userActionId').value);

            if (isNaN(n) || n < 1 || n > 10) {
                document.getElementById('userActionId').value = "число от 1 до 10";
                return;
            }

            sum += n;
            var winner = "user";

            if (sum < 100) {
                // sum == n - индикатор первого хода пользователя
                var d = sum == n ? 12 - n : 11 - n;
                sum += d;
                document.getElementById('computerActionId').innerHTML = "Компьютер: "+ d;
                winner = "computer";
            }

            document.getElementById('amountId').innerHTML = "Сумма: " + sum;
            document.getElementById('userActionId').value = "";

            if (sum >= 100) {
                stop(winner);
            }
        }
    </script>
</head>
<body>

<p>******************* И Г Р А ******************* <br>
Вы и компьютер по очереди называете числа: 1 ... 10 <br>
Числа складываются. <br>
Кто первым достигнет 100, тот выиграл. <br>
Ваш ход - первый.</p>
<hr>
<p>Ваш ход: <input id="userActionId" size="15" onchange="checkUserAction()" disabled></p>
<p id="computerActionId">Компьютер:</p>
<p id="amountId">Сумма:</p>
<hr>
<p id="resultId"></p>

<button onclick="start()">Старт</button>

</body>
</html>



Назад · Задачи · Дальше

Personal tools
Namespaces

Variants
Actions
Navigation
Tools