① 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是行數,可以換成自己輸入的。核衫脊