//画正弦曲线程序import java.applet. *;
import java.awt.*;
import java.awt.event.*;
public class ko12_3 extends Applet implements ActionListener
{
int x,y;
double a;
Button bn1=new Button("Sin波形");
Button bn2=new Button("清除");
public void init()
{
add(bn1);
add(bn2);
bn1.addActionListener(this);
bn2.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{
Graphics g=getGraphics();
if(e.getSource()==bn1)
{
for(x=0;x<=360;x+=9)
{
a=Math.sin(x*Math. PI/180);
y=(int)(80+40*a);
g.drawString("*",x,y);
}
}
if(e.getSource()==bn2)
repaint();
}
}
//ko12_3.html
<APPLET CODE="ko12.3class"width=280 height=160>
</APPLET> 

解决方案 »

  1.   

    int tt = (int)(Math.random() * 20 ) + 20 ;这样不就得到 20 - 40 之间的随机数了吗!写成一个通用的公式就是://x1 <= x2
    int x1 , x2 , x;//得到 x1 ,x2 之间的随即数
    int x = (int)(Math.random() * (x2 - x1)) + x1
      

  2.   

    i=(int)Math.random() * (40- 20)) + 20
      

  3.   

    int random = Min+(int)(Math.random() * Max);如果你是需要10到20之间的,min就是10,max就是20。这个公式很有用:)偶也是新手。gan ba de
      

  4.   

    int random = Min+(int)(Math.random() * Max);如果你是需要10到20之间的,min就是10,max就是20。这个公式很有用:)偶也是新手。gan ba de
    -----------------------------------------------------------------
    兄弟,你这个公式不对吧,似乎应该是:
    int random = min + (int)(Math.random()*(max-min))吧
      

  5.   

    随机函数,0到20之间
    int i = (int)(Math.random() * 21);取得一个 0--20只见的一个随机数,0 <= i <= 20,
    要生成一个和刚才的i不同的随机数,可以比较生成的新的随机数,如果和刚才那个相同则再生成一个,指导和刚才那个不同为止,
    int j = (int)(Math.random() * 21);
    while (j == i){
       j = (int)(Math.random() * 21);
    }
      

  6.   

    也可以直接生成一个Random实体Random random=new Rando();int a=random.nextInt(20)+21;  //直接获得21~40的整数