首页 / JAVA / 房子用java绘图(控制台)
房子用java绘图(控制台)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了房子用java绘图(控制台),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2170字,纯文字阅读大概需要4分钟。
内容图文
![房子用java绘图(控制台)](/upload/InfoBanner/zyjiaocheng/780/a9bd4e51f3cf4a88848b21f91192ab88.jpg)
我必须制作一个程序,要求用户输入高度和长度(均为偶数),然后程序将绘制一个房子.房子的屋顶是(宽度/ 2)行数.示例程序应如下所示:
Enter height and width of the house you want me to draw (must be even numbers): 10 10
....**
.../..../...../....../........----------
|........|
|........|
|........|
|........|
|........|
|........|
|........|
|........|
|........|
|........|
----------
但这是我一直只为屋顶得到的,使用10和10的宽度和高度(我还没有开始身体):
height: 10
width: 10
....**
.../...../...../...../..----------
有谁知道如何放置正确的空间以使其看起来像样品?我的代码是:
import java.util.Scanner;
public class QuestionCode {
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
int height = 0, width = 0;
String space = ".", left = "/", right = "\\";
System.out.print("height: ");
height = keyboard.nextInt();
System.out.print("width: ");
width = keyboard.nextInt();
System.out.println();
int outerSpace = ((width/2)-1);
int halfWidth = ((width/2)-2);
while (outerSpace > 0) {
System.out.print(space);
--outerSpace;
}
System.out.println("**");
while (halfWidth >= 0) {
outerSpace = ((width/2)-2);
while (outerSpace > 0) {
System.out.print(space);
--outerSpace;
}
System.out.print(left);
int innerSpace = 2;
while (innerSpace < (width-2)) {
System.out.print(space);
innerSpace *= 2;
}
System.out.println(right);
halfWidth--;
}
while (width > 0) {
System.out.print("-");
--width;
}
}
}
解决方法:
在这下你会找到一个使用for循环的命题.
在这种类型的练习中它更有效,因为你事先知道你要循环多少次.
基本上,我使用除宽度和高度以外的其他两个变量:
heightRoof:知道我想为我的屋顶排多少行.
中:要知道在停止前我必须在第一行画出多少分.
从那里开始,使用嵌套循环是一种方法,因为我们确切地知道我们想要拥有多少点和行,其余的是逻辑思维.
int width = 10;
int height = 10;
int middle = width % 2 == 0 ? (width / 2) - 1 : width / 2;
int heightRoof = middle+1;
for (int i = 0 ; i < heightRoof ; i++){
for (int j = middle - i - 1 ; j >= 0 ; j--){
System.out.print(".");
}
if (i == 0) {
System.out.print("**");
System.out.println();
continue;
} else {
System.out.print("/");
for (int k = 0 ; k < 2*i ; k++){
System.out.print(".");
}
}
System.out.print("\\");
System.out.println();
}
for (int i = 0 ; i < width ; i++){
System.out.print("-");
}
内容总结
以上是互联网集市为您收集整理的房子用java绘图(控制台)全部内容,希望文章能够帮你解决房子用java绘图(控制台)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。