import java.applet.Applet; import java.awt.*; import java.awt.event.*; public class Grapher extends Applet implements ActionListener{ TextField slope; TextField yintercept; Button graph; int sl; int yinter; int h1; int h2; int v1; int v2; Label sloper; Label yi; public void init(){ setSize(600,600); sloper = new Label("Enter Slope"); add(sloper); slope = new TextField(15); add(slope); yi = new Label("Enter Y Intercept"); add(yi); yintercept = new TextField(15); add(yintercept); graph = new Button("Graph"); add(graph); graph.addActionListener(this); repaint(); } public void actionPerformed(ActionEvent e){ sl = Integer.parseInt(slope.getText()); yinter = Integer.parseInt(yintercept.getText()); drawLinear(); } public void paint( Graphics g ) { g.setColor( Color.green ); g.drawRect(100,50,500,500); g.drawLine(350,50,350,550); g.drawLine(100,300,600,300); for (int y = 60;y<= 540;y=y+10) {g.drawLine(345,y,355,y); } for (int x = 110;x<= 590;x=x+10) {g.drawLine(x,295,x,305); } g.setColor( Color.red ); g.drawLine(h1,v1,h2,v2); } public int convertx(int x4) {x4 = x4 + 350; return x4; } public int converty(int x4,int s,int y2) {int y3; int y = x4 * s + y2; if (y >= 0) {y3 = 300 - y; } else {y3 = 300 + Math.abs(y); } return y3; } public void drawLinear() {int x1,y1; boolean started = false; for (int x = -250;x < 250;x=x+1) { x1 = convertx(x); y1 = converty(x,sl,yinter); if (!started) // find first point on left if ((x1 >= 100 && x1<= 600) && (y1 >=50 && y1 <= 550)) {started = true; h1 = x1; v1 = y1; } if ((x1 >= 100 && x1 <= 600) && (y1 >=50 && y1 <= 550)) { h2 = x1; // find last point on screeen on right v2 = y1; } repaint(); } }}