java打印正弦曲线示例_java

复制代码 代码如下:

/*
 * 绘制0°到360°的正弦曲线
 * 分两种情形,y>0和y<=0进行绘制
 * 每种情形中要考虑每行打印两个"*"字符
 * 并在打印第二个"*"字符后换行
 */
package hundred;
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.1){  
        //计算出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("*");
            }
         }
    }
}

时间: 2024-08-03 10:18:51

java打印正弦曲线示例_java的相关文章

java方法重载示例_java

什么是方法的重载? 方法重载是以统一的方式处理不同数据类型的一种手段. 怎样构成方法的重载? 方法名相同, 形参不同.而形参的不同又表示在:  1). 形参的个数不同  2). 形参的类型不同 3). 形参的顺序不同 注意事项 1. 如果两个方法的返回值不同, 而其他都相同. 这个时候并不构成方法的重载. 在编译的时候会报错: 示例代码(错误):Test.java 复制代码 代码如下: /*返回值的不同并不能构成方法的重载*/public class Test {    public stati

java直接插入排序示例_java

影响排序效率的一般从3个方面比较:数据比较的次数,数据移动的次数,内存空间占用的大小.我们就冒泡排序.选择排序.插入排序.快速排序做一个总的比较.一般情况下不会使用冒泡排序算法,因为它的比较次数和移动次数在几种排序算法中都是最多的,它的唯一好处是算法简单,易于理解,所以在数据量很小的时候它会有些应用价值.选择排序在比较次数上和冒泡排序一样,都是n的平方,但它把交换的次数降低到了最低,所以在数据量很小且交换数据相对于比较数据更加耗时的情况下,可以应用选择排序.在大多数情况下,当数据量比较小或基本上

2个java希尔排序示例_java

java希尔排序 希尔排序是插入排序的一种类型,也可以用一个形象的叫法缩小增量法.基本思想就是把一个数组分为好几个数组,有点像分治法,不过这里的划分是用一个常量d来控制. 这个0<d<n,n为数组的长度.这个算法有了插入排序的速度,也可以算是一个改进算法,在插入算法中,如果有一个最小的数在数组的最后面,用插入算法就会重最后一个 位置移动到第一个,这样就会浪费很大,使用这个改进的希尔排序可以实现数据元素的大跨度的移动.也就是这个算法的优越之处. 复制代码 代码如下: package cn.cqu

java单例模式学习示例_java

单例模式有一下特点:1.单例类只能有一个实例.2.单例类必须自己自己创建自己的唯一实例.3.单例类必须给所有其他对象提供这一实例.单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例.在计算机系统中,线程池.缓存.日志对象.对话框.打印机.显卡的驱动程序对象常被设计成单例.这些应用都或多或少具有资源管理器的功能.每台计算机可以有若干个打印机,但只能有一个Printer Spooler,以避免两个打印作业同时输出到打印机中.每台计算机可以有若干通信端口,系统应当集中管理这些通信端

java正则表达式使用示例_java

复制代码 代码如下: package com.hongyuan.test; import java.util.regex.Matcher;import java.util.regex.Pattern; public class RegexTest { public static void main(String[] args) {  String str="<html><head><title>regex test</title></head

使用java执行定时任务示例_java

下面是个简单的例子,利用java实现距离run后一个小时后执行任务! 复制代码 代码如下: Timer timer = new Timer();TimerTask task = new TimerTask() {@Overridepublic void run() { System.out.println("待执行的任务..."); }};timer.schedule(task, 60*60*1000);

控制台显示java冒泡排序流程示例_java

类:Nums    权限:public方法:main    权限:public参数:nums,i,j,num;参数介绍:nums,数据类型 int[] ,用来存储 int 型的一系列数组:i,数据类型 int ,作为 for 循环的循环变量,存储排序比较的轮数:j,数据类型 int ,作为 for 循环的循环变量,存储该轮排序比较的次数:num,数据类型 int ,作为两值互换的第三方变量.方法功能: 定义一个 int[] 数组:设置一个循环变量 i ,记录比较轮数:设置一个循环变量 j ,记录

java格式化时间示例_java

实现日期的格式化,需要用到类: java.text.DateFormat DateFormat没有可以直接使用的构造函数,一般使用DateFormate的子类---java.text.SimpleDateFormat完成构造. public SimpleDateFormat(String pattern) 测试代码 复制代码 代码如下: import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.D

基于接口实现java动态代理示例_java

Subject.java 复制代码 代码如下: package _20140416_; import java.util.List; public interface Subject {   public String say(String name,int age);   public List<Person> getAllList(String name);} RealSubject.java 复制代码 代码如下: package _20140416_; import java.util.