tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
NEIN
ANTWORTEN
21
ZUGRIFFE
628
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von xunnamedx
    xunnamedx xunnamedx ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Beiträge
    79
    Hi
    Ich habe ein Problem Mit meinem Primes Prog und zwar denkt es anscheinend boolean isPrime ist immer true ich habe bereits alle möglichen Ursachen Idiotensicher gemacht aber ich finde den Fehler nicht java Primes 10 20 Ausgabe:11 12 13 14 15 16 17 18 19.
    Ich bitte euch das mal anzuschauen sollte ja nicht allzu schwer sein
    Angehängte Dateien Angehängte Dateien
     

  2. #2
    Avatar von xunnamedx
    xunnamedx xunnamedx ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Beiträge
    79
    Wollte noch dazu sagen dass ich das Prog wohl ziemlich verstümmelt habe Ausgabe untere_grenze anstatt toProof zB habe schon so ziemlich alles probiert ich kann keinen fehler erkennen. Ich hoffe es kann mir jemand helfen
    Danke im voraus
     

  3. #3
    Avatar von Basti54
    Basti54 Basti54 ist offline Mitglied Gold
    Registriert seit
    Nov 2004
    Beiträge
    159
    Deine erste For-Schleife sieht etwas seltsam aus.

    was soll die machen?
     
    come ready to play!

  4. #4
    Avatar von xunnamedx
    xunnamedx xunnamedx ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Beiträge
    79
    wie schon gesagt sieht alles ein bischen komisch aus sie soll einfach nur den zahlenintervall durchrattern die zweite ist fürs prüfen der einzelnen Zahlen zuständig Ursprünglich war in der ersten vor dem ersten Semikolon ein zaehler eingebaut
     

  5. #5
    Avatar von Basti54
    Basti54 Basti54 ist offline Mitglied Gold
    Registriert seit
    Nov 2004
    Beiträge
    159
    was hälste hiervon:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    public boolean primtest(int n){
        
            for (teiler=2;teiler*teiler <= n; teiler++)
            {
                if(n % teiler == 0){
                  // keine Primzahl
                 return true;
               else {
                    return false;
                }
            }
            // keinen Teiler gefunden, also Primzahl
            return true;
        }
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
        for(x=untere_grenze;x<=obere_grenze;x++){
            if (primtest(x)){
                ...
        }
            else {
                ...
        }
        }

    Weiß jetzt aber nich genau, ob's ...
    Geändert von Basti54 (29.03.05 um 15:05 Uhr)
     
    come ready to play!

  6. #6
    Avatar von xunnamedx
    xunnamedx xunnamedx ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Beiträge
    79
    Sieht gut aus die Optimierung teiler*teiler hat ich auch drin bzw wurzel toProof zunächst mal bin ich ein Neuling und mit OOP hab ich mich bis jetzt noch nicht groß beschäftigt also ich suche kein anderes Prog sondern den Fehler in meinem Prog ich kann ihn einfach nicht finden trozdem dank ich dir schonmal
     

  7. #7
    Avatar von Basti54
    Basti54 Basti54 ist offline Mitglied Gold
    Registriert seit
    Nov 2004
    Beiträge
    159
    ich glaube, es ligt an Variable Teiler, weil sie global gilt, nicht local. Ich guck aber noch
     
    come ready to play!

  8. #8
    Avatar von xunnamedx
    xunnamedx xunnamedx ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Beiträge
    79
    Danke für deine Antwort ich habe es mal ausprobiert also ich habe sie jezz ma in dem zweiten schleifenkopf definiert und geht leider immernoch nicht
     

  9. #9
    Avatar von Basti54
    Basti54 Basti54 ist offline Mitglied Gold
    Registriert seit
    Nov 2004
    Beiträge
    159
    e voila:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    
    class Primes {
       public static void main (String[] args) {
        int teiler = 2;
        int untere_grenze = 1;//Integer.parseInt(args[0]);
        int obere_grenze = 20;//Integer.parseInt(args[1]);
        int toProof;
        boolean isPrime = false;
     
     
          for(toProof = untere_grenze; toProof < obere_grenze + 1; toProof++) {
          
            for(teiler = 2; teiler < toProof; teiler++) {
                        //if (toProof % teiler == 0) {
                          // isPrime = false;
                           //break;
                           //} else {
                               if(toProof % teiler != 0) {
                                     isPrime = true;
                               } else {
                                      isPrime = false;
                                      break;
                               }
                          //}
     
     
     
              }
              if(isPrime == true)
              System.out.println(toProof);
              isPrime = false;
          }
     
       }
     }

    bissel Variablen umstellen und unnötiges entfernen und schon geht's. ist getestet.
     
    come ready to play!

  10. #10
    Avatar von xunnamedx
    xunnamedx xunnamedx ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Beiträge
    79
    Mhm also bei mir geht es nicht kannst du mir bitte mal das fertige Prog schicken also den Compilierfertigen code
     

  11. #11
    Avatar von Basti54
    Basti54 Basti54 ist offline Mitglied Gold
    Registriert seit
    Nov 2004
    Beiträge
    159
    Bei mir läuft's... ?(
    Siehe anhang.
    Angehängte Dateien Angehängte Dateien
     
    come ready to play!

  12. #12
    Avatar von xunnamedx
    xunnamedx xunnamedx ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Beiträge
    79
    Danke Hammerhart ich versteh das nicht du hast die Abfrage umgedreht und ein wenig Variablen umgestellt aber sobald ich das in mein Prog übertrage geht es nicht was soll das das Prog raubt mir echt mein letzten nerv
     

  13. #13
    Avatar von xunnamedx
    xunnamedx xunnamedx ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Beiträge
    79
    hier mal mein Prog
    Angehängte Dateien Angehängte Dateien
     

  14. #14
    Avatar von teppi
    teppi teppi ist offline Mitglied Platin
    Registriert seit
    May 2004
    Ort
    Berlin
    Beiträge
    537
    Wenn ich mal kurz drauf gucke gibst du unten nur die untere Grenze aus .. obwohl du toProof ausgeben müsstest .. so wie ich das sehe ..

    Übrigens heißt Proof im englischen "sicher" und nicht prüfen

    Bsp: bulletproof
     
    :-) möp

  15. #15
    Avatar von Basti54
    Basti54 Basti54 ist offline Mitglied Gold
    Registriert seit
    Nov 2004
    Beiträge
    159
    Zitat Zitat von teppi
    Übrigens heißt Proof im englischen "sicher" und nicht prüfen

    Bsp: bulletproof
    Der Zollstock zeigt auch nur Zentimeter an ....
     
    come ready to play!

Ähnliche Themen

  1. Antworten: 6
    Letzter Beitrag: 21.11.10, 12:35
  2. while-Schleife raubt mir den Nerv
    Von shakar im Forum C/C++
    Antworten: 3
    Letzter Beitrag: 26.04.07, 07:24
  3. Antworten: 1
    Letzter Beitrag: 23.03.05, 13:32
  4. Spyware oder Ad-Ware raubt letzten Nerv
    Von da_Dj im Forum Microsoft Windows
    Antworten: 2
    Letzter Beitrag: 12.02.05, 15:53
  5. string durch popupmenue aus bel. prog an mein prog senden
    Von sepp_gimpel im Forum VisualStudio & MFC
    Antworten: 0
    Letzter Beitrag: 02.12.03, 10:58