Morphis
Apprentice

- Joined
- Aug 2, 2008
- Sythe Gold
- 0
- Messages
- 734
Well this is for cheating in Algebra. This Pythagorean Theorem Solver will actually show you what to write down on your paper!!!
PROGRAM DOWNLOAD LINK - http://rapidshare.com/files/125773594/Triangle.jar.html
Now this program will solve the Arc Length of a circle, that is if you know the radius/diameter and the central angle or C.A.
PROGRAM DOWNLOAD LINK - http://rapidshare.com/files/125773739/ArcSolver.jar.html]rapidshare link
PROGRAM DOWNLOAD LINK - http://rapidshare.com/files/125773594/Triangle.jar.html
Code:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Triangle extends JFrame implements ActionListener,
Runnable {
Thread go;
JTextField asquared = new JTextField(3);
JLabel plus = new JLabel(" + ");
JTextField bsquared = new JTextField(3);
JLabel equals = new JLabel(" = ");
JTextField csquared = new JTextField(3);
JButton solve = new JButton("Solve");
JButton clear = new JButton("Clear");
ButtonGroup option = new ButtonGroup();
JLabel checkbox = new JLabel("Which part of the triangle are you missing?");
JCheckBox quickpick = new JCheckBox("Leg", false);
JCheckBox personal = new JCheckBox("Hypotenuse", true);
JTextArea an = new JTextArea(8,30);
boolean a = false;
boolean b = false;
boolean c = false;
double valuea;
double valueb;
double valuec;
int selected = 0;
int whichone = 0;
Triangle() {
super("Edward's Pathagorean Therom Solver");
setSize(430, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container content = getContentPane();
BorderLayout bord = new BorderLayout();
content.setLayout(bord);
an.setEditable(false);
an.setLineWrap(true);
JScrollPane textPane = new JScrollPane(an);
csquared.setEnabled(false);
asquared.addActionListener(this);
bsquared.addActionListener(this);
csquared.addActionListener(this);
solve.addActionListener(this);
clear.addActionListener(this);
JPanel centerPanel = new JPanel();
JPanel topPanel = new JPanel();
JPanel bottomPanel = new JPanel();
bottomPanel.add(checkbox);
bottomPanel.add(quickpick);
bottomPanel.add(personal);
centerPanel.add(an);
topPanel.add(asquared);
topPanel.add(plus);
topPanel.add(bsquared);
topPanel.add(equals);
topPanel.add(csquared);
topPanel.add(solve);
topPanel.add(clear);
asquared.setText("a²");
bsquared.setText("b²");
csquared.setText("c²");
quickpick.addActionListener(this);
personal.addActionListener(this);
option.add(quickpick);
option.add(personal);
content.add(topPanel, BorderLayout.NORTH);
content.add(centerPanel, BorderLayout.CENTER);
content.add(bottomPanel, BorderLayout.SOUTH);
setVisible(true);
}
public void actionPerformed(ActionEvent evt) {
Object source = evt.getSource();
if(source == quickpick) {
bsquared.setEnabled(false);
csquared.setEnabled(true);
bsquared.setText("b²");
selected += 1;
}else if(source == personal) {
bsquared.setEnabled(true);
csquared.setEnabled(false);
csquared.setText("c²");
selected -= 1;
}
else if(source == solve) {
quickpick.setEnabled(false);
personal.setEnabled(false);
solve.setEnabled(false);
asquared.setEnabled(false);
bsquared.setEnabled(false);
csquared.setEnabled(false);
if (go == null) {
go = new Thread(this);
go.start();
}
}else if(source == clear){
go = null;
solve.setEnabled(true);
quickpick.setEnabled(true);
personal.setEnabled(true);
asquared.setEnabled(true);
asquared.setText("a²");
bsquared.setText("b²");
csquared.setText("c²");
an.setText(null);
a = false;
b = false;
c = false;
if(selected == 0){
csquared.setEnabled(false);
bsquared.setEnabled(true);
csquared.setText("c²");
}else if(selected == 1) {
bsquared.setEnabled(false);
csquared.setEnabled(true);
}
}
}
public void run() {
if(selected == 0){
double geta = Integer.parseInt(asquared.getText());
double getb = Integer.parseInt(bsquared.getText());
if(geta <= 0 || getb <= 0) {
an.setText("You have entered either a negative number" + "\n" + "or 0 for one of the fields" + "\n" + "press clear and try again");
solve.setEnabled(false);
asquared.setEnabled(false);
bsquared.setEnabled(false);
csquared.setEnabled(false);
}else if(geta > 0 && getb > 0){
double asquareit = geta * geta;
double bsquareit = getb * getb;
double combined = asquareit + bsquareit;
double rooted = Math.sqrt(combined);
an.setText("a² + b² = c² " + "\n" + geta +"² + " + getb + "² = c²" + "\n" + asquareit + " + " + bsquareit + " = c²" +"\n" + combined + " = c²" + " put square root sign over both numbers" +"\n" + rooted + " = c");
}
}
else if(selected == 1){
double geta = Integer.parseInt(asquared.getText());
double getc = Integer.parseInt(csquared.getText());
if(geta <= 0 || getc <= 0) {
an.setText("You have entered either a negative number" + "\n" + "or 0 for one of the fields" + "\n" + "press clear and try again");
solve.setEnabled(false);
asquared.setEnabled(false);
bsquared.setEnabled(false);
csquared.setEnabled(false);
}
else if(geta > 0 && getc > 0){
double asquareit = geta * geta;
double csquareit = getc * getc;
double subtracted = csquareit - asquareit;
double rooted = Math.sqrt(subtracted);
an.setText("a² + b² = c²" +"\n" + geta + "² + b² = " + getc + "²" +"\n" + asquareit + " + b² = " + csquareit + "\n" + csquareit + " - " + asquareit + " = b²" + "\n" + subtracted + " = b²" + "\n" + rooted + " = b");
}
}
}
public static void main(String[] arguments) {
Triangle frame = new Triangle();
}
}
Now this program will solve the Arc Length of a circle, that is if you know the radius/diameter and the central angle or C.A.
PROGRAM DOWNLOAD LINK - http://rapidshare.com/files/125773739/ArcSolver.jar.html]rapidshare link
Code:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class ArcSolver extends JFrame implements ActionListener,
Runnable {
Thread go;
JLabel central = new JLabel("Enter the Radius");
JLabel centralangle = new JLabel("Enter the C.A.");
JLabel know = new JLabel ("Do you know the Radius or Diameter of the circle?");
JLabel key = new JLabel ("Key - C.A. = Central Angle of the circle in degrees NOTE: Replace 'Units' with the indicated measurement in your problem");
JLabel answer = new JLabel("The answer will be displayed here");
JTextField centralangleinput = new JTextField(3);
JTextField centralangle2 = new JTextField(3);
JButton display = new JButton("Solve");
JButton clear = new JButton("Clear");
ButtonGroup option = new ButtonGroup();
JCheckBox quickpick = new JCheckBox("Radius", true);
JCheckBox personal = new JCheckBox("Diameter", false);
int longer = 0;
double circumference;
double cir2;
double cir3;
double cir4;
double cir5 = 360;
String measurement;
ArcSolver() {
super("Edward's Arc Length Solver");
setSize(730, 170);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container content = getContentPane();
BorderLayout bord = new BorderLayout();
BorderLayout bord2 = new BorderLayout();
content.setLayout(bord);
clear.addActionListener(this);
display.addActionListener(this);
quickpick.addActionListener(this);
personal.addActionListener(this);
centralangleinput.addActionListener(this);
JPanel topPanel = new JPanel();
JPanel leftPanel = new JPanel();
JPanel eddie = new JPanel();
JPanel inside = new JPanel();
JPanel inside2 = new JPanel();
leftPanel.setLayout(bord2);
//topPanel.setLayout(lay);
//eddie.add(cool);
eddie.add(key);
topPanel.add(central);
topPanel.add(centralangleinput);
topPanel.add(centralangle);
topPanel.add(centralangle2);
JPanel secondtop = new JPanel();
topPanel.add(display);
topPanel.add(clear);
inside.add(know);
inside.add(quickpick);
inside.add(personal);
inside2.add(answer);
option.add(quickpick);
option.add(personal);
leftPanel.add(inside, BorderLayout.NORTH);
leftPanel.add(inside2, BorderLayout.SOUTH);
content.add(topPanel, BorderLayout.NORTH);
content.add(leftPanel, BorderLayout.CENTER);
content.add(eddie, BorderLayout.SOUTH);
setVisible(true);
}
public void actionPerformed(ActionEvent evt) {
Object source = evt.getSource();
if(source == personal){
central.setText("Enter the Diameter");
longer += 1;
}else if(source == quickpick) {
central.setText("Enter the Radius");
longer -= 1;
}else if(source == display) {
display.setEnabled(false);
centralangleinput.setEnabled(false);
centralangle2.setEnabled(false);
personal.setEnabled(false);
quickpick.setEnabled(false);
if (go == null) {
go = new Thread(this);
go.start();
}
}else if(source == clear){
go = null;
personal.setEnabled(true);
quickpick.setEnabled(true);
display.setEnabled(true);
centralangleinput.setEnabled(true);
centralangle2.setEnabled(true);
centralangleinput.setText(null);
centralangle2.setText(null);
circumference = 0;
answer.setText("The answer will be displayed here");
if(longer == 0){
central.setText("Enter the Radius");
}else if(longer == 1) {
central.setText("Enter the Diameter");
}
}
}
public void run() {
int radiusin = Integer.parseInt(centralangleinput.getText());
int centralin = Integer.parseInt(centralangle2.getText());
if(centralin > 360 || centralin < 0) {
centralangle2.setEnabled(false);
answer.setText("Please enter a valid Central Angle, remember this is from a circle so the most it can be is 360, press clear to try again");
}else
if(longer == 0){
circumference = radiusin * 2;
cir2 = circumference * Math.PI;
cir3 = cir2 * centralin;
cir4 = cir3 / cir5;
answer.setText("The Arc Length is " + cir4 + " Units");
}else if(longer == 1) {
circumference = radiusin * Math.PI;
cir2 = circumference * centralin;
cir3 = cir2 / cir5;
answer.setText("The Arc Length is " + cir3 + "Units");
}
}
public static void main(String[] arguments) {
ArcSolver frame = new ArcSolver();
}
}




