导航:首页 > 编程语言 > java打印六种三角

java打印六种三角

发布时间:2023-03-17 13:59:25

java打印空心三角型,和等腰三角型,最好带有注释

一:设计思路:

1、空心的等腰三角形,用*作为三角形的边,用空格做格式控制。

2、第一行输出一个*号,且要放在正中央,具体位置需要根据三角形的高度来确定。

3、因为是等腰三角形,所以每一行由*号组成的有效字符串长度比上一行多2个。

4、综合2、3,该三角形的*号间的有效字符串长度,按1、3、5、7...规律变化

5、所以,第一行输出的*号位置由三角形的高决定,设高度为h,则第一行*号位置为第(2*h-1)/2+1,简化后为h(因为单数/2后的0.5在int型变量计算中被忽略)。

6、空心的实现中,从第二行输出*号后开始插入空格,个数每行加2,直到最后一行,不包含最后一行。

二:实现方法

1、定义三角形的高,改变该值,可以改变三角形的大小。

2、根据高闹碰度,将*号放在对应h位置,用空格做格式控制,空格个数每行-1。

3、如果是第二行且不是最后一行(大于1且小于h),在输出*号后,输出空格,以后每行多输出两个空格

4、最后一行全部输出*号液野谈

//java代码:设计空心等腰三角形
{

/**
*一:设计思路:
*1、空心的等腰三角形,用*作为三角形的边,用空格做格式控制。
*2、第一行输出一个*号,且要放在正中央,具体位置需要根据三角形的高度来确定。
*3、因为是等腰三角形,所以每一行由*号组成的有效字符串长度比上一行多2个。
*4、综合2、3,该三角形的*号间的有效字符串长度,按1、3、5、7...规律变化
*5、所以,第一行输出的*号位置由三角形的高决定,设高度为h,则第一行*号位置为第(2*h-1)/2+1,
*简化后为h(因为单数/2后的0.5在int型变量计算中被忽略)。
*6、空心的实现中,从第二行输出*号后开始插入空格,个数每行加2,直到最后一行,不包含最后一行脊旦。
*二:实现方法
*1、定义三角形的高,改变该值,可以改变三角形的大小。
*2、根据高度,将*号放在对应h位置,用空格做格式控制,空格个数每行-1。
*3、如果是第二行且不是最后一行(大于1且小于h),在输出*号后,输出空格,以后每行多输出两个空格
*4、最后一行全部输出*号
*三:图示,5层空心等腰三角形
**
***
***
***
**********
*
**/

//定义三角形的高度,改变此值,可改变三角形的大小,必须大于等于2
publicstaticfinalintHEIGHT=9;

publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub

intcount=HEIGHT-1; //定义输出空格个数,初值为第一行要输出的空格个数

System.out.println("空心等腰三角形,高度:"+HEIGHT);

for(introw=1;row<=HEIGHT;row++,count--){

//输出空格
for(inti=0;i<count;i++){
System.out.print("");
}
System.out.print("*");

//是第一行,则直接换行,最后一行输出全部*号,否则从第二行开始输出空格,每行+2
if(row==1){
System.out.println();
}elseif(row==HEIGHT){
for(inti=0;i<row*2-2;i++){
System.out.print("*");
}
System.out.println();
}elseif(row>1&&row<HEIGHT){
for(inti=0;i<row*2-3;i++){
System.out.print("");
}
System.out.println("*");
}
}
}

}

运行结果图:

理解思路和实现方法后,阅读代码会简单些,注意格式控制中的算式,都是有规律可循的。

② 怎么用Java的控制台输出各种三角形

比如制要打印如下三角
*
*1*
*111*
*11111*(应该都是“*”但是不让打)
这个是4行组成的,第一个行1个 第二行3个 第三行5个 第四行7个
也就是说每行*的个数和行的关系就是 (2*行数-1)
知道没行要打多少个*了之后,就要考虑空格,空格也是有规律的 一行3 二行2 三行1 四行0
可以看出,行与空格的关系就是:总行数-当前行数=当前行的空格数
现在规律找到了,写代码就容易了,4行 那外层循环就是4次,然后没一行都要先打空格,这是内层第一个循环,空格打完了 打* 这是内层第二个循环
for(int i=1;i<=4;i++){
for(int j=0;j<4-i;j++){
System.out.print(" ");
}
for(int k=0;k<2*i-1;k++){
System.out.print("*")
}
System.out.println();//这个打印起换行作用
}

③ 如何用java打出如下三角形

就是杨辉三角的实现:

importjava.util.*;//导包
classDemo//主类
{
publicstaticvoidmain(String[]args)//创建一个对象用来调用,实现控制台输入输出,因为输入的是字符,所以a.show调用对象的时候强调转换一下。
{
YangHuia=newYangHui();
Scanners=newScanner(System.in);
System.out.println("请输入一个数字代表行数:");
Stringstr=s.nextLine();
a.show(Integer.valueOf(str));
}
}
classYangHui//对象调用类名
{
publicvoidshow(intn)
{
int[][]s=newint[n+1][n+1];//定义二维数组,因为是n行,所以定义n+1,防止溢出(循环从1开始)
for(intx=1;x<=n;x++)//此大循环用于控制行数
{
for(intz=1;z<=n+1-x;z++)//此小循环用于控制每行前面的空格数,越往后越不对齐,自己调整一下
{
System.out.print("");
}
for(inty=1;y<=x;y++)//此循环用于控制每行个数
{
if(y==1)//固定每行第一个数的值,并赋予二维数组,并打印
{
System.out.print(y+"");
s[x][y]=1;
}
elseif(y==x)//固定每行最后一个数的值,并赋予二维数组,并打印
{
System.out.print(1+"");
s[x][y]=1;
}
else//用于打印出除开每行第一个与最后一个的中间数值,并赋予二维数组
{
System.out.print(s[x-1][y-1]+s[x-1][y]+"");//每一行的中间数值,都是由上一行的s[x-1][y-1]+s[x-1][y]相加而得到,并赋予二维数组
s[x][y]=s[x-1][y-1]+s[x-1][y];
}
}

System.out.println();//换行
}
}
}

④ java打印出二十六个字母组成的三角形

用Java语言打印出二十六个字母组成的三角形的程序如下:

publicclassFF{

publicstaticvoidmain(String[]args){

finalintN=5;

intk=0;

for(inti=0;i<N;i++){

for(intj=0;j<=i;j++){

System.out.print((char)('A'+k++));

}

System.out.println();

}

}

}

运行结果:

A
BC
DEF
GHIJ
KLMNO

⑤ java打印数字三角形

打印三角形实际上就是找规律输出对应的空或者数值。可以用以下方式实现:
//第一种打印方法
for(int n=1;n<4;n++) {
for(int m=1;m<=n;m++) {
System.out.print(m);
}
System.out.println("");
}
//第二种打印方法
for(int n=3;n>0;n--) {
for(int m=1;m<=n;m++) {
System.out.print(m);
}
System.out.println("");
}
//第三种打印方法
for(int n=1;n<4;n++) {
for(int k=n;k<3;k++) {
System.out.print(" ");
}
for(int m=1;m<=n;m++) {
System.out.print(m);
}
System.out.println("");
}
//第四种打印方法
for(int n=3;n>0;n--) {
for(int k=n;k<3;k++) {
System.out.print(" ");
}
for(int m=1;m<=n;m++) {
System.out.print(m);
}
System.out.println("");
}

⑥ 求java中不用for循环,打印出多种三角形,方法.

倒等腰三角

public static void main(String[] args) {
int rows=3;
for(int i=0;i<rows;i++){
for(int a=0;a<i;a++){
System.out.print("塌差 ");
}
for(int b=1;b<=2*rows-2*i-1;b++){
System.out.print("*");
}
System.out.print("改渗\n");
}

}

rows是行数,可以换成自己输入的。核衫脊

阅读全文

与java打印六种三角相关的资料

热点内容
怎么改苹果手机icloud账号和密码 浏览:526
什么是P2P数据库系统 浏览:494
js遍历标签数组长度 浏览:705
为什么u盘读有些文件读取不出来 浏览:485
linux内核体系架构 浏览:758
java高低字节 浏览:105
win10安全模式也死机 浏览:159
最简单的数据库开发软件 浏览:718
迅雷下载网络断开 浏览:792
考勤系统数据库在哪个文件夹 浏览:134
creo30绘图配置文件设置 浏览:624
苹果ID被锁要交600元交不交 浏览:29
实例化module配置文件失败 浏览:872
网站源码是什么东西 浏览:90
怎样打开桌面隐藏文件 浏览:904
拯救者的颜色配置文件 浏览:860
微信转发朋友圈送礼品 浏览:905
新电脑装win10教程 浏览:130
linux文件执行授权 浏览:618
微信文件如何删除重新打开 浏览:897

友情链接