java打印各种菱形
/**
* 类说明
*
* @author 曾修建
* @version 创建时间:2014-7-23 上午09:50:46
*/
public class Diamond { public static void getDia(int n) {
System.out.println("第一个 :");
for (int i = 0; i < n/2+1; i++) {
for (int j2 = 0; j2 < n/2+1-i; j2++) {
System.out.print(" ");
}
for (int j2 = 0; j2 < 2*i+1; j2++) {
System.out.print("+");
}
System.out.println();
} for (int i = n/2; i > 0; i--) {
for (int j = 0; j < n/2-i+2; j++) {
System.out.print(" ");
}
for (int j = 0; j < 2*i-1; j++) {
System.out.print("+");
}
System.out.println();
} System.out.println("第二个 :");
for(int i = 1;i <= n;i++){
if(i <= n/2 + 1){
for(int k = 1;k <= n/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 -(n/2 + 1));k++){
System.out.print(" ");
}
for(int k = 1;k <= (2 *(n/2 + 1) - i);k++){
System.out.print("+ ");
}
System.out.println();
}
} System.out.println("第三个 :");
for(int k = 1;k <= n/2 + 1;k++){
for(int i = 1;i <= (n/2 + 1 - 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 = n/2 ;k >=1;k--){
for(int i = 1;i <= (n/2 + 1 - 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();
}
} public static void main(String[] args) {
getDia(9);
}
}
结果例如以下:
第一个 :
+
+++
+++++
+++++++
++++++++
+++++++
+++++
+++
+
第二个 :
+
+ +
+ + +
+ + + +
+ + + + +
+ + + +
+ + +
+ +
+
第三个 :
*
* *
* *
* *
* *
* *
* *
* *
*
java打印各种菱形的更多相关文章
- Java打印空心菱形
使用Java打印空心菱形 public static void main(String[] args) { int n = 5; //这里输出菱形的上半部分 for (int i = 1; i < ...
- java 打印空心菱形的两种实现
第一种实现方式: //打印给定行数的空心菱形 public static void draw(int size){ if (size % 2 == 0) //如果是偶数行变为奇数 { size++; ...
- java打印正金字塔,倒金字塔和“水影”金字塔
java打印正金字塔,倒金字塔和"水影"金字塔 --------原创文章,若要转载,请注明出处 小小少年 闲来无事,想起自己初学java的时候做的经典的无非就是打印出一些有意思 ...
- 案例>>>用绝对值的方法打印出菱形
import java.util.Scanner; public class Test { public static void main(String[] args) { Scanner sc = ...
- c语言打印空心菱形
***算法:把菱形的中心看成坐标的原点(,),由此可以知道,如果|x| + |y| <= n;则打印输出"*"号,否则打印输出" " int mai(){ ...
- Java 打印金字塔 or 打印带数字的金字塔 (Java 学习中的小记录)
Java 打印金字塔 or 打印带数字的金字塔 (Java 学习中的小记录) 作者:王可利(Star·星星) 效果图: 代码如下: class Star8 { public static void m ...
- 关于这两天研究Java打印pdf方法的记录
这两天在研究Java调用打印机打印PDF文件的方法,学到了不少东西,特别来记录一下. 关于Java打印网上最多的而且也是Java正统的打印方法就是使用PrintService,一套比較标准的打印代码例 ...
- Java打印
Java打印 import java.awt.Color; import java.awt.Font; import java.awt.FontMetrics; import java.awt.Gra ...
- Java温故而知新-空心菱形
空心菱形 今天做题练手,题目是空心菱形,一开始没什么思路,去网上找了找,发现很难找到讲的通透的,自己现在独立做出来了,记录一下,以备后用. * * * * * * * * * * * * * * * ...
随机推荐
- Struts2获取演示示例教程
回想Struts2的使用过程,网上搜的教程多多少少都会有点问题.又一次记录下创建过程,方便查阅. 1.下载Struts2的jar包 下载地址:http://archive.apache.org/dis ...
- Delphi的指针 good
Pointers are like jumps, leading wildly from one part of the data structure to another. Their introd ...
- openssl之BIO系列之5---CallBack函数及其控制
CallBack函数及其控制 ---依据openssl doc/crypto/bio/bio_set_callback.pod翻译和自己的理解写成 (作者:DragonKin ...
- Thinkphp框架拓展包使用方式详细介绍--验证码实例(十一)
原文:Thinkphp框架拓展包使用方式详细介绍--验证码实例(十一) 拓展压缩包的使用方式详细介绍 1:将拓展包解压:ThinkPHP3.1.2_Extend.zip --> 将其下的 \ ...
- HDU 4284 Travel
据说是TSP经典问题...可以用状态压缩做.但是看到数据量,就厚着脸皮上搜索了...先floyd预处理每对点间的最小消费,然后只考虑要去的城市就可以了,这样的话城市数最多16个...当时就暴搜了... ...
- Android中的跨进程通信方法实例及特点分析(二):ContentProvider
1.ContentProvider简单介绍 在Android中有些数据(如通讯录.音频.视频文件等)是要供非常多应用程序使用的.为了更好地对外提供数据.Android系统给我们提供了Content P ...
- 求第i个小的元素 时间复杂度O(n)
#include<iostream> //求第i个小的元素 时间复杂度O(n) #include<cstdlib> #include<ctime> using na ...
- nodejs启动守护程序pm2
nodejs启动守护程序pm2 by 伍雪颖 做了个应用,server放阿里云,只是server总会自己断,后来写了个心跳程序,就是检測应用线程是否还在,不在就再启动, 这种方法好笨重啊,后来发现no ...
- Matlab---串口操作---数据採集篇
matlab功能强大,串口操作也非常easy.相信看过下面两个实验你就能掌握咯! 開始吧! 实验1: 从电脑COM2口读取数据.并将数据保存在TXT文件里,方便数据分析,以下是M脚本: %名 称:Ma ...
- poj3254(状压dp)
题目连接:http://poj.org/problem?id=3254 题意:一个矩阵里有很多格子,每个格子有两种状态,可以放牧和不可以放牧,可以放牧用1表示,否则用0表示,在这块牧场放牛,要求两个相 ...