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("*");
            }
         }
    }
}

(0)

相关推荐

  • java实现遗传算法实例分享(打印城市信息)

    复制代码 代码如下: import java.util.*;public class Tsp {      private String cityName[]={"北京","上海","天津","重庆","哈尔滨","长春","沈阳","呼和浩特","石家庄","太原","济南","

  • JavaWeb实现打印功能

    废话不多说了,直接给大家贴代码了,具体代码如下所示: <script language="javascript"> function printsetup(){ // 打印页面设置 wb.execwb(8,1); } </script> </head> <body> <OBJECT classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height=0 id=w

  • Java打印和打印预览机制实例代码

    复制代码 代码如下: import java.awt.BasicStroke;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Component;import java.awt.Dimension;import java.awt.Font;import java.awt.FontMetrics;import java.awt.Graphics;import java.awt.Graphics2D;import

  • java控制Pdf自动打印的小例子

    复制代码 代码如下: public byte[] autoPrintPdf(byte[] pdf_byte) { ByteArrayOutputStream bos=null;  try {   PdfReader reader = new PdfReader(pdf_byte);   bos = new ByteArrayOutputStream();   PdfStamper ps = new PdfStamper(reader, bos);   StringBuffer script =

  • java打印当前方法名示例分享

    在C与C++中可以这样打印当前函数名: 复制代码 代码如下: printf("%s",__func__); 但在Java没有此说法,一切即对象,得从某个对象中去获取,可分为两种方式: 第一种:通过Thread类来获取. 复制代码 代码如下: System.out.println(Thread.currentThread().getStackTrace()[1].getMethodName());System.out.println(Thread.currentThread().getS

  • 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     f

  • Java打印流原理及实例详解

    这篇文章主要介绍了Java打印流原理及实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 平时我们在控制台打印输出,是调用print方法和println方法完成的,这两个方法都来自于java.io.PrintStream类,该类能够方便地打印各种数据类型的值,是一种便捷的输岀方式. PrintStream类 PrintStream类,为其他输出流添加了功能,使他们能够方便的打印各种数据值表示格式. PrintStream类的特点: 只负责数

  • 如何通过Java打印Word文档

    这篇文章主要介绍了如何通过Java打印Word文档,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 Java 打印Word文档 本文介绍如何在Java程序中通过物理打印机和虚拟打印机来打印Word文档的方法.文中使用了类库Spire.Doc for Java,可通过 官网下载jar文件并导入程序或者直接通过maven仓库安装导入. [示例1]通过物理打印机打印 import com.spire.doc.Document; import com.s

  • java打印出菱形图案实例详解

    第一步:首先对图像进行解析 想要打印该图形必须要进行多层循环嵌套,分两个部分进行打印. 第一部分为上半部分前四行,他们是递增的关系,后半部分后三行为递减关系,由此可以得出我们需要写两个打的循环.并且由于"*"位置的关系,我们必须带入空格同时打印.所以每个部分需要两个循环控制,即两个大循环每个里面嵌套两个小循环总计四个循环. 第二部:对数字进行分析 在分析之前,我们必须明白外层循环控制行数,内层循环控制列数,因此我们需要分析他的行和列. 示例代码如下: class ForForTest

  • 三种Java打印PDF文档的实例代码

    以下内容归纳了通过Java程序打印PDF文档时的3种情形.即: 1 静默打印 2 显示打印对话框打印 3 打印PDF时自定义纸张大小 使用工具:Spire.PDF for Java Jar文件获取及导入: 方法1:下载jar包.下载后,解压文件,并将lib文件夹下的Spire.Pdf.jar导入java程序. 方法2:可通过maven库导入.参考导入方法. Java代码示例 [示例1]静默打印 即通过使用默认打印机直接打印PDF文档.打印时,我们可以设置打印份数,设置纸张打印页边距等. impo

  • SpringBoot通过自定义注解实现日志打印的示例代码

    前言 在我们日常的开发过程中通过打印详细的日志信息能够帮助我们很好地去发现开发过程中可能出现的Bug,特别是在开发Controller层的接口时,我们一般会打印出Request请求参数和Response响应结果,但是如果这些打印日志的代码相对而言还是比较重复的,那么我们可以通过什么样的方式来简化日志打印的代码呢? SpringBoot 通过自定义注解实现权限检查可参考我的博客:SpringBoot 通过自定义注解实现权限检查 正文 Spring AOP Spring AOP 即面向切面,是对OO

  • java排查死锁示例

    目录 死锁示例 死锁产生原因 死锁排查 方案 1:jstack 方案 2:jconsole 方案 3:jvisualvm 方案 4:jmc 总结 死锁(Dead Lock)指的是两个或两个以上的运算单元(进程.线程或协程),都在等待对方停止执行,以取得系统资源,但是没有一方提前退出,就称为死锁. 死锁示例 接下来,我们先来演示一下 Java 中最简单的死锁,我们创建两个锁和两个线程,让线程 1 先拥有锁 A,然后在 1s 后尝试获取锁 B,同时我们启动线程 2,让它先拥有锁 B,然后在 1s 之

  • nodejs连接dubbo服务的java工程实现示例

    目录 前言 1.启动dubbo提供服务 2.新建node测试文件nodeTest.js 3.下载所需依赖 4.启动服务 前言 最近公司整体服务架构从MQ迁移到dubbo上,公司有部分项目使用了nodejs服务,故研究了下nodejs的dubbo客户端,以下使用node-zookeeper-dubbo客户端为网友提供,因node-zookeeper-dubbo本身项目使用的实例描述并不完备,对于非node专业来说,跑一个实例还是有点困难,在博主实践过程中,也遇到很多问题,固有此文,希望可以给同样需

  • 手写Java LockSupport的示例代码

    目录 前言 LockSupport实现原理 自己动手实现自己的LockSupport 实现原理 自己实现LockSupport协议规定 工具 具体实现 完整代码 JVM实现一瞥 总结 前言 在JDK当中给我们提供的各种并发工具当中,比如ReentrantLock等等工具的内部实现,经常会使用到一个工具,这个工具就是LockSupport.LockSupport给我们提供了一个非常强大的功能,它是线程阻塞最基本的元语,他可以将一个线程阻塞也可以将一个线程唤醒,因此经常在并发的场景下进行使用. Lo

  • 教你正确的Java扩展方法示例详解

    目录 引言 支持扩展方法的语言 C# Visual Basic Kotlin 主角登场 Lombok @ExtensionMethod Manifold 总结 引言 扩展方法能够向现有类型“添加”方法,而无需创建新的派生类型.重新编译或以其他方式修改原始类型.扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用.对于用 C# 和 Visual Basic 编写的客户端代码,调用扩展方法与调用在类型中实际定义的方法没有明显的差异. 支持扩展方法的语言 其实比较多的编程语言都支持了

随机推荐