繁体   English   中英

输入 100 个数字。 确定哪个数字更多:正数或负数

[英]Enter 100 numbers. Determine which number is more: positive or negative

所以我有这个作业,我必须输入 100 个数字,然后确定它是正数还是负数,尝试了几个小时但仍然没有成功。

输入 100 个数字。 确定哪个数字更多:正数或负数。 (这是字面上的任务,没有更多的写)

在处理问题时,首先要考虑清楚。 然后写代码。

  1. 初始化一个正或负计数器。
  2. 开始阅读数字
  3. 根据数字的符号增加计数器。
  4. 继续 (2) 直到已读取 100 个数字。
  5. 根据 (1) 内容的结果和读取的数字计数打印出信息性信息。

如果您只是想找到正数或负数的最高幅度,您可以通过检查绝对值很容易地做到这一点:

import java.util.concurrent.ThreadLocalRandom;

public class MyClass
{
    public static void main(String args[])
    {
        int randomNum = 0;
        int largestMagnitude = 0;
        
        for(int i = 0; i < 100; i++)
        {
            randomNum = ThreadLocalRandom.current().nextInt(-1000, 1000);
            if(Math.abs(randomNum) > Math.abs(largestMagnitude))
            {
                largestMagnitude = randomNum;
            }
        }
        
        System.out.println("The highest magnitude of number generated was " + largestMagnitude);
    }
}

这是对提供答案的人的建议。 当问题是家庭作业时(正如 OP 明确指出的那样),重要的是要问他们目前正在学习什么,以便正确地构建课程答案。 基本上,对于行业而言,最正确的答案可能不是(而且通常不是)对其所教内容的最正确答案。

@Janis Klein,您目前在课堂上讲的内容非常重要。 例如,如果您正在学习排序,答案可能是实现某种排序算法。 当您对一组数字进行排序时,最负和最正的将是排序集合中的头和尾值。 如果您正在学习列表和集合,答案可能是实现某种链接列表,其中数字以自然顺序插入(无需排序)。 就像我之前的例子一样,一旦你将所有 100 个值都插入到这个列表中,头和尾值就是最正值和最负值。

但是,如果您正在学习的只是进行值的比较,那么您只需要两个变量(一个用于最正,一个用于最负),您需要做的就是比较传入的值并将它们存储到如果需要,正确的变量。 例如,第一个值将是最积极的和最消极的。 第二个传入值将是最正数或最负数(假设始终收到唯一值)。 从第三个值开始,传入的值可能是最正的、最负的,或者两者都不是; 在这种情况下,传入的值将被丢弃。 最后,最负和最正的值将是存储在相应变量中的值。

同样,必须根据您目前在课堂上学习的内容来确定答案的范围。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM