Structure de données-1-2.LinkedList [Job] -Guess le nombre (générer au hasard 4 entiers de 0 à 9 pour former une séquence (en utilisant le stockage LinkedList)

Bonjour à tous, je suis un cochon arqué de chou.

Le titre

Devinez jeu de nombres

  1. Générez aléatoirement 4 entiers de 0 à 9 pour former une séquence (en utilisant le stockage LinkedList)
    Par exemple: 3 6 4 4

  2. Ensuite, l'utilisateur est invité à deviner les quatre nombres dans une boucle, et après chaque supposition, l'utilisateur est invité à indiquer que la position de plusieurs nombres est correcte.
    Par exemple: si l'utilisateur entre 3 7 2 4 (les positions 3 et 4 sont correctes), l'utilisateur est invité à avoir 2 chiffres corrects (mais pas à indiquer quels 2 chiffres sont corrects, ce qui oblige l'utilisateur à juger).

  3. Utilisez LinkedList pour stocker la supposition de chaque utilisateur est une combinaison de nombres. Les utilisateurs peuvent vérifier leur propre saisie à tout moment.
    Par exemple: 3 7 2 4
    5 7 2 4
    ……

  4. Lorsque l'utilisateur devine la 10e fois, il n'y a aucune chance de provoquer l'échec de la devinette.

Remarque: Utilisez la méthode Math.random () pour obtenir un nombre aléatoire de 0 à 1, puis développez-le 10 fois, puis convertissez-le en une
forme entière : int a = (int) (Math.random () * 10);
à ce stade, a est aléatoire Nombre, selon cette méthode pour obtenir 4 nombres aléatoires

Code

package com.hzyc.lesson15.homework16;

import java.util.LinkedList;
import java.util.Scanner;

interface IGame {
	void initRandom();
	
	int guess();
	
	void time();
	
	void showHis();
}

class GuessGame implements IGame {

	LinkedList<Integer> randomList = new LinkedList<Integer>();
	LinkedList<String> hisList = new LinkedList<String>();
	
	public void initRandom() {
		for (int n = 1; n <= 4; n++) {
			randomList.add((int)(Math.random() * 10));
		}
	}
	public int guess() {
		System.out.println("\n请输入4个数字");
		Scanner scan = new Scanner(System.in);
		int cnt = 0;
		String once = "";
		for (int i = 0; i < 4; i++) {
			int userInNumber = scan.nextInt();
			once += userInNumber + " ";
			int fromListNumber = randomList.get(i);
			if (userInNumber == fromListNumber) {
				cnt++;
			}
		}
		hisList.add(once + ", 正确:" + cnt);
		return cnt;
	}

	public void time() {
		for (int k = 1; k <= 10; k++) {
			int count = guess();
			if (count == 4) {
				System.out.println("对了!!");
			} else if (count == 0) {
				System.out.println("没有正确的...");
			} else {
				System.out.println("有" + count + "个正确的");
			}
			System.out.println("输入“h”查看历史,输入其他继续");
			Scanner scan = new Scanner(System.in);
			String userChoose = scan.next();
			if (userChoose.equals("h")) {
				showHis();
			}
		}
	}

	public void showHis() {
		System.out.println("----start----");
		for (String temp : hisList) {
			System.out.println(temp);
		}
		System.out.println("----end----");
	}
	
	public void start() {
		initRandom();
		time();
	}
	
}

public class TestGame {
	public static void main(String[] args) {
		GuessGame g = new GuessGame();
		g.start();
	}
}

Publié 24 articles originaux · loué 4 · visites 2038

Je suppose que tu aimes

Origine blog.csdn.net/weixin_44226263/article/details/98338664
conseillé
Classement