匿名使用者
匿名使用者 發問時間: 電腦與網際網路程式設計 · 1 0 年前

急!JAVA問題,請高手來幫我!(贈20點)

(applet)寫一個 t 程式,在高200寬400的視窗中繪出y=sin(x)一週期的曲線

要能以視窗輸出喔!

感謝!!!!!!

1 個解答

評分
  • ?
    Lv 5
    1 0 年前
    最佳解答

    1. t 繼承 javax.swing.JApplet

    2. JApplet 本身就是 java.awt.Container 所以在 paint 方法中繪圖即可. 使用 java.lang.Math 的 sin 方法得出 sin 值. paint 方法會得到一個 java.awt.Graphics 物件以繪圖. 最簡單的方法是X軸每一點當作一度, Y軸必須放大, 例子中是放大90倍與X軸對等, 這是一個繪圖的議題, 我不是專家所以不對此作建議.

    3. Graphics元點是物件左上角(X軸向右增加,Y軸向下增加), 但是我們圖的原點是Y軸正中央(所以調100點), X軸剛好一致所以不調整.

    4. for 迴圈360次, 每次一點(一度)求出sin值, 在相鄰兩點間以直線相連繪圖.

    5. 將 Applet程式(t)與測試程式放在同一目錄, 以IE執行html程式即可看到繪圖結果. 其他繪圖專業部分您自己調吧.

    6. 程式 t

    import javax.swing.*;

    import java.awt.*;

    public class t extends JApplet {

    int ratio = 90;

    int y0 = 100;

    @Override

    public void paint(Graphics g) {

    double a = Math.PI / 180.0d;

    int x = 0, y = 0, j;

    for (int i = 1; i <= 360; i++) {

    j = (int)Math.round(Math.sin(i * a) * ratio);

    g.drawLine(x, y0 - y, i, y0 - j);

    x = i;

    y = j;

    }

    }

    }

    7. html 程式

    <html><head><title>Trigonometric Sine</title></head>

    <body>

    <center>

    <table height=200 width=400 bgColor=#c0c0c0>

    <tr><td>

    <applet height=200 width=400 code=t.class></applet>

    </tr></td>

    </table>

    </center>

    </body></html>

    8. IE 必須設定 JRE 用於 applet

還有問題?馬上發問,尋求解答。