java - 检查数学函数是否有效

标签 java java.util.scanner

我得到了函数 {1,2,3,4,5}。我必须接收用户关于他想要多少个有序对的输入,然后验证该函数是否有效(x 坐标的值必须在 1 到 5 之间,并且 x 坐标不能重复)。我知道如何循环并检查 X 的值是否在 1 到 5 之间,但是,我在检查字符串中是否有重复元素时遇到问题。我为 x 小于 1 且大于 5 编写了条件表达式,但我对如何编写检查重复元素的表达式感到困惑。有人可以帮我吗?这是我到目前为止所拥有的:

import java.util.Scanner;

public class Functions
{
    public static void main (String args [])
    {
        Scanner in = new Scanner (System.in);

        int []domain = new int [5];
        int [] range = new int [5];
        int orderedPairs = 0;

        System.out.println ("Enter the number of ordered pairs please: ");
        orderedPairs = in.nextInt();
        while (orderedPairs < 0 || orderedPairs > 5)
        {
            System.out.println ("This input is invalid. Enter a number between 0 and 5 and try   again:");
            orderedPairs = in.nextInt ();
        }

        for (int i = 0; i < orderedPairs; i++)
        {
            System.out.println ("Enter the x-coordinate please: ");
            domain [i][0] = in.nextInt();

            System.out.println ("Enter the y-coordinate please: ");
            range [i][0] = in.nextInt();
        }

        for (int i = 0; i < orderedPairs; i++)
        {
            System.out.println ("f(" + domain [i][0] + "): " + range [i][0]);
        }

        for (int i = 0; i < orderedPairs;i++)
        {
            if (domain [i][0] > 5 || domain [i][0] < 1)
            {
                function = false;
            }

            for (int n = i + 1; n < orderedPairs; n++)
            {
                if (domain[i] == domain [n] && range [n] != range [i])
                {
                    function = false;
                }
            }
        } 
    }
}

编辑: 显然,这就是所需要的一切! :)

最佳答案

最简单的方法是这样的:

1) 循环所有域。

2) 对于每个域,检索其值。然后循环遍历域,计算其值等于检索到的值的域的数量。

3) 如果每个域的该值不是 1,则报告错误。

关于java - 检查数学函数是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8902944/

相关文章:

java - 单击按钮以相同的形式打开文本 Pane

java - 使用 java 将数据列表写入 Excel 文件中的特定列所需的帮助

java - 全局扫描仪可以工作一次,但在第二次运行时会变得有点毛茸茸的

java - Scanner.nextInt 上的 InputMismatchException

java - 在Java中从扫描仪读取可变宽度标记?

java - 为什么 Scanner.close() 在 Java 中有用?

java - Dagger 2 构建在单个 Inject 注释上失败

从 Firefox 74/75 发布 multipart/form-data 并在服务器端使用 Apache AJP 连接器时出现 java.io.IOException

java - 当字符串输入参数的第一个字符不是预期的字符时抛出什么异常?

带命令的 Java 聊天服务器