niusouti.com

下面是一个Applet程序,其功能是根据公式:y=a*sin(x)绘制正弦曲线。要求窗口中有一个文本区作为曲线峰值a的输入,可以判断输入的数字是否符合要求,一个ok按钮,点击则在画布中绘制曲线,以画布中的横坐标值作为sin()的参数x。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:import java.awt.*;import java.awt.event.*;import java.applet.Applet;import ja

题目

下面是一个Applet程序,其功能是根据公式:y=a*sin(x)绘制正弦曲线。要求窗口中有一个文本区作为曲线峰值a的输入,可以判断输入的数字是否符合要求,一个ok按钮,点击则在画布中绘制曲线,以画布中的横坐标值作为sin()的参数x。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。

注意:不改动程序的结构,不得增行或删行。

程序运行结果如下:

import java.awt.*;

import java.awt.event.*;

import java.applet.Applet;

import java.lang.Math.*;

/*

<applet code="ex18_3.class" width=800 height=400 >

</applet>

*/

public class ex18_3 extends Applet implements ActionListener {

Panel pane=new Panel();

drawWnd dw;

Label 11 = new Label("峰值");

TextField tf1 = new TextField(15);

Button btn = new Button("OK");

private float a=0;

public void init(){

pane.setLayout(new FlowLayout(FlowLayout.CENTER,25,5));

pane.add(11);

pane.add(tf1);

pane.add(btn);

btn.addActionListener(this);

add("North",pane);

dw=new drawWnd();

add("South",dw);

}

class drawWnd extends Canvas {

drawWnd() {

setSize(300,100);

setBackground(Color. GRAY);

}

public void paint(Graphics g) {

g.setColor(Color.GREEN);

for(int i=0;i<getSize().width-1;i++){

int y=0;

int y1=y+(int) (Math.sin(i)*a);

int y2=y1+(int) (a*Math.sin(i+1));

g.drawLine(i,y1,i+1,y2);

}

}

}

public void actionPerformed(ActionEvent ae) {

try{

a=Integer.parseInt(tf1.getText());

dw.repaint();

}

catch(NumberFormatException nfe){

tf1.setText("error!");

}

}

}

ex18_3.html

<HTML>

<HEAD>

<TITLE>ex18_3</TITLE>

</HEAD>

<BODY>

<applet code="ex18_3.class" width=800 height=400 >

</applet>

</BODY>

</HTML>


相似考题
更多“ 下面是一个Applet程序,其功能是根据公式:y=a*sin(x)绘制正弦曲线。要求窗口中有一个文本区作为曲线峰值a的输入,可以判断输入的数字是否符合要求,一个ok按钮,点击则在画布中绘制曲线,以画布中的横坐标值”相关问题
  • 第1题:

    在一个图形窗口同时绘制[0,2π]的正弦曲线、余弦曲线,可以使用命令()。

    A.x=(0:0.01:2*pi)'; Y=[sin(x),cos(x)]; plot(x,Y);

    B.x=(0:0.01:2*pi); Y=[sin(x);cos(x)]; plot(x,Y);

    C.fplot(@(x)sin(x),@(x)cos(x),[0,2*pi])

    D.fplot(@(x)[sin(x),cos(x)],[0,2*pi])


    AD

  • 第2题:

    3、下面关于电压传输特性曲线的说法,哪一个是正确的?

    A.曲线的X轴表示时间,Y轴表示输出电压。

    B.曲线的X轴表示时间,Y轴表示输入电压。

    C.曲线的X轴表示输入电压,Y轴表示输出电压。

    D.曲线的X轴表示输入电流,Y轴表示输出电流。


    曲线的 X 轴表示输入电压, Y 轴表示输出电压。

  • 第3题:

    在窗体中安排一个画布,在画布内绘制一个宽100,高80的红色填充矩形, 矩形内部绘制一个蓝色的填充椭圆. 椭圆中心位置用白色写上"你好"的文字


    选择矩形选框工具,在画布上绘制一个矩形选区,将前景色设置白色,按快捷键Alt+Delete,即可绘制一个白色矩形。

  • 第4题:

    本程序用户在文本框中输入任何数,点击ok按钮,则会判断文本框中的数字是否是整数,并将结果显示在文本框中,用户如果在文本框中输入回车,则文本框清空。


    B

  • 第5题:

    【多选题】在一个图形窗口同时绘制[0,2π]的正弦曲线、余弦曲线,可以使用命令()。

    A.x=(0:0.01:2*pi)'; Y=[sin(x),cos(x)]; plot(x,Y);

    B.x=(0:0.01:2*pi); Y=[sin(x);cos(x)]; plot(x,Y);

    C.fplot(@(x)sin(x),@(x)cos(x),[0,2*pi])

    D.fplot(@(x)[sin(x),cos(x)],[0,2*pi])


    subplot