Hallo
Ich sitze hier am Tag der offenen Tür und soll ein Java Programm vorführern.
ICh hab das zuhause entwickelt und zuhause hat alles geklappt
Aber heir hab ich jetzt ein riesen Problem.
Es ist ein Fehler aufgetreten und ich muss notgedrungen alles neu schreiben.
Aber jetzt hat sich ein Fehler eingeschlichen und es klappt so gut wie nichts.
Eigentlich soll nach 6 versuchen, bei dem Startwert 1, der Anzahl an Durchläufen 10 und dem Quadrat 9 die Wurzel 3 stehen.
Ich hab jetzt mal auf die schnell ein neues Programm entwickelt:
Ich weiß :d es ist nicht besonders im Sinne der OOP, aber es müsste es soweit tun.
MFG
Fab
Ich sitze hier am Tag der offenen Tür und soll ein Java Programm vorführern.
ICh hab das zuhause entwickelt und zuhause hat alles geklappt
Aber heir hab ich jetzt ein riesen Problem.
Es ist ein Fehler aufgetreten und ich muss notgedrungen alles neu schreiben.
Aber jetzt hat sich ein Fehler eingeschlichen und es klappt so gut wie nichts.
Eigentlich soll nach 6 versuchen, bei dem Startwert 1, der Anzahl an Durchläufen 10 und dem Quadrat 9 die Wurzel 3 stehen.
Ich hab jetzt mal auf die schnell ein neues Programm entwickelt:
Ich weiß :d es ist nicht besonders im Sinne der OOP, aber es müsste es soweit tun.
MFG
Fab
Code:
/**
*
* Ein Programm um mit Hilfe das Heronverfahrens eine Wurzel zu berechnen
*
* @version 1.0 vom 12.01.2008
* @author Fabian Claßen
*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Heronverfahren extends JFrame {
// Anfang Variablen
//Header
JLabel jLabel1 = new JLabel();
//Rechnen-Button
JButton jButton1 = new JButton();
//Eingabe für den startwert
JTextField jTextField1 = new JTextField(10);
//Eingabe für quadrat
JTextField jTextField2 = new JTextField(10);
//Eingabe für Durchläufe
JTextField jTextField3 = new JTextField(10);
//Anzeige für Ergebnisse
JLabel jLabel2 = new JLabel();
//Button zum Beeden
JButton jButton2 = new JButton();
double zahl1;
double zahl2;
double quadrat;
double mittelwert;
double anzahl;
//Label für erste Info
JLabel JInfo1 = new JLabel();
//Label für zweite Info
JLabel jInfo2 = new JLabel();
//Label für dritte Info
JLabel jInfo3 = new JLabel();
// Ende Variablen
public Heronverfahren (String Title) {
// Frame-Initialisierung
super (Title);
addWindowListener(new WindowAdapter() {
public void windowClosing (WindowEvent evt) {System.exit(0);}});
setSize(300, 300);
getContentPane().setLayout(new FlowLayout());
// Anfang Komponenten
jLabel1.setText("Das Heronverfahren");
jLabel2.setText("Ihr Ergebnis");
getContentPane().add(jLabel1);
jButton1.setText("Rechnen");
getContentPane().add(jButton1);
jButton1.addActionListener (new ActionListener () {
public void actionPerformed (ActionEvent evt) {
jButton1ActionPerformed (evt);}});
JInfo1.setText("Geben sie den Startwert ein");
getContentPane().add(JInfo1);
getContentPane().add(jTextField1);
jInfo2.setText("Geben sie das Quadrat ein");
getContentPane().add(jInfo2);
getContentPane().add(jTextField2);
jInfo3.setText("Anzahl der Durchläufe");
getContentPane().add(jInfo3);
getContentPane().add(jTextField3);
getContentPane().add(jLabel2);
jButton2.setText("Exit");
getContentPane().add(jButton2);
jButton2.addActionListener (new ActionListener () {
public void actionPerformed (ActionEvent evt) {
jButton2ActionPerformed (evt);}});
// Ende Komponenten
}
// Anfang Ereignisprozeduren
public void jButton1ActionPerformed (ActionEvent evt) {
//Zahl1 bekommt den Wert zugewiesen von JTextField1
zahl1 = Double.parseDouble(jTextField1.getText());
//quadrat bekommt den Wert zugewiesen von JTextField2
quadrat = Double.parseDouble(jTextField2.getText());
//anzahl bekommt den Wert zugewiesen vom JTExtField3
anzahl = Double.parseDouble(jTextField3.getText());
//zahl2 bekommt ihren Wert
zahl2 = quadrat / zahl1;
//Algorhytmus
mittelwert = (zahl1 + zahl2) /2;
if(mittelwert * mittelwert < quadrat || mittelwert * mittelwert > quadrat)
{
for(long i= 1; i <= anzahl-1; ++i)
{
if(mittelwert * mittelwert < quadrat || mittelwert * mittelwert > quadrat)
{
if(mittelwert > zahl1 && mittelwert < zahl2)
{
zahl1 = mittelwert;
}
else
{
zahl2 = mittelwert;
}
if(zahl1 == mittelwert)
{
zahl2 = quadrat / zahl1;
}
else
{
zahl1 = quadrat / zahl2;
}
jLabel2.setText(Double.toString(mittelwert));
mittelwert = (zahl1 + zahl2) /2;
}
}
}
}
public void jButton2ActionPerformed (ActionEvent evt) {
System.exit(0);
}
// Ende Ereignisprozeduren
public static void main (String args[]) {
new Heronverfahren("Heronverfahren").show();
}
}
[quote]
Erbitte schnelle Hilfe[/quote]