闲来无事,练习了一下Java基础中的循环语句。练习循环语句,当然少不了,用*打印出来三角形、空心三角形、菱形等这样的几何图形。

粗心大意,失误两次:

一、三角形

遇到一些小问题:

、金字塔

由于三角形和金字塔的代码差不多,只有少部分更改,图也可以看的很清楚。所以下面只写一部分代码好啦。

代码实例:

//作者:我
//功能:镂空金字塔
//时间:2018年1月10日 public class Hello{
public static void main(String args[]){
//死去活来法
//int lay=4;
int lay=7;
for (int i=1;i<=lay;i++ )
{
//找出空格规律
//1->3 2->2 3->1 4->0
for(int k=1;k<=lay-i;k++)
{
System.out.print(" ");
}
//打印*
/*不正确的
for(int j=1;j<=i;j++){
System.out.print("*");
}*/
//打印*的规律
//1->1 2->3 3->5 ....
for(int j=1;j<=i*2-1;j++){ if(i==1||i==lay){
//i代表层
System.out.print("*");
}else{
//如果是第一个*
if(j==1||j==i*2-1){
System.out.print("*");
}else{
System.out.print(" ");
} }
}
//打印换行
System.out.println();
}
}
}

三、菱形

菱形的代码是我在网上找的,看懂了逻辑。自己也玩了一下了,在hangshu取值为双数时,实心菱形一点bug。

代码实例:

//网上查找的代码
public class Hello3{
public static void main(String args[]){
int hangshu = 20;
int yiban = hangshu / 2 + 1;
int yibanduo = hangshu / 2; System.out.println("实心菱形:");
for(int i = 1;i <= hangshu;i++){
if(i <= hangshu/2 + 1){
for(int k = 1;k <= hangshu/2 + 1- i;k++){
System.out.print(" ");
}
for(int k = 1;k <= i;k++){
System.out.print("* ");
}
System.out.println();
}else{
for(int k =1;k <= (i -(hangshu/2 + 1));k++){
System.out.print(" ");
}
for(int k = 1;k <= (2 *(hangshu/2 + 1) - i);k++){
System.out.print("* ");
}
System.out.println();
}
} System.out.println("空心菱形:");
for(int k = 1;k <= yiban;k++){
for(int i = 1;i <= (yiban - k);i++){
System.out.print(" ");
}
System.out.print("*");
for(int i = 1;i <= ( (k - 2) * 2 + 1);i++){
System.out.print(" ");
}
if(k != 1){
System.out.print("*");
}
System.out.println();
}
for(int k = yibanduo;k >=1;k--){
for(int i = 1;i <= (yiban - k);i++){
System.out.print(" ");
}
System.out.print("*");
for(int i = 1;i <= ( (k - 2) * 2 + 1);i++){
System.out.print(" ");
}
if(k != 1){
System.out.print("*");
}
System.out.println();
}
}
}

Java 写三角形 空心三角形 菱形 空心菱形的更多相关文章

  1. c++打印实心菱形,空心三角形,十字星,空心正方形,实心平行四边形

    今天翻资料的时候,无意间发现了一个文件,是刚接触编程的时候用c++写的一段程序,我称之为"图形打印机",想着把所有图形都打印出来,后来发现其实每种图形的代码都是一个思路,就不想做重 ...

  2. hdoj 2091 空心三角形

    空心三角形 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  3. CSS画一个三角形,CSS绘制空心三角形,CSS实现箭头

     壹 ❀ 引 这两天因为项目工作较少,闲下来去看了GitHub上关于面试题日更收录的文章,毕竟明年有新的打算.在CSS收录中有一题是 用css创建一个三角形,并简述原理 .当然对于我来说画一个三角形是 ...

  4. 纯CSS制作空心三角形和实心三角形及其实现原理

    纯CSS制作空心三角形和实心三角形及其实现原理 在一次项目中需要使用到空心三角形,我瞬间懵逼了.查阅了一些资料加上自己的分析思考,终于是达到了效果,个人感觉制作三角形是使用频率很高的,因此记录下来,供 ...

  5. HDU - 2091 空心三角形 水题,但是有点坑...

    空心三角形 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  6. hdu 2091 空心三角形

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=2091 空心三角形 Description 把一个字符三角形掏空,就能节省材料成本,减轻重量,但关键是为 ...

  7. css 三角形空心三角形的简单实现

    <style> #talkbubble { width: 120px; height: 80px; position: relative; -moz-border-radius: 10px ...

  8. 纯 CSS 实现实心三角形和空心三角形

    一.实心三角形 1.代码 .div-angles{ width:; height:; border-style: solid; border-width:30px; border-color: tra ...

  9. 【题解】三角形 [P1222] / 三角形覆盖问题 [HNOI2012] [P3219]

    [题解]三角形 [P1222] / 三角形覆盖问题 [HNOI2012] [P3219] 传送门: 三角形 \(\text{[P1222]}\) 三角形覆盖问题 \(\text{[HNOI2012] ...

随机推荐

  1. COM-IE-(2)

    # -*- coding:UTF-8 -*- import sys from time import sleep import win32com.client from win32com.client ...

  2. More DETAILS! PBR的下一个发展在哪里?

    最近几年图形学社区对PBR的关注非常高,也许是由于Disney以及一些游戏引擎大厂的助推,也许是因为它可以被轻松集成进实时渲染的游戏引擎当中,也许是因为许多人发现现在只需要调几个参数就能实现具有非常精 ...

  3. Effective Java 第三版——6. 避免创建不必要的对象

    Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...

  4. django的CMS系统(内容管理系统)

    一.什么是CMS系统 CMS具有许多基于模板的优秀设计,可以减少开发的成本. CMS的功能并不只限于文本处理,它也可以处理图片.Flash动画.声像流.图像甚至电子邮件档案. CMS还分各个平台脚本种 ...

  5. vue2.0---vue-router总结(项目基于vue-cli)

    vue2.0---vue-router总结(项目基于vue-cli) 1. 在项目中安装: npm install vue-router --save 2. 在项目中的引入: // The Vue b ...

  6. python_web----------数据可视化从0到1的过程

    一.数据可视化项目配置 1. django + Echarts 2. 服务器(linux:Ubuntu 17.04 (GNU/Linux 4.10.0-40-generic x86_64)) 3. I ...

  7. 《算法 (第4版)》【PDF】下载

    <算法 (第4版)>[PDF]下载链接: https://u253469.ctfile.com/fs/253469-231196349 (第4版)>[PDF]"  TITL ...

  8. ajaxFileUpload上传文件简单示例

    写在前面: 上传文件的方式有很多,最近在做项目的时候,一开始也试用了利用jquery的插件ajaxFileUpload来上传大文件,下面,用一个上传文件的简单例子,记录下,学习的过程~~~ 还是老样子 ...

  9. JMeter3.0脚本中文乱码解决方法

    修改apache-jmeter-3.0\bin\jmeter.properties文件,编辑jsyntaxtextarea.font.family=宋体.

  10. Servlet小总结

    Servlet Servlet(服务器端小程序)是使用Java语言编写的服务器端程序,像JSP一样,生成动态的Web页.Servlet主要运行在服务器端,并由服务器调用执行. Servlet处理的基本 ...