这是我的 Java 课程中的一个作业,我们必须使用方法来解决问题。我已经完成了大部分工作,但我遇到了麻烦。
任务:
图表有助于显示数据。创建一个类似于下图的表。生成的数字将被创建为 10,000 美元到 40,000 美元之间的随机数字。数字和图表显示了 10 月份批发商的销售额。请注意,它们每周 7 天不开放。(星期日是他们关闭的那一天,而在相关年份的 10 月 1 日、8 日、15 日、22 日和 29 日是星期日。生成该图表的原因是,每颗星代表 1,000 美元的销售额。
您的图表看起来不会完全像这样,因为每个程序中生成的随机数都不同。如图所示(右对齐)打印列中的日期。此外,星期一的销售额总是超过 30,000 美元,星期二的销售额总是超过 20,000 美元。星期六的销售额总是低于 15,000 美元。
样本输出:
Day Daily Sales Graph
2 37081 *************************************
3 28355 ****************************
4 39158 ***************************************
5 24904 ************************
6 28879 ****************************
7 13348 *************
9 38791 **************************************
10 32564 ********************************
11 23867 ***********************
12 18154 ******************
13 25830 ***********************
14 14092 **************
16 36861 ************************************
17 26207 ************************
18 10921 **********
19 16573 ****************
20 33423 *********************************
21 12766 ************
23 33770 *********************************
24 28823 **************************
25 38883 **************************************
26 20959 ******************
27 16262 ****************
28 13269 *************
30 33557 *********************************
31 22579 **********************
我这里有大部分:
import java.util.*;
public class Prog310t
{
public static Integer randomNumbers (int minNumber, int maxNumber)
{
Random gen = new Random();
return (gen.nextInt(maxNumber - minNumber + 1) + minNumber);
}
public static String starLine (int numberOfAsterisks)
{
String stars = "";
for (int i = 0; i < numberOfAsterisks; i++)
stars = stars + "*";
return stars;
}
public static void main (String args [])
{
int randomNumber;
System.out.println("Day\tDaily\tSales Graph");
for (int x = 2; x <= 31; x++)
{
if (x == 8 || x == 15 || x == 22 || x == 29)
{
System.out.println();
}
if (x == 2 || x == 9 || x == 16 || x == 23 || x == 30)
{
randomNumber = randomNumbers(30000, 40000);
System.out.println(x + "\t" + randomNumber + "\t" + starLine(randomNumber / 1000));
}
if (x == 3 || x == 10 || x == 17 || x == 24 || x == 31)
{
randomNumber = randomNumbers(20000, 40000);
System.out.println(x + "\t" + randomNumber + "\t" + starLine(randomNumber / 1000));
}
if (x == 7 || x == 14 || x == 21 || x == 28)
{
randomNumber = randomNumbers(10000, 15000);
System.out.println(x + "\t" + randomNumber + "\t" + starLine(randomNumber / 1000));
}
}
}
}
其他日子我将如何让它输出?它只输出星期日(空白)、星期一、星期二和星期六。如何让它在其他日子输出而不必输入每一天的数字?