【问题标题】:JAVA - Program functions as input output, input output; want to make it so program functions as input input, output, output, respectivelyJAVA - 程序功能作为输入输出,输入输出;想让程序分别作为输入输入、输出、输出
【发布时间】:2017-09-21 02:22:02
【问题描述】:

我刚开始学习 Java,我想克服在尝试为这个“问题”创建 Java 程序时出现的障碍。这是我必须为其创建程序的问题:

Tandy 喜欢分发糖果,但只有 n 颗糖果。对于她给第 i 个糖果的人,她给那个人 i 糖果。例如,她先给 Randy 1 颗糖果,然后给 Pandy 2 颗糖果,然后是 Sandy 3。给定 n,她可以给多少人糖果?

输入格式
第一行是一个整数 x,表示测试用例的数量。 接下来的 x 行将包含一个正整数 n。

样本输入
2
1
5

输出格式
x 行,每行包含一个整数,表示 Tandy 可以给多少人糖果。

样本输出
1
2

为了解决这个问题,我创建了一个程序,它运行良好,但与问题所要求的不匹配。 代码:

import java.util.Scanner; 

public class PRB1CandyGame {

    public static void main(String[] args)
    {
        Scanner cases = new Scanner(System.in);
        int repeats = cases.nextInt();
        while (repeats > 0)
        {
            int x = cases.nextInt();
            int i = 1;
            for(i = 1; x-i>=0; i++) 
            {
                x = x-i;    
            }   
            System.out.println(i-1);
            repeats--;
        }
    }  
}

(如果代码混乱,请见谅!)

我的代码包含了“病例”的数量,然后这就是我可以输入多个糖果的次数,以获得它可以提供的人数。但是,我的程序获取糖果的数量,然后立即输出人数,而我希望它接受 all 输入(输入的数量基于用户输入的数字例),然后输出 all 值,而不是我拥有的值。如果你能向我解释我如何做到这一点,那将有很大帮助。

谢谢!

【问题讨论】:

  • 我希望它接受所有输入考虑将它们作为命令行参数传递

标签: java input output


【解决方案1】:

据我了解,您希望在开始处理答案之前先将输入存储在某个位置,然后一次输出所有答案。

老实说,我认为该问题希望您将每个测试用例作为输入处理,然后输出结果。所以你现在走在正确的轨道上。

但是,如果您想获取所有输入然后处理每个输入然后输出,请使用数组,因为您知道测试用例的大小。您还需要为输出创建一个相同大小的数组,然后处理输入数组中的每个第 i 个项目,并将每个结果存储在输出数组中相同的第 i 个位置。

希望对你有帮助

【讨论】:

  • 您能否详细解释一下,因为我不知道如何使用数组。 【刚开始学java!】
  • 我建议您在tutorialspoint.com/java/java_arrays.htm 之类的地方阅读有关数组的内容。数组用于存储相同数据类型的项目的固定集合。所以一个数组可以包含 [1,2,3,4,5,6,7].... 要创建一个数组,请编写: int [] array = new int [sizeOfArray];输入到它你使用 array[ith] = 1;..... 这个链接解释得更好
【解决方案2】:

好吧,据我了解您的问题,您知道输入及其类型(数据类型)是什么。

然后是输入格式,您可以在其中输入一些示例整数输入。此时您可以使用数组(因为您使用的是相同的数据类型)并且您也知道数组的大小。

接下来,输入的数量取决于用户输入的案例数量。

你可以在这里做的是使用两个整数数组,用户可以使用 Scanner 类输入一些值。

最后使用 for 循环输出或打印值。

更多信息请参考以下链接

https://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html

https://www.flowerbrackets.com/arrays-in-java/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-28
    • 2012-08-17
    相关资源
    最近更新 更多