ggT + kgV mit Visual Java

kurisuutiina

Mitglied
Hallo Leute, hoffe jemand von euch kann mir helfen. :)

In Informatik müssen wir im moment bis etwa mitte Januar ein Programm programmiert haben, als so eine Art "Projekt". Nunja.. wir müssen das Programm Visual Java verwenden. Hab schon gehört, dass das nicht so gut und veraltet sein soll..
Auf jeden Fall meine Gruppe soll ein Programm erstellen, dass den größten gemeinsamen Teiler und das kleinste gemeinsame Vielfache von zwei Zahlen berechnet.. können uns auch für eines von beiden entscheiden. Haben bisher nur mit BlueJ programmiert und wir sind leicht am verzweifeln.
Hat jemand vielleicht eine Idee?

dankeschön

kurisuutiina
 

Michael...

Top Contributor
Programmieren kann man auch mit einem simplen Texteditor ;-)
Wo hängt's denn?
Meine Idee:
Mit dem ersten Schritt anfangen und danach erst den zweiten machen.
 

kurisuutiina

Mitglied
Dankeschön für die Links, werden uns mal dort durcharbeiten.. und tut mir Leid, ich benutze nächstes Mal die Suche hier. ... dachte nur ich wäre schonmal in meinen verzweifelten Google-Versuchen schon auf dieses Forum gestoßen, hahaha...
an der Mathematik liegts nicht.. haben uns genug informiert, wie man sich da annähert mit dem Euklidischen Algorithmus usw., aber die Umsetzung in den Code, so dass es dann auch in Visual Java funktioniert (ohne Fehlermeldungen)..

Naja unser genaues Problem: Wir gehen von zwei zahlen aus (zahl1 und zahl2) die wollen wir zunächst dividieren, wo bei wir nur eine ganze Zahl angezeigt bekommen wollen( Bsp. 9/2 =4) danach soll das ergebnis mit zahl 2 multipliziert werden und dieses ergebnis wiederum soll von Zahl 1 subtrahiert werden....

zahl1 /zahl2 = Zahl3 Zahl3 *Zahl2 =Zahl 4 Zahl1-Zahl4 = Ergebnis

und das Problem liegt darin, dass es mit dem Abrunden bzw. keine Kommastellen angezeigt bekommen, nicht klappt und auch das Verknüpfen klappt nicht, also wenn wir Zahl3, welche schon angezeigt wird, weiter verwenden wollen
 

Haave

Top Contributor
Wenn ihr die Kommastellen einfach abschneiden wollt, reicht es, einfach in int zu casten:
Java:
double d = 3.7;
int i = (int) d; // i wird danach 3 sein
Das rundet nicht, sondern schneidet wie gesagt einfach ab.

Es gibt auch die Funktion Math.round(), hab sie aber zugegebenermaßen noch nie benutzt :oops:
 

kurisuutiina

Mitglied
wir haben schon nen Ansatz für die Division:

double summe;

summe = (Double.parseDouble(textBox1.get_Text()) / Double.parseDouble(textBox2.get_Text()));
textBox3.set_Text(String.Format("{0:f}", (System.Double)summe));


integer/int klappt bei visual j irgendwie nicht ...
also ich habs jetzt mit:
int i = (int)summe; versucht..bekomm aber nur ne Fehlermeldung angezeigt..
 

dehlen

Bekanntes Mitglied
das wäre der ggt:

Java:
/* Methode die den grössten gemeinsamen Teiler ermittelt*/ 

        private int ggt() 
        { 
                int y = zahl1;  
                int a = zahl2;  
                int rest;  
 
                while(a!=0)           // Solange a nicht 0 ist....
                { 
                        rest = y%a;  // Falls y ohne Rest durch a teilbar ist, ist a der gesuchte ggT
                        y = a;       //Falls ein Rest bei der Division von y und a bleibt, 
                        a = rest;    //ist der ggT von y und a gleich dem ggT von a und Rest
            } 
 
           return y; 
        }

so kannst du mir auch erklären wieso der code so aussehen muss?

wieso benutze ich 3 variablen?
Stelle dir mal die Fragen und beantworte sie dir


ZU der Divison:
Wieso macht ihr es nicht einfach so:
Java:
public Zweizahlen dividieren(Zweizahlen x)       //mit zweiZahlen x dividieren
  {
      return new Zweizahlen(zahl1*x.zahl2,x.zahl1*zahl2);
    }
... denn man dividiert indem man mit dem kehrwert multipliziert ;-)

dann könnt ihr gemütlich die werte der textboxen in die ihr die zahlen schreibt auslesen mit Integer.parseInt und per getter methode und dann einfach die ausgelesenen werte einfach eure methode durchlaufen lassen also ca so:

Code:
Zahl ergebnisZahl = eineZahl.dividieren(zweiteZahl);

Verstanden ?
wenn nicht poste doch mal ein bisschen code wie ihr jetzt versucht habt euer problem zu lösen oder male es dir auf ein blatt papier auf... meistens hilft das schon
 
Zuletzt bearbeitet:

dehlen

Bekanntes Mitglied
ja natürlich muss nun auch noch eine methode geschrieben werden die dann damit kürzt

Java:
public Bruch kuerzen() 
        { 
                int ggteilen = ggt(); 
                zahl2 = zahl2/ggteilen; 
                zahl1 = zahl1/ggteilen; 
                {return new zweiZahlen(zahl1,zahl2);}
        }

dachte aber das wäre klar bzw hätten sie sich das ja selber zusammenreimen können... spätestens wenn sie nur den code oben genommen hätten und gemerkt hätten bei 4/3 und 3/4 das der ggt 1 wäre =)
 

XHelp

Top Contributor
Naja, das eher nicht. Sinnvoller weise hat ggT 2 Parameter, das sind die Zahlen für die man eben ggT ausrechnen will. Dann sollte man vllt noch darauf achten, wenn beide Zahlen 0 sind.
 

dehlen

Bekanntes Mitglied
achso ok daran hatte ich jetzt sofort nicht gedacht... hatte den code auch nicht getestet ... =)
aber ich denke für den ansatz ist es ja in ordung man muss ja ersteinmal wissen das man den dreieckstausch benötigt usw
anhand dieser grundlage könnt ihr (threadhersteller) ja nun weiterarbeiten und den code berichtigen (mit xhelps) tipps
;-)
 

Landei

Top Contributor
Java:
public static ggt(int a, int b) {
   return ggtHelper(Math.max(a,b), Math.min(a,b));
}

private static ggtHelper(int a, int b) {
   int c = a % b;
   return c == 0 ? b : ggtHelper(b, c);
}

public static kgv(int a, int b) {
   return a*b/ggt(a,b);
}
 
Zuletzt bearbeitet:

kurisuutiina

Mitglied
also schon mal danke :)
aber bei uns klappt das irgendwie nicht....ich glaube das liegt daran, dass wir visual j# benutzen....

bei uns sieht der Quelltext folgendermaßen aus: (also der schon vom Programm her, vorgegebene Quelltext), das einzige, was wir hinzugefügt haben ist das mit dem double...



package ggt;

import System.Collections.Generic.*;
import System.Data.*;
import System.Drawing.*;
import System.ComponentModel.*;
import System.Windows.Forms.*;

/**
* Summary description for Form1.
*/
public class Form1 extends System.Windows.Forms.Form
{
private TextBox textBox1;
private TextBox textBox2;
private TextBox textBox3;
private Button button1;
private TextBox textBox4;
private Button button2;
private TextBox textBox5;
private TextBox textBox6;
private TextBox textBox7;
/**
* Required designer variable.
*/
private System.ComponentModel.IContainer components;

public Form1()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();

//
// TODO: Add any constructor code after InitializeComponent call
//
}

#region Windows Form Designer generated code
/**
* Clean up any resources being used.
*/
protected void Dispose(boolean disposing)
{
if (disposing)
{
if (components != null)
{
components.Dispose();
}
}
super.Dispose(disposing);
}

/**
* Required method for Designer support - do not modify
* the contents of this method with the code editor.
*/
private void InitializeComponent()
{
this.textBox1 = new System.Windows.Forms.TextBox();
this.textBox2 = new System.Windows.Forms.TextBox();
this.textBox3 = new System.Windows.Forms.TextBox();
this.button1 = new System.Windows.Forms.Button();
this.textBox4 = new System.Windows.Forms.TextBox();
this.button2 = new System.Windows.Forms.Button();
this.textBox5 = new System.Windows.Forms.TextBox();
this.textBox6 = new System.Windows.Forms.TextBox();
this.textBox7 = new System.Windows.Forms.TextBox();
this.SuspendLayout();
//
// textBox1
//
this.textBox1.set_Location(new System.Drawing.Point(12, 29));
this.textBox1.set_Name("textBox1");
this.textBox1.set_Size(new System.Drawing.Size(100, 20));
this.textBox1.set_TabIndex(0);
this.textBox1.add_TextChanged(new System.EventHandler(this.textBox1_TextChanged));
//
// textBox2
//
this.textBox2.set_Location(new System.Drawing.Point(12, 79));
this.textBox2.set_Name("textBox2");
this.textBox2.set_Size(new System.Drawing.Size(100, 20));
this.textBox2.set_TabIndex(1);
this.textBox2.add_TextChanged(new System.EventHandler(this.textBox2_TextChanged));
//
// textBox3
//
this.textBox3.set_Location(new System.Drawing.Point(12, 118));
this.textBox3.set_Name("textBox3");
this.textBox3.set_Size(new System.Drawing.Size(100, 20));
this.textBox3.set_TabIndex(2);
this.textBox3.add_TextChanged(new System.EventHandler(this.textBox3_TextChanged));
//
// button1
//
this.button1.set_Location(new System.Drawing.Point(12, 164));
this.button1.set_Name("button1");
this.button1.set_Size(new System.Drawing.Size(75, 23));
this.button1.set_TabIndex(3);
this.button1.set_Text("button1");
this.button1.set_UseVisualStyleBackColor(true);
this.button1.add_Click(new System.EventHandler(this.button1_Click));
//
// textBox4
//
this.textBox4.set_Location(new System.Drawing.Point(180, 118));
this.textBox4.set_Name("textBox4");
this.textBox4.set_Size(new System.Drawing.Size(100, 20));
this.textBox4.set_TabIndex(4);
this.textBox4.add_TextChanged(new System.EventHandler(this.textBox4_TextChanged));
//
// button2
//
this.button2.set_Location(new System.Drawing.Point(216, 180));
this.button2.set_Name("button2");
this.button2.set_Size(new System.Drawing.Size(53, 36));
this.button2.set_TabIndex(5);
this.button2.set_Text("button2");
this.button2.set_UseVisualStyleBackColor(true);
this.button2.add_Click(new System.EventHandler(this.button2_Click));
//
// textBox5
//
this.textBox5.set_Location(new System.Drawing.Point(180, 79));
this.textBox5.set_Name("textBox5");
this.textBox5.set_Size(new System.Drawing.Size(100, 20));
this.textBox5.set_TabIndex(6);
//
// textBox6
//
this.textBox6.set_Location(new System.Drawing.Point(180, 29));
this.textBox6.set_Name("textBox6");
this.textBox6.set_Size(new System.Drawing.Size(100, 20));
this.textBox6.set_TabIndex(7);
//
// textBox7
//
this.textBox7.set_Location(new System.Drawing.Point(180, 154));
this.textBox7.set_Name("textBox7");
this.textBox7.set_Size(new System.Drawing.Size(100, 20));
this.textBox7.set_TabIndex(8);
//
// Form1
//
this.set_AutoScaleDimensions(new System.Drawing.SizeF(6F, 13F));
this.set_AutoScaleMode(System.Windows.Forms.AutoScaleMode.Font);
this.set_ClientSize(new System.Drawing.Size(292, 266));
this.get_Controls().Add(this.textBox7);
this.get_Controls().Add(this.textBox6);
this.get_Controls().Add(this.textBox5);
this.get_Controls().Add(this.button2);
this.get_Controls().Add(this.textBox4);
this.get_Controls().Add(this.button1);
this.get_Controls().Add(this.textBox3);
this.get_Controls().Add(this.textBox2);
this.get_Controls().Add(this.textBox1);
this.set_Name("Form1");
this.set_Text("Form1");
this.ResumeLayout(false);
this.PerformLayout();

}
#endregion

private void textBox1_TextChanged(Object sender, System.EventArgs e)
{

}

private void textBox2_TextChanged(Object sender, System.EventArgs e)
{

}

private void textBox3_TextChanged(Object sender, System.EventArgs e)
{

}

private void button1_Click(Object sender, System.EventArgs e)
{
double summe;
int i = (int) summe ;
summe = (Double.parseDouble(textBox1.get_Text()) / Double.parseDouble(textBox2.get_Text()));
textBox3.set_Text(String.Format("{0:f}", (System.Double)summe));
Math.floor((summe));
double summe1;
summe1 = summe * Double.parseDouble(textBox2.get_Text()); ; textBox3.set_Text(String.Format("{0:f}", (System.Double)summe));


}

private void textBox4_TextChanged (Object sender, System.EventArgs e)
{

}

private void button2_Click(Object sender, System.EventArgs e)
{

}
}



und wenn ich da jetzt irgendwo, private oder public hinzufüge, bekomme ich ne Fehlermeldung: "Unexpected private/public", "Syntax error" ....
Wir haben schon sooo vieles ausprobiert und nichts klapppttt ! Vor allem int erkennt dieses Programm komischerweise nicht bzw. erscheinen immer wieder Fehlermeldungen.
 

Haave

Top Contributor
Moment mal… J#? Visual J Sharp?
Das ist nicht Java, sondern eine Programmiersprache von Microsoft (die eingestellt wurde, soweit ich weiß).

EDIT:
Ne, J++ war die Microsoft-Sprache, die eingestellt wurde, J# gibt's weiterhin. Dennoch gilt: J# ist nicht Java, sondern lediglich davon inspiriert.
Irgendwie ergibt das aber alles keinen Sinn, wenn ihr vorher mit BlueJ programmiert habt (was ja afaik für Java gedacht ist), jetzt aber J# macht… ???:L
 
Zuletzt bearbeitet:

kurisuutiina

Mitglied
ich weiß auch nicht, wir haben zu erst mit BlueJ gearbeitet, sind dann aber auf J# umgestiegen, weil es anscheinend objektivorientierter ist (also mit buttons und so)...

ja das doofe ist halt, dass wir im i-net nur Sachen zu Jave finden, die bei visual j# aber nicht funktionieren, daher sind wir auch so am Verzweifeln....
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
U Visual-Basic Programm mit Java steuern Java Basics - Anfänger-Themen 8
M Java IDE & Visual? Java Basics - Anfänger-Themen 14
B Visual C++ mit Java Java Basics - Anfänger-Themen 2
S MS Visual Studio.NET und Einstieg in Visual JAVA# Java Basics - Anfänger-Themen 27
thE_29 visual basic verknüpfung in java Java Basics - Anfänger-Themen 3
Torsten.E JavaFX mit Visual Studio Code verwenden Java Basics - Anfänger-Themen 1
J Visual Development Java Basics - Anfänger-Themen 5
T Visual class erstellen? Java Basics - Anfänger-Themen 18
D Eclipse und Visual Editor - erzeugen einer Tabelle Java Basics - Anfänger-Themen 8
B Reiter in einer GUI (Visual Editor) Java Basics - Anfänger-Themen 4
S Daten zwischen Visual Klassen austauschen Java Basics - Anfänger-Themen 9
J Probleme mit Visual Editor Komponenten auf Panel legen Java Basics - Anfänger-Themen 4
K Entwicklungsumgebung Eclipse und Visual Editor Plugin Java Basics - Anfänger-Themen 5
T helloworld mit jni und visual c++ Java Basics - Anfänger-Themen 2
P Äquivalent zu Visual Basic Collection Java Basics - Anfänger-Themen 6
L Probleme bei Visual Editor Installation Java Basics - Anfänger-Themen 4
M Anwendung wie MDI in visual studio ? Java Basics - Anfänger-Themen 7
G Eclipse RC2 und Visual Editor Probleme Java Basics - Anfänger-Themen 3
H .java Dateien in Eclipse einbinden und ausführen Java Basics - Anfänger-Themen 1
onlyxlia Schlüsselworte Was meint man mit "einen Typ" in Java erstellen? Java Basics - Anfänger-Themen 2
O Java Kara geschweifte Klammern Java Basics - Anfänger-Themen 2
richis-fragen Mausrad logitech kann links und rechts klick wie in java abragen. Java Basics - Anfänger-Themen 15
XWing Java Klssenproblem Java Basics - Anfänger-Themen 4
R Umgebungsvariable java -cp gibt immer Java-Hilfe... Java Basics - Anfänger-Themen 3
farbenlos Csv Datei in Java einlesen Java Basics - Anfänger-Themen 18
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
G Java 8 - Support-Ende Java Basics - Anfänger-Themen 7
T Java Weihnachtsbaum + Rahmen Java Basics - Anfänger-Themen 1
N Will mit Java anfangen Java Basics - Anfänger-Themen 13
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
M Java Iterator Verständnisfrage Java Basics - Anfänger-Themen 6
M Java Mail Programm Java Basics - Anfänger-Themen 4
Sniper1000 Java 391 für Windows Java Basics - Anfänger-Themen 37
J Java long- in int-Variable umwandeln Java Basics - Anfänger-Themen 6
JaZuDemNo Java im Studium Java Basics - Anfänger-Themen 7
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
I QR code in Java selber generieren Java Basics - Anfänger-Themen 5
V Java-Ausnahmebehandlung: Behandlung geprüfter Ausnahmen Java Basics - Anfänger-Themen 1
krgewb Java Streams Java Basics - Anfänger-Themen 10
A Überwältigt von der komplexen Java Welt Java Basics - Anfänger-Themen 29
O Mehrfachvererbung auf Spezifikations- und Implementierungsebene in Java. Interfaces Java Basics - Anfänger-Themen 19
John_Sace Homogene Realisierung von Generics in Java ? Java Basics - Anfänger-Themen 19
P Meldung aus Java-Klasse in Thread an aufrufende Klasse Java Basics - Anfänger-Themen 1
R mit Java API arbeiten Java Basics - Anfänger-Themen 9
P JDK installieren Probleme bei der Java-Installation Java Basics - Anfänger-Themen 8
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
Timo12345 JNLP File mit Java öffnen Java Basics - Anfänger-Themen 2
S Video Editierung mit Java.._ Java Basics - Anfänger-Themen 2
F Einstelungen in Java - CursorBlinkRate Java Basics - Anfänger-Themen 10
A PHP $_POST["name"] in Java Java Basics - Anfänger-Themen 3
vivansai21 Is there a oneliner to create a SortedSet filled with one or multiple elements in Java? Java Basics - Anfänger-Themen 9
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
Arjunreddy Can someone please tell me how to use a debugger in BlueJ(a Java environment) Java Basics - Anfänger-Themen 1
M Java assoziationen (UML) Java Basics - Anfänger-Themen 8
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
H Nutzt Eclipse alle CPU-Threads beim Ausführen von Java-Programmen? Java Basics - Anfänger-Themen 4
xXGrowGuruXx Java einstieg, leichte sache 0 verstanden Java Basics - Anfänger-Themen 7
A java.sql.SQLException: Data type mismatch. Java Basics - Anfänger-Themen 1
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
N Java Spiel Figur auf dem Hintergrundbild bewegen. Java Basics - Anfänger-Themen 11
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
N Java Taschenrechner hat Jemand vlt einen Tipp dafür wie ich jetzt die buttons verbinden kann und das Ergebnis auf dem textfield anzeigen lassen kann Java Basics - Anfänger-Themen 13
A Lerngruppe Java Java Basics - Anfänger-Themen 2
G Help me in the Java Program Java Basics - Anfänger-Themen 2
L Java- Vererbung Java Basics - Anfänger-Themen 4
LimDul Suche Java Stream Tutorial Java Basics - Anfänger-Themen 2
_so_far_away_ Ich möchte Java lernen Java Basics - Anfänger-Themen 11
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
V Bild per Java Script austauschen Java Basics - Anfänger-Themen 7
MoxMorris this Keyword in Java Java Basics - Anfänger-Themen 14
D Wie kann man in Java nach Arrays auf Duplikate prüfen Java Basics - Anfänger-Themen 12
wolei JAVA Zeitdifferenz feststellen. Java Basics - Anfänger-Themen 4
DiyarcanZeren Rekursion in Java Java Basics - Anfänger-Themen 5
wolei Java generic interface in a generic class Java Basics - Anfänger-Themen 6
monsterherz Ablauf der Erstellung eines Java Programmes Java Basics - Anfänger-Themen 17
monsterherz Circle.java:5: error: <identifier> expected Java Basics - Anfänger-Themen 2
julian-fr Wie kann ich am besten Java lernen? Java Basics - Anfänger-Themen 17
A Java-Properties und -RessourceBundles Java Basics - Anfänger-Themen 5
lrnz22 Java-Basics-Aufgabe Java Basics - Anfänger-Themen 8
R Java kann nicht installiert werden Java Basics - Anfänger-Themen 8
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
G In ein java Dokument Ton einbinden Java Basics - Anfänger-Themen 1
C was heisst es wenn java ']' erwartet ? Java Basics - Anfänger-Themen 2
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1
KeinJavaFreak Erste Schritte Java "Executable Jar File" nicht vorhanden Java Basics - Anfänger-Themen 1
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
J Java Testklasse Java Basics - Anfänger-Themen 5
P Java Selenium . Parameterized.Parameters erzeugt eine Fehlermeldung Java Basics - Anfänger-Themen 14
W Java-Code mit Array Java Basics - Anfänger-Themen 14
W Java-Code Java Basics - Anfänger-Themen 2
P BeforeEach AfterEach werden nicht ausgeführt. Java / Selenium Java Basics - Anfänger-Themen 4
A Wie führe ich eine Batch-Datei von meiner Java-Anwendung aus? Java Basics - Anfänger-Themen 18
W Java code- TicTac toe Java Basics - Anfänger-Themen 51
Ostkreuz Java Docs Java Basics - Anfänger-Themen 9
R Java boolean Unterschied " == " und " = " Java Basics - Anfänger-Themen 3
D Java Programm mit Batch-Datei starten Java Basics - Anfänger-Themen 32

Ähnliche Java Themen

Neue Themen


Oben