// nonrenew.java // growth based on a nonrenewable source // adapted from a program in basic by H.T. Odum & E. Odum, 1994 import java.applet.Applet; import java.awt.*; public class nonrenew extends Applet { Label pr1,pr2,pr3,pr4; TextField in1,in2,in3,in4; float ee,q,k,k1,k4,dq,de,t,ti,qi,ei; public void init() { pr1 = new Label("Initial amount of nonrenewable source: "); in1 = new TextField("160",4); add(pr1);add(in1); pr2 = new Label("Initial population (try 1 to 100): "); in2 = new TextField("1",4); add(pr2);add(in2); pr3 = new Label("Growth rate: "); in3 = new TextField("10",4); add(pr3);add(in3); pr4 = new Label("Death rate: "); in4 = new TextField("3",4); add(pr4);add(in4); } public boolean action (Event e, Object o){ ee = (float)Integer.parseInt(in1.getText()); q = 0.1f*(float)Integer.parseInt(in2.getText()); k1 = 0.0001f*(float)Integer.parseInt(in3.getText()); k4 = 0.01f*(float)Integer.parseInt(in4.getText()); repaint(); return true; } public void paint (Graphics g){ k=0.001f;qi=q;ei=ee;t=0;ti=t; g.drawRect(60,150,320,180); while (t<320) { dq=ee*k1*q-k4*q; de=-k*ee*q; q+=dq; ee+=de; t+=1; g.setColor(Color.red); g.drawLine((int)(60+ti),(int)(330-qi),(int)(60+t),(int)(330-q)); g.setColor(Color.blue); g.drawLine((int)(60+ti),(int)(330-ei),(int)(60+t),(int)(330-ee)); qi=q;ei=ee;ti=t; } } } // Stefan Kontur & E. Ortega, August 30th 2000