导航:首页 > 编程语言 > 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打印六种三角相关的资料

热点内容
umeng打包工具 浏览:765
g76锥度牙怎么编程 浏览:430
win10企业版关机很慢 浏览:163
微信短视频是保存在哪个文件夹 浏览:985
win10打印机设置纸张大小设置 浏览:427
卫星测控数据有哪些 浏览:451
格式工厂330教程 浏览:421
童美编程课怎么样 浏览:40
网页代码调试器 浏览:54
读取文件string 浏览:500
ug自动编程软件怎么画数控图 浏览:920
什么网站可以介绍主机 浏览:340
移动短信查询代码 浏览:192
怎么看公司网络是什么时候开通 浏览:960
cad2015文件参照怎么关闭 浏览:678
最小二乘逼近程序 浏览:610
铁路12306密码找不回 浏览:352
默认网络覆盖的脑区 浏览:319
itunes恢复iphone教程 浏览:292
炉石现在是什么版本 浏览:825

友情链接