最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用java打印心型、圓形圖案的實現(xiàn)代碼

 更新時間:2020年12月01日 11:02:35   作者:清風(fēng)丿自來  
這篇文章主要介紹了使用java打印心型、圓形圖案的實現(xiàn)代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

相信對于打印三角形都沒什么難度,只需要利用for循環(huán)嵌套使用就行

但是對于打印圓形和三角形不同因為到圓心距離相等的點一般不會橫坐標(biāo)和縱坐標(biāo)都為整數(shù)

打印愛心

愛心的公式 (x²+y²-1)³-x²*y³=0

調(diào)用此方法即可打印愛心圖案

 /**
 *打印心形
 */
 public static void aiXin(){
   for(float y = (float) 1.5;y>-1.5;y -=0.1) { 
    for(float x= (float) -1.5;x<1.5;x+= 0.05){ 
     float a = x*x+y*y-1; 
     if((a*a*a-x*x*y*y*y)<=0.0) { 
       System.out.print("^"); 
     } 
     else 
       System.out.print(" "); 
    } 
    System.out.println(); 
  } 
 }

打印圓形

打印圓形主要就是所有點到圓心的距離為半徑即可

public static void circle(){
  int r=15;//圓形的半徑
   for (int y = 0; y <= 2 * r; y += 2) {//y的步長為2,改變y的步長可以將圓形變成橢圓 
   int x = (int)Math.round(r - Math.sqrt(2 * r * y - y * y)); 
   int len = 2 * (r - x); 
   for (int i = 0; i <= x; i++) { 
    System.out.print(' '); 
   }
   System.out.print('*'); 
   for (int j = 0; j <= len; j++) { 
    System.out.print(' '); 
   } 
   System.out.println('*'); 
  } 
 }

效果如下

如果想打印實心的只需要把條件修改即可

 for (int j = 0; j <= len; j++) { 
    System.out.print('*'); 
  } 

此循環(huán)是打印圓形里面部分,輸出字符就是實心圓

補充知識:在Java中打印金字塔圖案

1、問題描述

打印出金字塔圖案,如圖1所示。

2、問題分析

這時一個很經(jīng)典的循環(huán)應(yīng)用的問題。我們都知道,打印輸出的時候,都是從

最左端輸出,而這里第一個三角形符號是在最中間,這實際是因為三角形之前有很多空格。當(dāng)我們使用圓圈來表示空格,實際的輸出效果應(yīng)該是圖2的形式。

分析圖2,我們可以發(fā)現(xiàn)這個題目的奧秘。

(1) 確定程序框架

程序框架代碼如下:

publicclass Ch1_1
{
  public static void main(String[] args)
  {
    *********
    for(i = 1; i<= 5; i++)  //循環(huán)5次,打印5行
    {
      //打印若干空格
      //打印若干符號
    }
  }
}

(2) 尋找空格和符號規(guī)律

表1 空格和符號規(guī)律

行數(shù)

空格數(shù)

符號數(shù)

1

4

5-1

1

1*2-1

2

3

5-2

3

2*2-1

3

2

5-3

5

3*2-1

4

1

5-4

7

4*2-1

5

0

5-5

9

5*2-1

規(guī)律

依次遞減1

5-行數(shù)

依次遞增2

行數(shù)*2-1

(3) 打印空格數(shù)

由于每行空格數(shù)有“5-行數(shù)”的規(guī)律,對應(yīng)代碼如下:

for(i =1; i<= n; i++)
{
  for(j = 1; j <= n – i; j++)  //根據(jù)外層行號,輸出符號左邊空格
    System.out.println(“ ”);
}

(4) 打印符號數(shù)

由于每行符號數(shù)有著“行數(shù)*2-1”的規(guī)律,對應(yīng)代碼如下:

for(i =1; i<= n; i++)
{
  for(k = 1; j <= i * 2 -1; k++) //根據(jù)外層行號,輸出符號數(shù)
    System.out.println(“*”);
}

(5) 完整程序

importjava.util.Scanner;
publicclass Ch1_1
{
  public static void main(String[] args)
  {
    int i, j, k, n;
    Scanner input = new Scanner(System.in);
    System.out.print("請輸入金字塔層數(shù):");
    n = input.nextInt();
    //外層循環(huán)控制層數(shù)
    for(i = 1; i <= n; i++)
    {
      //根據(jù)外層行號,輸出星號左邊的空格
      for(j = 1; j <= n - i; j++)
       System.out.printf(" ");
      //根據(jù)外層行號,輸出星號個數(shù)
      for(k = 1; k <= 2 * i -1; k++)
       System.out.print("*");
      //一行結(jié)束,換行
      System.out.print("\n");
    }
  }
}
/*
 *注:Java中的print、printf、println
*/

程序運行結(jié)果,見圖3。

(6) 擴展

倒金字塔

importjava.util.Scanner;
publicclass Ch1_1
{
  public static void main(String[] args)
  {
    int i, j, k, n;
    Scanner input = new Scanner(System.in);
    System.out.print("請輸入倒金字塔層數(shù):");
    n = input.nextInt();
    //外層循環(huán)控制層數(shù)
    for(i = 1; i <= n; i++)
    {
      //根據(jù)外層行號,輸出星號左邊的空格
      for(j = 1; j <= i - 1; j++)
       System.out.printf(" ");
      //根據(jù)外層行號,輸出星號個數(shù)
      for(k = 1; k <= 2 * (n - i) -1;k++)
       System.out.print("*");
      //一行結(jié)束,換行
      System.out.print("\n");
    }
  }
}

直角三角形

importjava.util.Scanner;
publicclass Ch1_1
{
  public static void main(String[] args)
  {
    int i, j, k, n;
    Scanner input = new Scanner(System.in);
    System.out.print("請輸入直角三角形層數(shù):");
    n = input.nextInt();
    //外層循環(huán)控制層數(shù)
    for(i = 1; i <= n; i++)
    {
      //根據(jù)外層行號,輸出星號個數(shù)
      for(k = 1; k <= n - i + 1; k++)
       System.out.print("*");
      //一行結(jié)束,換行
      System.out.print("\n");
    }
  }
}

以上這篇使用java打印心型、圓形圖案的實現(xiàn)代碼就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • springboot的類加載器(org.springframework.boot.loader)過程詳解

    springboot的類加載器(org.springframework.boot.loader)過程詳解

    這篇文章主要介紹了springboot的類加載器(org.springframework.boot.loader),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • Java基于elasticsearch實現(xiàn)集群管理

    Java基于elasticsearch實現(xiàn)集群管理

    這篇文章主要介紹了java基于elasticsearch實現(xiàn)集群管理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • java中使用Files.readLines()處理文本中行數(shù)據(jù)方式

    java中使用Files.readLines()處理文本中行數(shù)據(jù)方式

    這篇文章主要介紹了java中使用Files.readLines()處理文本中行數(shù)據(jù)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Spring Boot2+JPA之悲觀鎖和樂觀鎖實戰(zhàn)教程

    Spring Boot2+JPA之悲觀鎖和樂觀鎖實戰(zhàn)教程

    這篇文章主要介紹了Spring Boot2+JPA之悲觀鎖和樂觀鎖實戰(zhàn)教程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • SpringBoot?+?layui?框架實現(xiàn)一周免登陸功能示例詳解

    SpringBoot?+?layui?框架實現(xiàn)一周免登陸功能示例詳解

    這篇文章主要介紹了SpringBoot+layui框架實現(xiàn)一周免登陸功能,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-08-08
  • Spring實現(xiàn)聲明式事務(wù)的方法詳解

    Spring實現(xiàn)聲明式事務(wù)的方法詳解

    這篇文章主要介紹了Spring實現(xiàn)聲明式事務(wù)的方法詳解,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • SpringBoot實現(xiàn)分庫分表

    SpringBoot實現(xiàn)分庫分表

    這篇文章主要介紹了SpringBoot實現(xiàn)分庫分表,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Spring核心容器之Bean創(chuàng)建過程詳解

    Spring核心容器之Bean創(chuàng)建過程詳解

    這篇文章主要介紹了Spring核心容器之Bean創(chuàng)建過程詳解,獲取?Bean?的方法是?getBean,其來自?BeanFactory?繼承的AbstractAutowireCapableBeanFactory?抽象類繼承的AbstractBeanFactory?抽象類中,需要的朋友可以參考下
    2023-11-11
  • 詳解SpringBoot結(jié)合策略模式實戰(zhàn)套路

    詳解SpringBoot結(jié)合策略模式實戰(zhàn)套路

    這篇文章主要介紹了詳解SpringBoot結(jié)合策略模式實戰(zhàn)套路,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Java數(shù)據(jù)結(jié)構(gòu)順序表的詳細(xì)講解

    Java數(shù)據(jù)結(jié)構(gòu)順序表的詳細(xì)講解

    大家好,今天給大家?guī)淼氖琼樞虮恚矣X得順序表還是有比較難理解的地方的,于是我就把這一塊的內(nèi)容全部整理到了一起,希望能夠給剛剛進行學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的人帶來一些幫助,或者是已經(jīng)學(xué)過這塊的朋友們帶來更深的理解,我們現(xiàn)在就開始吧
    2022-05-05

最新評論

临潭县| 海阳市| 乌兰县| 伊春市| 泸溪县| 新泰市| 阜阳市| 涞源县| 内江市| 尼木县| 社旗县| 张家界市| 新和县| 武城县| 南阳市| 青河县| 武夷山市| 周口市| 华坪县| 林芝县| 民丰县| 宿松县| 五原县| 科技| 麻栗坡县| 莱西市| 孟村| 岐山县| 改则县| 道孚县| 昌平区| 武穴市| 彭水| 阳新县| 开远市| 安溪县| 中牟县| 临汾市| 吉安市| 宜宾县| 阿拉尔市|