![]() |
Willkommen, Gast ( Anmelden | Registrierung )
![]() ![]() |
![]() |
![]()
Beitrag
#21
|
|
![]() Threadersteller Feuerteufel ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Mitglieder Beiträge: 2.228 Mitglied seit: 22.08.2004 Mitglieds-Nr.: 1.348 ![]() |
Ja das hatte auch schon aus gekriegt bin nur mit gleichen Aufgabe als For/each versucht, aber es klappt nicht (deshalb habe nicht geantwortet).
Außerdem muss noch mit: int [][] matrix = {{2, 0},{7, 2, 0, 2}}; Das kriege ich nicht egal was ich machen. -------------------- |
|
|
![]()
Beitrag
#22
|
|
Womanizer ![]() Gruppe: Freunde Beiträge: 3.798 Mitglied seit: 05.05.2004 Mitglieds-Nr.: 765 ![]() |
QUELLTEXT public class Aufgabe11b { public static void main (String[] args) { int [][] matrix = {{2, 0},{7, 2, 0, 2}}; for( int[] outer : matrix ){ for( int inner : outer ) { System.out.println( inner ); } } } } Dabei ist darauf zu achten, dass diese "for-each"-Variante erst ab v5.0 unterstützt wird. In deiner IDE musst du dementsprechend das Compile-Level auf 5.0 anheben. -------------------- |
|
|
![]()
Beitrag
#23
|
|
![]() Threadersteller Feuerteufel ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Mitglieder Beiträge: 2.228 Mitglied seit: 22.08.2004 Mitglieds-Nr.: 1.348 ![]() |
Danke, mein Lebensretter. *Jetzt hat er Angst vor dem nächsten Forumstreff*
-------------------- |
|
|
![]()
Beitrag
#24
|
|
![]() Threadersteller Feuerteufel ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Mitglieder Beiträge: 2.228 Mitglied seit: 22.08.2004 Mitglieds-Nr.: 1.348 ![]() |
Ich habe nochmal eine Probleme:
Ich schaffe es nicht das er mir alle Zahlen ausgeben werden: QUELLTEXT public class Aufgabe11c { public static void main (String[] args) { int [][] matrix = {{2, 0},{7, 2, 0, 2}}; for(int i = 0; i < matrix.length; i++) for(int k = 0; k < matrix.length; k++) System.out.println(matrix[i][k]); } } Ich bin am verzweifeln. -------------------- |
|
|
![]()
Beitrag
#25
|
|
Womanizer ![]() Gruppe: Freunde Beiträge: 3.798 Mitglied seit: 05.05.2004 Mitglieds-Nr.: 765 ![]() |
Nahezu identisch steht es doch schon da, Florian?!
![]() ![]() QUELLTEXT public class Aufgabe11c { public static void main (String[] args) { int [][] matrix = {{2, 0},{7, 2, 0, 2}}; for(int i = 0; i < matrix.length; i++) for(int k = 0; k < matrix[ i ].length; k++) System.out.println(matrix[i][k]); } } Ich bin übrigens ein Freund der geschweiften Klammern und würde sie auch bei diesen Schleifen oder einfachen Kontrollstrukturen setzen. Das dient der Übersichtlichkeit um ein Vielfaches mehr als bloßes Einrücken der Zeilen. ![]() -------------------- |
|
|
![]()
Beitrag
#26
|
|
![]() Threadersteller Feuerteufel ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Mitglieder Beiträge: 2.228 Mitglied seit: 22.08.2004 Mitglieds-Nr.: 1.348 ![]() |
Ich könnte gerad den Kopf gegen die Tischplatte schlagen.
Das ist garnicht so schlechter Tipp mit den geschweiften Klammern. -------------------- |
|
|
![]()
Beitrag
#27
|
|
![]() Threadersteller Feuerteufel ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Mitglieder Beiträge: 2.228 Mitglied seit: 22.08.2004 Mitglieds-Nr.: 1.348 ![]() |
Hat jemand eine Idee was ich falsch gemacht habe, weil die IF Abfrage funktioniert wie ich es will.
QUELLTEXT import java.util.Scanner;
public class Aufgabe4 { public static void main(String[] args) { double Drehzahl = 0; double Oeldruck = 0; double DOgrenzwert = 500; double DUgrenzwert = 1000; double OeOgrenzwert = 2.5; double OeUgrenzwert = 2.8; System.out.println("Bitte geben sie Drehzahl ein"); Scanner sc = new Scanner(System.in); Drehzahl = sc.nextDouble(); System.out.println("Bitte geben sie ganze Öldruck ein"); Oeldruck = sc.nextDouble(); if ( Drehzahl >= DOgrenzwert || Drehzahl <= DUgrenzwert && Oeldruck >= OeOgrenzwert || Oeldruck <= OeUgrenzwert) System.out.println("Alles Okay "); else System.out.println("Maschine abgeschaltet"); } } Der Beitrag wurde von Kool_Savas bearbeitet: 19.09.2007, 18:28 -------------------- |
|
|
![]() ![]()
Beitrag
#28
|
|
Womanizer ![]() Gruppe: Freunde Beiträge: 3.798 Mitglied seit: 05.05.2004 Mitglieds-Nr.: 765 ![]() |
Hallo,
einfach die Abfrage nochmal überprüfen und vielleicht mit Beispielwerten klarmachen, dass du dort logischen Unsinn fabrizierst. ![]() Die folgende Variante ist logisch korrekt. Gibt natürlich noch viele weitere Möglichkeiten (beispielsweise mit Verneinung), das anders auszudrücken. Was du (vermutlich) möchtest: Fall Drehzahl: Drehzahl soll im Bereich von GrenzwertD1 und GrenzwertD2 sein. Also: Drehzahl >= GrenzwertD1 UND-GLEICHZEITIG Drehzahl <= GrenzwertD2 Fall Öldruck: Öldruck soll im Bereich von GrenzwertO1 und GrenzwertO2 sein. Also: Oeldruck >= GrenzwertO1 UND-GLEICHZEITIG Oeldruck <= GrenzwertO2 Fall Drehzahl und Fall Öldruck müssen gleichzeitig gelten. Also: Fall Drehzahl UND-GLEICHZEITIG Fall Öldruck Und jetzt musst du noch das natürlichsprachliche "und" gegen die logische Und-Verknüpfung in Java (&&) austauschen. ![]() QUELLTEXT if (((Drehzahl >= DOgrenzwert) && (Drehzahl <= DUgrenzwert)) &&
((Oeldruck >= OeOgrenzwert) && (Oeldruck <= OeUgrenzwert))) { System.out.println("Alles Okay "); } else { System.out.println("Maschine abgeschaltet"); } -------------------- |
|
|
![]()
Beitrag
#29
|
|
![]() Threadersteller Feuerteufel ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Mitglieder Beiträge: 2.228 Mitglied seit: 22.08.2004 Mitglieds-Nr.: 1.348 ![]() |
Fall Drehzahl und Fall Öldruck müssen gleichzeitig gelten. Also: Fall Drehzahl UND-GLEICHZEITIG Fall Öldruck
Und jetzt musst du noch das natürlichsprachliche "und" gegen die logische Und-Verknüpfung in Java (&&) austauschen. Das ist es genau, nächste mal vergesse ich die Fragen nicht. Bin nur etwas im Stress gewesen. Manu du solltest Lehrer für Java werden, weil so habe ich verstanden. Ps. Die Frage war: 2. Eine Maschine läuft nur im geregelten Bereich, wenn die Drehzahl in einem Bereich von 500 …1000 Umdrehungen/Minute liegt und der Öldruck in einem Bereich von 2,5…2,8 bar ist. Schreiben Sie ein Überwachungsprogramm. Der Beitrag wurde von Kool_Savas bearbeitet: 20.09.2007, 11:15 -------------------- |
|
|
![]()
Beitrag
#30
|
|
![]() Threadersteller Feuerteufel ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Mitglieder Beiträge: 2.228 Mitglied seit: 22.08.2004 Mitglieds-Nr.: 1.348 ![]() |
Ich habe nochmal ein Fragen, ich habe ein kleines Probleme, ich muss eine Taschenrechner programmieren und ich weiß nicht wie schreiben soll das zum Beispiel die 5 Wurzel ziehen soll oder eine Zahl hoch 2 oder 3 nehmen soll.
-------------------- |
|
|
![]()
Beitrag
#31
|
|
Womanizer ![]() Gruppe: Freunde Beiträge: 3.798 Mitglied seit: 05.05.2004 Mitglieds-Nr.: 765 ![]() |
Hallo,
mit grafischer Oberfläche oder eine "Konsolenanwendung"? Beschreib bitte genauer, wie der Ablauf aussehen soll. Du kannst die Abfragen des Programms und die darauf folgenden Eingaben des Anwenders ja hier kurz skizzieren. -------------------- |
|
|
![]()
Beitrag
#32
|
|
![]() Threadersteller Feuerteufel ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Mitglieder Beiträge: 2.228 Mitglied seit: 22.08.2004 Mitglieds-Nr.: 1.348 ![]() |
Bisher sieht das Programm so aus:
QUELLTEXT import java.util.Scanner;
public class TaschenRechner { public static void main(String[] args) { double x = 0; double y = 0; int a = 0; System.out.println("Für Operatoren Plus = 1, Minus = 2, Mal = 3, geteilt = 4, wurzel ziehen = 5, Potzen = 6"); System.out.println("Bitte geben Operator ein: "); Scanner sc = new Scanner(System.in); a = sc.nextInt(); System.out.println("Bitte die erste Variabel ein: "); x = sc.nextDouble(); System.out.println("Bitte die zweite Variabel und als Würzel ein: "); y = sc.nextDouble(); String myString = "a"; char [] myCharArray = myString.toCharArray (); switch(a) { case '1': System.out.println( x + y ); break; case '2': System.out.println( x - y ); break; case '3': System.out.println( x * y ); break; case '4': System.out.println( x / y ); break; } } } -------------------- |
|
|
![]() ![]()
Beitrag
#33
|
|
Womanizer ![]() Gruppe: Freunde Beiträge: 3.798 Mitglied seit: 05.05.2004 Mitglieds-Nr.: 765 ![]() |
Häng dich da mal ordentlich rein, Florian. Das ist nicht schwer!
QUELLTEXT import java.util.Scanner;
public class TaschenRechner { public static void main(String[] args) { double x = 0; double y = 0; int a = 0; System.out.println("Für Operatoren Plus = 1, Minus = 2, Mal = 3, geteilt = 4, Wurzel ziehen = 5, Potenzieren = 6"); System.out.println("Bitte Operator eingeben: "); Scanner sc = new Scanner(System.in); a = sc.nextInt(); switch (a) { case 5: System.out.println("Bitte Wurzelexponent eingeben: "); x = sc.nextDouble(); System.out.println("Bitte Radikant eingeben: "); y = sc.nextDouble(); break; case 6: System.out.println("Bitte Basis eingeben: "); x = sc.nextDouble(); System.out.println("Bitte Exponent eingeben: "); y = sc.nextDouble(); break; default: System.out.println("Bitte ersten Operand eingeben: "); x = sc.nextDouble(); System.out.println("Bitte zweiten Operand eingeben: "); y = sc.nextDouble(); break; } switch(a) { case 1: System.out.print( "Ergebnis: " + x + " + " + y + " = "); System.out.println( x + y ); break; case 2: System.out.print( "Ergebnis: " + x + " - " + y + " = "); System.out.println( x - y ); break; case 3: System.out.print( "Ergebnis: " + x + " * " + y + " = "); System.out.println( x * y ); break; case 4: if (y == 0) { System.out.println("Durch 0 kann nicht geteilt werden."); } else { System.out.print( "Ergebnis: " + x + " / " + y + " = "); System.out.println( x / y ); } break; case 5: if (x == 0) { System.out.println("Die 0-te Wurzel ist nicht definiert"); } else { System.out.print( "Ergebnis: " + x + "-te Wurzel aus " + y + " = "); System.out.println(Math.pow(y, 1/x)); } break; case 6: System.out.print( "Ergebnis: " + x + " hoch " + y + " = "); System.out.println(Math.pow(x, y)); break; default: System.out.println("Keine gültige Auswahl"); break; } } } -------------------- |
|
|
![]()
Beitrag
#34
|
|
![]() Threadersteller Feuerteufel ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Mitglieder Beiträge: 2.228 Mitglied seit: 22.08.2004 Mitglieds-Nr.: 1.348 ![]() |
Das sehr interessant wie du hast gelöst hast, ich wusste nicht das man zwei switch Anweißung in einem Programm machen darf. Das mit Wurzel werde ich auf jeden Fall lernen und Hochzahl, weil ich habe zwar Nachgeguckt wie man das macht, aber so wie beschrieben war habe ich es nicht richtig verstanden.
Jetzt weiß das auf jeden Fall noch ein bisschen zu lernen habe Java, aber machmal hilft so ein Beispiel sehr. -------------------- |
|
|
![]() ![]()
Beitrag
#35
|
|
Womanizer ![]() Gruppe: Freunde Beiträge: 3.798 Mitglied seit: 05.05.2004 Mitglieds-Nr.: 765 ![]() |
Natürlich darfst du viele switch-Anweisungen machen. Wenn du nicht genau weißt, was eine switch-Anweisung ist, so lese das bitte nach. Dann kommt so eine Frage auch nicht mehr auf.
![]() Math.pow kann potenzieren, Math.sqrt zieht die Quadratwurzel. Wie du merkst, zähle ich keine vorgefertigte Funktion auf, die beliebige Wurzeln zieht. Dazu muss man wissen, was Wurzelziehen überhaupt ist. Die 2-te Wurzel aus 4 ist nichts anderes als 4 hoch 1/2. Allgemein (ohne Sonderfälle etc): x-te Wurzel aus y kann auch mit y hoch 1/x (also dem Kehrwert von x) ausgedrückt werden. Und genau das habe ich in dem Beispiel oben gemacht. -------------------- |
|
|
![]()
Beitrag
#36
|
|
![]() Threadersteller Feuerteufel ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Mitglieder Beiträge: 2.228 Mitglied seit: 22.08.2004 Mitglieds-Nr.: 1.348 ![]() |
Ich bin mal wieder. Ich habe mal eine Frage ich soll einen Geldautomaten programmieren und da habe ein Frage, gibt eine Javaclasse die Beträge automisch in Verschieden Scheine zerlegt?
-------------------- |
|
|
Gast_peks_* |
![]()
Beitrag
#37
|
Gäste ![]() |
Na das kannste doch fix selbst programmieren. Einfach Betrag eingeben, dann überprüfen ob Betrag>größter Geldschein, if yes, Betrag-Geldschein, mit dem Rest gehts nun weiter und falls mal Restbetrag<=größter Geldschein, machste halt ne Überprüfung ob Restbetrag<=Geldschein xyz und so weiter und so weiter..sollte mit einer rekursiven Funktion doch gut klappen.
Nachtrag: Mit dem Modulo Operator kannste das ganze sogar noch beschleunigen und du erhaelst z.b. sofort bei einem Betrag von x die maximale Anzahl von Geldscheinen mit Wert y. also Beispiel: Betrag ist 115 Euro. Dein größter Schein ist z.b. 20 Euro. Also: 115%20=15, d.h. 115-15=100, 100/20 = 5 => 5x 20 euro Scheine, dann mit dem Rest 15 beim nächstkleinerem Schein (10 Euro) das selbe nochmal..usw. Der Beitrag wurde von peks bearbeitet: 28.01.2008, 16:46 |
|
|
![]() ![]() |
Vereinfachte Darstellung | Aktuelles Datum: 06.07.2025, 07:25 |