绘制0°到360°的正弦曲线

/*
 * 绘制0°到360°的正弦曲线
 * 分两种情形,y>0和y<=0进行绘制
 * 每种情形中要考虑每行打印两个"*"字符
 * 并在打印第二个"*"字符后换行
 */

import java.lang.Math;
public class SinTest {
    public static void main(String[] args){
    	//y为列方向,值从1到-1,步长为0.1
    	for (double y = 1;y>=-1;y-=0.03){		 
    		  //计算出y对应的弧度,乘10为图形放大倍数
    		  int m = -(int)(Math.asin(y)*10);
    	      if (y > 0){	 
    		        for (int x = 1;x <1-m;x++){
    			        System.out.print(" ");
    		        }  
    		            System.out.print("*");
    		        //31为10*π的整数部分,打印出来的曲线比较顺眼
    		        for (int x =1;x <31+2*m;x++){
    		            System.out.print(" ");
    	            }   
    		            System.out.println("*");	
    		  }	
    	      if (y <= 0){    
    	            for (int x = 1;x < 32+m;x++){
    		            System.out.print(" ");
    	            }  
    	                System.out.print("*");
    	            //31为10*π的整数部分,打印出来的曲线比较顺眼
    	            for (int x = 1;x < 31-2*m;x++){
    		            System.out.print(" ");
    	            }  
    	                System.out.println("*");
         	  }
         }
    }
}

你可能感兴趣的:(java,学习笔记)