Java 如何构建Windows
当程序启动时,它将向用户询问四条信息:Java 如何构建Windows,java,Java,当程序启动时,它将向用户询问四条信息: 这座大楼将有多少层楼高 每个楼层有多少个窗口 每扇窗户有多宽 每扇窗户有多高 程序将对每一项设置限制。限制应该是问题的一部分,比如您希望窗口有多宽?(1-5)。如果用户超出了上限或下限,则应输出一条消息并再次查询用户。这种情况应尽可能多地发生,以使数值在限制范围内。(正如您可以看到下面的代码,我已完成此部分) (我对这部分有问题)我的窗户的数量和大小应该用循环控制。但是,我不允许使用大量的“如果”语句。每个问题的上限应作为常数包含在内。例如,final i
您希望窗口有多宽?(1-5)。
如果用户超出了上限或下限,则应输出一条消息并再次查询用户。这种情况应尽可能多地发生,以使数值在限制范围内。(正如您可以看到下面的代码,我已完成此部分)
(我对这部分有问题)我的窗户的数量和大小应该用循环控制。但是,我不允许使用大量的“如果”语句。每个问题的上限应作为常数包含在内。例如,final intmaxstorieshhigh=12代码>如果常量发生更改,我的程序应该能够处理新的限制,而无需任何其他更改。我应该使用什么循环来控制窗口的数量和大小
import java.util.Scanner;
public class BuildingAssign {
public static void main (String [] args){
int input;
Scanner in = new Scanner(System.in);
do {
System.out.print("How many stories high the building will be? (1-5): ");
input = in.nextInt();
}while (input < 1 || input > 5);
do {
System.out.print("How many windows on each story? (1-10): ");
input = in.nextInt();
}while (input < 1 || input > 10);
do {
System.out.print("How wide each window will be? (3-5): ");
input = in.nextInt();
}while (input < 3 || input > 5);
do {
System.out.print("How tall each window will be? (4-6): ");
input = in.nextInt();
}while (input < 4 || input > 6);
}
}
import java.util.Scanner;
公共类构建分配{
公共静态void main(字符串[]args){
int输入;
扫描仪输入=新扫描仪(系统输入);
做{
系统输出打印(“建筑物将有多少层楼高?(1-5):”;
input=in.nextInt();
}而(输入<1 | |输入>5);
做{
System.out.print(“每个故事有多少个窗口?(1-10):”;
input=in.nextInt();
}而(输入<1 | |输入>10);
做{
系统输出打印(“每个窗口有多宽?(3-5):”;
input=in.nextInt();
}而(输入<3 | |输入>5);
做{
系统输出打印(“每个窗口有多高?(4-6):”;
input=in.nextInt();
}而(输入<4 | |输入>6);
}
}
看来你已经知道怎么做了。基本上,你会做同样的事情,你已经做了其他人,但不是硬编码的参数,你会把变量代替。比如说,
final int MAXSTORIESHIGH= 12;
final int MINSTORIESHIGH = 1;
do {
System.out.print("How many stories high the building will be? (1-5): ");
input = in.nextInt();
}while (input < MINSTORIESHIGH || input > MAXSTORIESHIGH);
final int maxstorieshhigh=12;
最终整数分钟数高=1;
做{
系统输出打印(“建筑物将有多少层楼高?(1-5):”;
input=in.nextInt();
}而(输入<分钟数高| |输入>最大存储高);
如果要更改最大值和最小值,只需更改变量的值。谢谢,还有一个问题。我应该在哪里使用print和println语句在控制台窗口上绘制建筑。假设建筑物的高度是2,那么它应该是两层楼。如果你不知道我在说什么,请点击我提供的链接。。。提前感谢!哈哈,这比你原来的问题复杂多了。我会跳过这一步,因为控制台上的绘图比你想象的要烦人得多,它们看起来不太好,也没有任何方法导出到应用程序。我将学习实际绘图的图形界面,幸运的是java非常擅长。Java2D API非常好,是我个人最喜欢的API之一。:)如果你还想去,我可以给你一些建议。我的方法是在建筑的每一行中循环,看看要画什么。如果它是屋顶或地板,您将绘制*********
,如果它是窗边,您将绘制***
,其中每个窗重复绘制***
,假设宽度为3。如果它是一个窗口中心,你会画出“代码> ****/CODE”,其中中间的空间是宽度。因为它看起来不像很多其他人会像我已经回答的那样回答这个问题,而且你也会继续问一个后续问题,我问你接受我的答案吗?