www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Softwaretechnik und Programmierung" - Java Code Methode
Java Code Methode < Softwaretechnik+Pro < Praktische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Softwaretechnik und Programmierung"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Java Code Methode: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 02:12 So 04.11.2012
Autor: martin_vie

Aufgabe
JAVA: Eine Methode um aus einer Reihe von Zahlen den größten "Zahlenzwilling" zu finden.
(z.B. 2,3,3,5,1,7,7; Ergebnis ist 7)

Hallo!

Hab eine Methode gefunden, die das Problem löst. Leider funktioniert es aber nicht für negative Zahlen (hab aber Integer verwendet). ??

Ist die Stelle "if (twinfinder (zahl, lastzahl))" gut gelöst?


import java.util.Scanner;

public class main {

    static int max = 0;
    static int zahl = 0;
    
    static boolean twinfinder (int a, int b)
    {
     if (a == b)
     {
     return true;
     }
     else
     return false;
     }
    
    
public static int maxfinder (int a)
{          
    if (a > max)
    {
     max = a;
    }
    return max;
}
    
public static void main(String[] args) {

int zahl = 0;
int lastzahl = 0;

Scanner sc = new Scanner(System.in);

do
    {   
    System.out.print("Bitte gib eine weitere Zahl [mm] ein\n"); [/mm]
    zahl = sc.nextInt();
    if (twinfinder (zahl, lastzahl))
    {
    maxfinder (zahl);
    }
    lastzahl = zahl;
    }
    while (sc.hasNextInt());
    
System.out.println (max);
}
}

        
Bezug
Java Code Methode: Antwort
Status: (Antwort) fertig Status 
Datum: 18:21 So 04.11.2012
Autor: MathePower

Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)

Hallo martin_vie,

> JAVA: Eine Methode um aus einer Reihe von Zahlen den
> größten "Zahlenzwilling" zu finden.
> (z.B. 2,3,3,5,1,7,7; Ergebnis ist 7)
>  Hallo!
>  
> Hab eine Methode gefunden, die das Problem löst. Leider
> funktioniert es aber nicht für negative Zahlen (hab aber
> Integer verwendet). ??
>  


Da musst Du eine zusätzliche Variable einbauen,
die die Anzahl der Schleifendurchläufe angibt.

Die Abfrage mit if (twinfinder (zahl, lastzahl))
ist erst ab dem zweiten Schleifendurchlauf auszuführen.

Beim ersten Schleifendurchlauf hingegen ist die Variable max zu setzen.


> Ist die Stelle "if (twinfinder (zahl, lastzahl))" gut
> gelöst?
>  

Ja.


>
> import java.util.Scanner;
>  
> public class main {
>  
> static int max = 0;
>      static int zahl = 0;
>      
> static boolean twinfinder (int a, int b)
>      {
>       if (a == b)
>       {
>       return true;
>       }
>       else
>       return false;
>       }
>      


Diese Methode würde ich etwas anders schreiben:

1:
2:  static boolean twinfinder (int a, int b)
3:       {
4:        if (a == b)
5:        {
6:        return true;
7:        }
8:        return false;
9:       }


Eine andere Variante, die ohne if-Abfrage auskommt ist:

1:
2:  static boolean twinfinder (int a, int b)
3:       {
4:        return (a == b);
5:       }
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)





>
> public static int maxfinder (int a)
>   {     
> if (a > max)
>   {
>   max = a;
>   }
>   return max;
>   }
>      
> public static void main(String[] args) {
>  
> int zahl = 0;
>   int lastzahl = 0;
>  
> Scanner sc = new Scanner(System.in);
>  
> do
>   {   
> System.out.print("Bitte gib eine weitere Zahl [mm]ein\n");[/mm]Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)

Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)


>   zahl = sc.nextInt();
>   if (twinfinder (zahl, lastzahl))
>   {
>   maxfinder (zahl);
>   }
>   lastzahl = zahl;
>   }
>   while (sc.hasNextInt());
>  
> System.out.println (max);
>  }
>   }


Gruss
MathePower

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Softwaretechnik und Programmierung"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]