
freshes
Mitglieder-
Gesamte Inhalte
23 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Alle Inhalte von freshes
-
ja hab's, hab die return-Anweisung falsch angeordnet. Wenn's interessiert: class PolyM { public static void main(String [] args) { double[] t=einPoly(0); } static double[] einPoly(int n) { double a[]; int i; a = new double[n+1]; for ( i = 0; i < a.length; i++) { System.out.println("Bitte Koeffizienten angeben:"); a[i]=IO1.eindouble(); } return a; } } Danke fürs Helfen.
-
sorry hab was Falsches kopiert. PolyM.java:29:2: missing return statement } ^ 1 error return hab ich hinzugefügt
-
Die return-Anweisung hab' ich vergessen. Der Fehler liegt aber beim Deklarieren denke ich PolyM.java:13:14: ';' expected int einPoly(0); ^ 1 error
-
ich wollte nur den zweiten Programmteil behandeln, das Einlesen des Feldes sollte doch auch seperat gehen.
-
so in etwa? irgendwas ist aber immer noch falsch. class PolyM { public static void main(String [] args) { double[] t; t=einPoly(0); } static double[] einPoly(int n) { double a[]; int i; a = new double[n+1]; for ( i = 0; i < a.length; i++) { System.out.println("Bitte Koeffizienten angeben:"); a[i]=IO1.eindouble(); } } }
-
wenn ich jetzt versuche, obiges Modell für das Feld zu benutzen, bekomme ich folgende Fehlermeldung: PolyM.java:11:6: einPoly(int) in PolyM cannot be applied to () t=einPoly(); ^ PolyM.java:24:11: incompatible types found : int required: double[] return n; ^ 2 errors class PolyM { public static void main(String [] args) { double t; t=einPoly(); } static double[] einPoly(int n) { double a[]; int i; a = new double[n+1]; for ( i = 0; i < a.length; i++) { System.out.println("Bitte Koeffizienten angeben:"); a[i]=IO1.eindouble(); return n; } } }
-
etwa so? es läuft zwar, aber ich verstehe den Sinn dahinter nicht, wenn ich das jetzt so richtig gemacht haben sollte. Ist doch sehr umständlich. Im Eingangspost habe ich das sehr einfach innerhalb von main() gemacht. class PolyM { public static void main(String [] args) { double s; s=einnat(); } static int einnat() { int n; System.out.println("Bitte Polynomgrad n eingeben"); n=IO1.einint(); return n; } }
-
wenn ich in beiden deklariere und sie benutze, läuft das Programm zwar, aber dann wäre einnat() ja sinnlos. Wenn ich nur in main deklariere und sonst nichts, dann öffnet sich die Konsole, aber mehr auch nicht. Es kommt keine Eingabeaufforderung. Es scheint so, als würde unten stehendes Programm die Methode static int einnat() einfach ignorieren. class PolyM { public static void main(String [] args) { int n=0; } static int einnat() {int n=0; System.out.println("Bitte Polynomgrad n eingeben"); n=IO1.einint(); return n; } }
-
so geht's leider auch nicht: class PolyM { public static void main(String [] args) { int n=0; } static int einnat() { System.out.println("Bitte Polynomgrad n eingeben"); n=IO1.einint(); return n; } } public static void main(String [] args) ^ 1 error
-
da komme ich aber nicht weiter. static int einnat() ist ein illegal start of expression class PolyM { public static void main(String [] args) { int n=0; { static int einnat() { System.out.println("Bitte Polynomgrad n eingeben"); n=IO1.einint(); return n; } } } }
-
Also für die Eingabe des Polynomgrades n habe ich eine Klasse EingNat definiert, mit der Eingabemethode einnat() kann man jetzt eine Zahl einlesen. class PolyM { public static void main(String [] args) { int n=0; double a[]; int i; /* Tastatureingabe von n */ System.out.println("Bitte Polynomgrad n angeben"); n=EingNat.einnat(); } } Das Einlesen des Feldes a[] gestaltet sich aber immer noch schwierig. Kann ich dann für meine Eingabemethode einPoly z.B. eine Klasse mit Namen Poly definieren, und dann in mein Programm schreiben: a[]=Poly.einPoly() ? würde das so gehen? also analog zu der oberen Variante.
-
Hallo, ich habe einige Verständnisprobleme mit einer Teilaufgabe, die ich in Auszügen mal niederschreibe: Es soll eine Anwendungsklasse PolyM programmiert werden, die aus einer main()-Methode und mehreren statischen Methoden besteht. Die main()-Methode führt folgende Schritte aus: mit der statischen Methode einnat() soll der Polynomgrad n des Polynoms p(x) eingelesen werden. Anschließend wird mit der Methode einPoly() (Prototyp lautet: static double[]einPoly(int n) ) das Koeffizientenfeld a[] des Polynoms eingelesen. Wenn das Polynom den Grad n hat, dann hat das Feld a[] (n+1) Komponenten. Erste Schwierigkeit ist, dass ich nicht genau weiß was ich mit den Methoden einnat() und einPoly() anfangen soll. Ich nehme mal an, dass ich zu den Methoden selber eine Klasse programmieren muss, oder? Zweite Schwierigkeit: ich weiß nicht so genau, wie ich mehrere Methoden in einem Programm anordnen soll, ich kannte bisher nur Programme mit einer main()-Methode. Ich habe das Teilprogramm mal programmiert, läuft auch, aber ohne die vorgegebenen Methoden (IO1 ist eine solche selbst programmierte Klasse)... class PolyM { public static void main(String [] args) { int n=0; double a[]; int i; /* Tastatureingabe von n */ System.out.println("Bitte Polynomgrad n angeben"); n=IO1.einint(); a = new double[n+1]; for ( i = 0; i < a.length; i++) { System.out.println("Bitte Koeffizienten angeben:"); a[i]=IO1.eindouble(); } } }
-
Hallo, ich hab hier eine Aufgabe, mit der ich nicht zurecht komme. Es sollen per Tastatureingabe rationale Zahlen für p und q der quadratischen Gleichung x² + p*x + q = 0 eingegeben werden. Dazu soll im Programm die Diskriminante berechnet werden: D = p² - 4*q Dann gibt es Fallunterscheidungen für D = 0, D>0 und D<0. Die entsprechenden Funktionen x1 und x2 für jeden Fall hab ich ins Programm geschrieben. Ich weiß jetzt aber nicht wie ich weiter vorgehen soll, soll ich die if-Anweisung verwenden? oder mit case operieren? Im Code ist für euch wohl unschwer zu erkennen, dass das nicht funktioniert, bekomm das Programm einfach nicht zum Laufen. Für Hilfestellungen wäre ich sehr dankbar. class A8 { public static void main(String[] args) {int p, q, D, x1, x2, j; System.out.println("Quadratische Gleichungen"); /* Tastatureingabe von p */ System.out.println("Bitte rationale Zahl p eingeben"); p=IO1.einint(); /* Tastatureingabe von q */ System.out.println("Bitte rationale Zahl q eingeben"); q=IO1.einint(); do {D=p*p - 4*q; System.out.println(p+" hoch "+2+" - "+4+" * "+q+" = "+D); } if (D > 0) { x1 = -p/2 + (Math.sqrt(D))/2; x2 = -p/2 - (Math.sqrt(D))/2; } if (D = 0) { x1 = -p/2; x2 = -p/2; } if (D < 0) { x1 = -p/2 + j * (Math.sqrt(-D))/2; x2 = -p/2 - j * (Math.sqrt(-D))/2; } System.out.println("Ende der Berechnung"); } }
-
hab eine IO1.class-Datei gefunden, die im selben Verzechnis abgelegt wird wie das Programm und die andere .class-Datei. Jetzt läuft das Programm. Danke für die Hilfestellung.
-
Aber wie deklariere ich das denn? ich habe diverse andere Java-Programme aus dem Internet, die eine Tastatureingabe erfordern, ausprobiert, und bekomme da immer denselben Fehler. import java.io.*; class AA { public static void main(String args[]) throws IOException geht das in die richtige Richtung?
-
Hallo, habe ein Programm für Wertetabellen von mathematischen Funktionen geschrieben. Leider kann ich das Programm nicht kompilieren, mir wird angezeigt: cannot find symbol, symbol : variable IO1 Könnt ihr mir helfen? public class AA{ /** * @param args */ public static void main(String[] args) { String[] Funktionen = { "Berechnung des Logarithmus", "Berechnung einer trigonometrischen Funktion", "Berechnung eines Polynoms" }; System.out.println("Dies sind die mathematischen Funktionen"); System.out.println(""); for (int i = 0; i < 3; i++) { System.out.println(i + "." + Funktionen[i]); if (i != 2) continue; int m, a, N; int d = 0; double Ergebnis = 0, x = 0; do { System.out.println(""); System.out .println("Bitte geben Sie die gewünschte Berechnung an."); m = IO1.einint(); System.out .println("Bitte geben Sie eine rationale Zahl als Startwert ein."); a = IO1.einint(); System.out .println("Bitte geben Sie eine rationale Schrittweite > 0 ein."); d = IO1.einint(); if (d <= 0) System.out.println(d + " liegt nicht über Null."); } while ((d <= 0) && (m >= 0) && (m <= 2)); System.out .println("Bitte geben Sie eine natürliche Zahl für die anzahl der zu berechnenden x-Werte ein."); N = IO1.einint(); switch (m) { case 0: for (i = a; i <= N; i++) { x = a + i * d; Ergebnis = Math.log(x); System.out.println("x= " + x + " y= " + Ergebnis); } break; case 1: for (i = a; i <= N; i++) { x = a + i * d; Ergebnis = Math.sin(x); System.out.println("x= " + x + " y= " + Ergebnis); } break; case 2: for (i = a; i <= N; i++) { x = a + i * d; Ergebnis = x * (x * x - x - 12); System.out.println("x= " + x + " y= " + Ergebnis); } break; default: System.out.println("Unzulässiger Modus"); break; } } } }
-
hat sich erledigt
-
vielen Dank, so geht's. Eine Frage hätte ich noch: Angenommen jmd. gibt per Tastatureingabe einen Wert für b ein (bei mir ist b ja vorgegeben). Ich will jetzt, dass das Programm sofort beendet wird, wenn jmd. für b<1 eingibt. Was muss ich dann machen? eine If-Anweisung? if(b<1) System.out.println("Eingabefehler"); Da fehlt natürlich noch was, die Berechnung wird ja fortgesetzt.
-
Hallo, ich habe hier eine Aufgabe mit ganzzahligen Potenzen gelöst, allerdings nur auf die mir als Anfänger bisher bekannte Methode mit der while-Schleife: {public static void main(String args[]) {int b=15; /* Zahl */ int p=1; /* Potenz */ int n=0; /* Exponent */ int kw=2100000000; /* Kontrollwert */ System.out.println("Ganzzahlige Potenzen"); while ((b>1) && (kw>= && (p<=2100000000)) {p=(int)Math.pow((double)b, (double)n); n=n; {System.out.println("Exponent: "+n); System.out.println(b+" hoch "+n+" = "+p); } kw=kw/b; n=n+1; } System.out.println("Ende der Berechnung"); } } [/code] ich will das Ganze nun in eine fußgesteuerte do-Schleife wandeln, stoße da im Moment aber etwas an meine Grenzen. Habe gelesen dass bei einer do-Schleife erst am Ende überprüft wird, ob die Schleife nochmal durchlaufen werden muss. Wie geht denn das? Würde mich freuen wenn mir jmd. kurz helfen könnte...
-
danke hat sich erledigt!
-
so in etwa? if(q < 0) q * (-1); irgendwie bekomme ich mit der Anweisung immer noch ein Error unter dem Mal-Zeichen
-
danke für die hilfe! ich nehme an für die Multiplikation von (-1) brauche ich eine if-Anweisung, aber wo soll die hin?
-
Hallo, ich bin noch ein Anfänger und versuche gerade erst durch den Stoff durchzusteigen, bitte keine Haue Folgendes Problem: ich soll eine Quersumme von der Zahl 1543 (als Beispiel, beliebige vierstellige Zahl) bestimmen, und zwar gibt es einige Vorgaben: - die Quersumme einer natürlichen Zahl soll berechnet werden - wenn der Anwender eine negative ganze Zahl eingibt, wir diese mit (-1) multipliziert - für den ganzzahligen Rest soll der Modulooperator (%) eingesetzt werden, für die Berechnung ganzzahliger Quotienen der Divisionsoperator (/) - die Summanden der Quersumme werden in einer Schleife berechnet. Nach Ende der Schleife wird die Quersumme ausgegeben soviel dazu. so sieht im Moment mein Programm aus: class A1B3 {public static void main(String args[]) {int q=1543; int su=1; int m=10; System.out.println("Quersumme"); while (q>=1) { su=q%m; { System.out.println(q+"%"+m+"="+su); q=q/m; } System.out.println("Ende der Berechnung"); } } } ich hab die Summanden ausgegeben. Problem ist jetzt aber, wie ich die Summanden am Ende der Schleife addiere, um auf die Quersumme zu kommen. Wie mache ich das denn? Und das mit der Multiplikation von (-1) hab ich auch nocht nicht ganz begriffen...hoffe ihr könnt mir helfen.