一段cpu正弦曲线现实code

 

public class T {   
  
  public static void main(String[] args) throws Exception {   
    // 角度的分割   
    final double SPLIT = 0.01;   
    //   
    // 2PI分割的次数,也就是2/0.01个,正好是一周   
    final int COUNT = (int) (2 / SPLIT);   
    final double PI = Math.PI;   
    // 时间间隔   
    final int INTERVAL = 200;   
    long[] busySpan = new long[COUNT];   
    long[] idleSpan = new long[COUNT];   
    int half = INTERVAL / 2;   
    double radian = 0.0;   
    for (int i = 0; i < COUNT; i++) {   
      busySpan[i] = (long) (half + (Math.sin(PI * radian) * half));   
      idleSpan[i] = INTERVAL - busySpan[i];   
      radian += SPLIT;   
    }   
    long startTime = 0;   
    int j = 0;   
    while (true) {   
      j = j % COUNT;   
      startTime = System.currentTimeMillis();   
      while (System.currentTimeMillis() - startTime < busySpan[j])   
        ;   
      Thread.sleep(idleSpan[j]);   
      j++;   
    }   
  }   
}  
/**  
 *   
 * @原author 赵学庆
 *   
 */  

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 以下是一个画正弦曲线的Java Applet示例代码: ```java import java.awt.*; import java.applet.*; public class SineCurve extends Applet { public void paint(Graphics g) { int x,y; double sinValue; g.setColor(Color.red); for(x=0; x<getWidth(); x++) { sinValue = Math.sin((double)x/180*Math.PI); y = (int)(getHeight()/2 - 50*sinValue); g.drawLine(x, y, x+1, y); } } } ``` 在这个Applet中,我们使用了Math.sin()函数来计算正弦值,并将其绘制在画布上。可以在HTML文件中嵌入该Applet以显示正弦曲线。 ### 回答2: 编写一个applet,可以在applet中绘制一个正弦曲线。 首先,在Java的applet中,我们需要使用Graphics类来绘制图形。以下是一个简单的示例代码: ```java import java.applet.Applet; import java.awt.Graphics; public class SinCurveApplet extends Applet { public void paint(Graphics g) { int width = getWidth(); // 获取applet的宽度 int height = getHeight(); // 获取applet的高度 int cx = width / 2; // 曲线的中心点x坐标 int cy = height / 2; // 曲线的中心点y坐标 int amplitude = height / 4; // 正弦曲线的振幅 int period = width / 4; // 正弦曲线一个周期的长度 g.drawLine(0, cy, width, cy); // 绘制x轴 for (int x = 0; x < width; x++) { double angle = (double) (x - cx) / period * 2 * Math.PI; // 计算当前x点对应的角度值 int y = (int) (cy - amplitude * Math.sin(angle)); // 根据正弦函数计算y坐标 g.drawLine(x, y, x, y); // 绘制当前点 } } } ``` 在上述代码中,我们首先获取applet的宽度和高度,然后根据这些参数计算出曲线的中心点坐标、振幅和周期。接下来,我们使用for循环遍历所有的x点,并根据正弦函数计算出对应的y坐标。最后,使用drawLine方法绘制曲线上的每个点。 在HTML文件中使用这个applet时,可以使用如下的代码: ```html <applet code="SinCurveApplet.class" width="500" height="300"></applet> ``` 上述的代码中,SinCurveApplet.class表示编译后的applet类的文件名,width和height属性可以调整applet的宽高。将上述的Java代码保存为SinCurveApplet.java并进行编译后,将生成SinCurveApplet.class文件,将这两个文件一起放在同一个目录下,并在HTML文件中引用SinCurveApplet.class文件即可加载和显示绘制的正弦曲线applet。 ### 回答3: 要编写一个applet来画出一个正弦曲线,可以使用Java的applet类和绘图类Graphics来实现。首先,需要在applet的init()方法中设置画布的大小和背景色。然后,可以在applet的paint()方法中使用Graphics对象来绘制正弦曲线。 具体步骤如下: 1. 在applet的init()方法中设置画布的大小和背景色: ```java public void init() { setSize(400, 400); setBackground(Color.WHITE); } ``` 2. 在applet的paint()方法中使用Graphics对象来绘制正弦曲线: ```java public void paint(Graphics g) { int width = getWidth(); int height = getHeight(); int midY = height / 2; g.setColor(Color.BLACK); // 绘制坐标轴 g.drawLine(0, midY, width, midY); // x轴 g.drawLine(0, 0, 0, height); // y轴 // 绘制正弦曲线 int amplitude = 100; // 振幅 int period = 100; // 周期 for (int x = 0; x < width; x++) { int y = midY + (int) (amplitude * Math.sin((double) x / period)); g.drawLine(x, y, x + 1, y); // 绘制一个像素点 } } ``` 在上述代码中,我们首先获取了画布的宽度、高度和中间点的y坐标。然后,设置绘图颜色为黑色,并绘制x轴和y轴。接下来,使用for循环遍历画布的横坐标,根据正弦函数的公式计算出对应的纵坐标,并使用drawLine方法绘制一个像素点。循环结束后,整个正弦曲线就会被画出来了。 最后,可以在HTML页面中使用applet标签来嵌入这个applet并运行它。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值