从两个循环中选择的随机类的Java算法

从两个循环中选择的随机类的Java算法,java,random,Java,Random,我必须让我的程序在两组原始和补码之间随机选择,但有5组循环。如何分配给程序,使其在每组的两个原始和补码之间随机选择? 好的,这就是我到目前为止得到的 import java.util.Scanner; import java.util.Random; public class NumberFinder { int number; int t = 1; int v; Scanner scan = new Scanner(System.in); pu

我必须让我的程序在两组原始和补码之间随机选择,但有5组循环。如何分配给程序,使其在每组的两个原始和补码之间随机选择? 好的,这就是我到目前为止得到的

import java.util.Scanner;

import java.util.Random;

public class NumberFinder {

    int number;

    int t = 1;
    int v;
    Scanner scan = new Scanner(System.in);

    public void display()

    {
        if (t % 4 != 0)
            System.out.print(v + " ");
        else
            System.out.println(v);

        t++;

    }

    public int findNumber() {

        Random generator = new Random();
        {
            {
                for (v = 1; v < 32;) {
                    display();

                    if (v % 2 == 1)
                        v += 2;
                }

                for (v = 0; v < 32;)
                    ;
                {
                    display();

                    if (v % 2 == 1)
                        v += 2;
                }

            }
            System.out.println("Is your number in this set?");

            String response1 = scan.nextLine();

            for (v = 2; v < 32;) {
                display();

                if (v % 2 == 0)
                    v++;
                else
                    v += 3;
            }

            for (v = 0; v < 32;) {
                display();
                if (v % 2 == 0)
                    v++;
                else
                    v += 3;
            }

            System.out.println("Is your number in this set?");
            String response2 = scan.nextLine();

            for (v = 4; v < 32;) {
                display();

                if (v % 4 == 3)
                    v += 5;
                else
                    v++;
            }

            for (v = 0; v < 32;)
                ;
            {
                if (v % 4 == 3)
                    v += 5;
                else
                    v++;
            }

            System.out.println("Is your number in this set?");

            String response3 = scan.nextLine();

            for (v = 8; v < 32;) {
                display();
                if (v % 8 == 7)
                    v += 9;
                else
                    v++;
            }

            for (v = 0; v < 32;) {
                display();
                if (v % 8 == 7)
                    v += 9;
                else
                    v++;

            }

            System.out.println("Is your number in this set?");

            String response4 = scan.nextLine();

            for (v = 16; v < 32;) {
                display();
                if (v % 1 == 0)
                    v++;

            }

            for (v = 0; v < 32;) {
                display();
                if (v % 1 == 0)
                    v++;
            }

            System.out.println("Is your number in the set?");
            String response5 = scan.nextLine();

            if (response1.equalsIgnoreCase("y"))
                number += 1;
            if (response2.equalsIgnoreCase("y"))
                number += 2;
            if (response3.equalsIgnoreCase("y"))
                number += 4;
            if (response4.equalsIgnoreCase("y"))
                number += 8;
            if (response5.equalsIgnoreCase("y"))
                number += 16;

            return number;
        }

    }
}
好的,我猜的是你想的0到31之间的数字。现在,我被要求选择5个集合及其补充,我使用二进制文件来生成集合。现在,即使我总共有10组,我只想显示5组,这是随机出现的地方,我应该让它在补码和原始码之间随机选择,所以让我们假设在一组中显示第一个补码,然后问我的号码是否在其中,我说不,然后下一组数字显示这次是第二套的原件。
我搞不懂的是怎么做……第一个问题是在原始问题和补充问题之间进行彻底的选择&然后做同样的事情,但第二个问题如此等等,直到第五个问题。

对于初学者来说,既然您正在创建java.util.Random的实例,那么实际使用它怎么样?然后,由于您希望表示数字集,请尝试使用java.util.HashSet来表示这些数字集


你想用你的代码实现什么?我对这件事一无所知。尝试使用有意义的变量名,并将其分解为更小的方法。

您能发布您已经编写的代码吗?我不认为您正在尝试做什么。能否举例说明您期望程序的输入和输出是什么?我注意到你创建了一个名为generator的随机程序,但不要在任何地方使用它。这是一个我必须做的实验室,但我只是想得到一些想法。这是我第一次上编程课。