Keiner der helfen kann?

...zur Antwort
Brauche Hilfe bei JAVA! (Rekursion) - Fehlermeldung: missing return statement.

Sehr geehrte Community,

Ich versuche schon seit gestern Abend die Fehlermeldung zu beheben, jedoch gelang es mir bisher nicht. Ich würde mich sehr freuen, wenn ein geschultes Auge der Sache auf den Grund gehen könnte und den Fehler beheben.

Es geht um einen Divisions-Quellcode in JAVA. Den ich mit Rekursion versucht habe. Hier mein Quellcode:

public class Div{ public static void main(String[] args){ StdOut.print("Fuer Division:" + "\n" + "Erste Ganzzahl(!=0): "); int a = StdIn.readInt(); StdOut.print("Zweite Ganzzahl(!=0): "); int b = StdIn.readInt(); int x = div(a, b); if(a != 0 || b != 0){ StdOut.print("Ergebnis(" + a + " durch " + b + "): " + x); } }//Ende main Methode

public static int div(int a, int b){
    if(b != 0){
        if((a < 0) || (b < 0)){
            if(a < 0){
                return -div_help(-a, b);
            }
            if(b < 0){
                return -div_help(a, -b);
            }
        }//Ende if
        if((a >= 0) && (b > 0)){
            return div_help(a, b);
        }
        if((a < 0) && (b < 0)){
            return div_help(-a, -b);
        }
    }//Ende if
    else{
        System.out.println("Ungueltige Eingabe!"); 
        return 0;
    }//Ende else
}//Ende div Methode

public static int div_help(int a, int b){
    if(a < b){
        return 0;
    }//Ende if
    if(a == b){
        return 1;
    }//Ende if
    else{
        return(div_help(a - b, b) + 1);
    }//Ende else
}//Ende div_help Methode

}//Ende R2b

Es lässt sich nicht compilieren, weil dort angeblich ein "return" fehlt. Hab auch alles kommentiert, damit ich keine Klammer vergessen. Aber irgend wie hat es nicht ganz geholfen. (Der Fehler soll in der 34. Zeile sein.)

Mit freundlichen Grüßen, Danny

...zum Beitrag

bitte den quelltext richtig formattieren!!

...zur Antwort
class Caesar

  // Anfang Attribute
  // Ende Attribute
 
{
 
  // Anfang Methoden
  public static String caesar (String quelle, int verschiebung) {
   //von hier
  quelle = quelle.toUpperCase();
  //bis hier was hinzugefügt
   int laenge = quelle.length();
   String ergebnis="";
   for (int i=0; i<laenge; i++) {
     char buchst = quelle.charAt(i);
     ergebnis = ergebnis + charCaesar(buchst, verschiebung);
   }
   return ergebnis;
 }
 
 private static char charCaesar(char buchst, int verschiebung) {
   String alphabet="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 
 
   if(buchst==' ')        //Leerzeichen bleibt gleich
   {
    return ' ';
   }
 
   int pos = alphabet.indexOf(buchst);
   int endPos = (pos + verschiebung) % 26;
   return alphabet.charAt(endPos);
 }
 
 
 public static String deCaesar (String code, int verschiebung) {
  return caesar(code, 26-verschiebung);
 }
  // Ende Methoden
}
...zur Antwort

ich vermute du meinst das:

this.addKeyListener(new KeyListener() {
    public void keyPressed(KeyEvent e) {
        System.out.println(e.getKeyChar() + " pressed");
             if(e.getKeyChar.equals(e.VK_ENTER)
                      restartApplication();

    }
    public void keyReleased(KeyEvent e) {
        System.out.println(e.getKeyChar() + " released");
    }
    public void keyTyped(KeyEvent e) {
        System.out.println(e.getKeyChar() + " typed");
    }
});

public void restartApplication()
{
  final String javaBin = System.getProperty("java.home") + File.separator + "bin" + File.separator + "java";
  final File currentJar = new File(MyClassInTheJar.class.getProtectionDomain().getCodeSource().getLocation().toURI());

  if(!currentJar.getName().endsWith(".jar"))
    return;

  final ArrayList<String> command = new ArrayList<String>();
  command.add(javaBin);
  command.add("-jar");
  command.add(currentJar.getPath());

  final ProcessBuilder builder = new ProcessBuilder(command);
  builder.start();
  System.exit(0);
}   
...zur Antwort

zu aller erst: WENN man Quellcode eingibt, dann sollte man diesen auch FORMATIEREN!

So, nun zu deiner Frage: Hast du eine main Methode?

Außerdem wird dir bei deiner Rechnung der Durchschnitt falsch sein; da in Java gilt 3/2 = 1 erst musst du das machen:

double durchschnitt = ((pges / 5)+(pges % 5));
...zur Antwort

Zum lesen:

import java.io.*;

class ReadFile
{
public static void main(String[] args) throws IOException
  {
FileReader fr = new FileReader("test.txt");
BufferedReader br = new BufferedReader(fr);

String zeile = "";

while( (zeile = br.readLine()) != null )
{
  System.out.println(zeile);
}

br.close();
  }
}

Und damit du bis zu einem Wort liest, google mal nach StringTokenizer.

...zur Antwort
Javac erkennt Text als Befehle

Ich Habe folgendes Problem: Der javac aus der cmd erkennt meine JOptionPane message dialoge als befehle. Deswegen gibt er mir die ganze zeit als Fehlermeldung das ; und so fehlen. Bitte helft mir! Viele Grüße Jonathan

Hier der Quellcode:

import javax.swing.JOptionPane;

public class Endprojekt { public static void main(String[] args) { String Name; String Laune; String Suchbegriff; JOptionPane.showMessageDialog(null, "Hallo, ich bin das Lexikon der Java Grundlagen. Ich gebe dir die möglichkeit nach einzelenen Suchbegriffen zu suchen und ich werde eine kurze Textdatei ausgeben die erklärt was dieser Begriff bedeutet"); Name = JOptionPane.showInputDialog("Wie heißt du?"); Laune = JOptionPane.showInputDialog("Wie geht es dir (gut,schlecht)"); if (Laune = schlecht) { JOptionPane.showMessageDialog(null, "Hallo " + Name + "Schade das es dir schlecht geht. Vielleicht kann ich dich ja aufheitern. Wenn du auf OK drückst wirst du die möglichkeit haben nach Suchbegriffen zu suchen. Bitte benutze nur die vorgegebenen Suchbegriffe!"); }

    else {
        JoptionPane.showMessageDialog(null, "Hallo " + Name +  "Schön das es dir gut geht. Wenn du auf OK drückst wirst du die möglichkeit haben nach Suchbegriffen zu suchen. Bitte benutze nur die vorgegebenen Suchbegriffe!");  }

    for (int wiederholung = 0, wiederholung < 10, wiederholung++) {
        Suchbegriff = JOptionPane.showInputDialog("Sie können jetzt einen der folgenden Suchbegriffe eingeben: Programmieren, Programmiereigenschaften, Programmierschritte, Wann lohnt sich programmieren, Java, Mein erstes Programm, Namenskonventionen, Kommentare, Variablen und Datentypen, Wertzuweisung, Dateityp String, Der Dialog mit dem Anwender, Operatoren und Ausdrücke, Der Cast-Operator, Vergleiche und Bedingungen, Arithmetische Operatoren, Prorität, Logische Operatoren, Sonstige Operatoren, Anweisungsfolge, Auswahlstrukturen und Zweiseitige Auswahlstruktur.");

    if (Suchbegriff = Programmieren) {
        JOptionPane.showMessageDialog(null, " Programmieren bedeutet das man einer Maschine einen Befehl gibt die sie auszuführen hat. Als Geburtsstunde der Programmierung gilt ein Plan für eine mechanische Rechenmaschine von einer Mathematikerin. Von dort an hat sich vieles geändert! Zuerst gab es nur 010100101000010101001010101… Programmieren dies hat sich nach einiger Zeit aber als unnütz herausgestellt deswegen ging man zum maschinennahmen Programmieren über. "); }

    else if (Suchbegriff = Programmiereigenschaften) {
        JOptionPane.showMessageDialog(null, " Maschinennahes Programmieren: Man programmiert in Abkürzungen für die langen Zahlencodes.                                                              Vorteile: -volles ausschöpft des Prozessors –schnelleres Übersetzen

Nachteile: -immer neu schreiben des Quellcodes für jeden Prozessor

...zum Beitrag

wenn ichs lesen könnte ,würde ich auch helfen...

...zur Antwort
import java.io.*;

public class Eingabe {

String text;
String antwort = "antwort";

public static void main(String[] args) throws IOException {

BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

text = input.readLine();

if(text.equals("dein Wort"){
 System.out.println(antwort);
}
} 
}

ungefähr so

...zur Antwort
Klasse1 kl1 = new Klasse1();
dann einfach methoden aufrufen.
...zur Antwort
class MyApplikation { 
    // Eingabe
    private static int EINGABEWERT_A = 5;
    private static int EINGABEWERT_B = -8;

 // Verarbeitung
    static int summe = EINGABEWERT_A + EINGABEWERT_B;
    static int differenz = EINGABEWERT_A-EINGABEWERT_B;

public static void main (String [] args){

   ausgeben();
}
public static void ausgeben(){
    // Ausgabe der Summe 
    System.out.print( EINGABEWERT_A +"+"+ "("+EINGABEWERT_B+")");
    System.out.println("summe lautet:" + summe);

    // Ausgabe der Differenz
    System.out.print(EINGABEWERT_A+"-" + "("+EINGABEWERT_B+")");
    System.out.println("differenz lautet:" + differenz);
}
}

jetzt sollte es funktionieren

...zur Antwort

nvm..

...zur Antwort