Schleifen Problem

nikels

Mitglied
Hi
Die Aufgaben Aufgabe ist folgende es soll ein Programm geschrieben werden das die ersten 5 perfekten Zahlen ausgibt.
Die skizze meines Programms steht, aber irgendwie stehe ich grad massiv auf dem Schlauch und zwar mit einer simplen Schleife.

Java:
public class PerfekteZahl {
	public static void main (String [] args) {
		

		int zahl = 4;
		int c = zahl/2;
		int summe = 0;
		
		if (zahl%2==0)
			
			while (c==1){
				
				if (zahl%c==0){
					summe=summe+c;
		System.out.println("teilbar");
					c--;		}
				else
					c--;}
		
		else
			System.out.println("Nicht Teilbar durch 2");
	}
}
 

Ruzmanz

Top Contributor
Mal von den Schleifen abgesehen, sind da mMn mehrere Fehler in der Logik. Warum versuchst du nicht erstmal in Pseudocode oder Mathematisch hinzuschreiben, wie eine vollkommene Zahl ermittelt wird.

"while (c==1)" bedeutet: "Solange c exakt 1 ist". Das kann aber nicht funktionieren, da du c-- in der Schleife aufrufst. Selbst wenn du es einmal in die Schleife schaffen würdest, könnte sie keinen 2. Durchlauf starten, da dann c auf jeden Fall != 1 ist.
 
Zuletzt bearbeitet:

Ditoran

Mitglied
Also irgendwie verstehe ich deine Idee dahinter nicht ganz.

Ich hätte bei der gegebenen Aufgabenstellung erstmal angefangen, per for-Schleife und Modulo die Faktoren der einzelnen Zahlen auszurechnen und zu addieren. Wenn die Summe nicht passt, wird die nächste Zahl genommen.

Ein kleiner Gedankenanstoß:

Java:
int berechnet = 0;
int summe = 0;
for(int i=4; i<Integer.MAX_VALUE; i=i+2){ //Laut Definition sind noch keine ungeraden perfekten Zahlen bekannt
   for(int j=i/2; j>0; j--){
        //hier kommt die Modulo-Operation (i%j==0)
   }
      //schauen, ob die Summe der Faktoren gleich der Zahl ist, dann Summe wieder auf 0 setzen
}

Wenn man sich in Wikipedia die Definition anschaut, kann man das Ganze noch optimieren, da die Laufzeit so ziemlich darunter leidet.
 

nikels

Mitglied
Wenn die Lösung interessiert ist folgende
Java:
/
public class PerfectNumber {

    public static void main(String[] args) {
    	
    	int n=1;
    	int divisible =0;   
    	long perfectnr =0;
    	long prim =0;
    	
    	do
    	{
    	
    		n++;
    		
    		//potentielle perfekte Zahl wird berechnet.
    		perfectnr=(long)(Math.pow(2,n-1)*(Math.pow(2,n)-1));
    		
    		//perfekte zahl wird uberpruft.
    		prim=(long)(Math.pow(2,n)-1);
    		for (long counter=prim ;counter>0; counter--){
    			if (prim%counter == 0)
	       		divisible++;
    		}	
    			
    		//gefundene perfekte zahl wird mit ihren ganzzahligen teilern ausgegeben.	
    		if (divisible<=2)
    		{
      			System.out.printf("%n%d = ",perfectnr);
    			while (perfectnr>1)
    				{    			
    				if (perfectnr % 2 !=0)
    					perfectnr=(perfectnr/2)+1;
    					else
    						perfectnr=perfectnr/2;
    				System.out.print(perfectnr + (perfectnr>1 ? "+" : ""));		
    				}
    		}
    		
	    	divisible=0;
    			
    	} while (n<100);
    	
    
    }
    
    
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Schleifen Problem Java Basics - Anfänger-Themen 2
N Problem mit Schleifen Java Basics - Anfänger-Themen 20
C Erste Schritte While-Schleifen-Problem Java Basics - Anfänger-Themen 3
S for-Schleifen Problem Java Basics - Anfänger-Themen 4
X Methoden Logik-Problem mit Schleifen. Java Basics - Anfänger-Themen 7
N Schleifen problem Java Basics - Anfänger-Themen 17
H Kleines Problem bei den Schleifen Java Basics - Anfänger-Themen 5
S Timer / Schleifen Verständnis Problem Java Basics - Anfänger-Themen 3
N Input/Output Schleifen - Ausgabe Problem Java Basics - Anfänger-Themen 2
M Schleifen-Problem Java Basics - Anfänger-Themen 7
A OOP Arraybefüllung mit for-Schleifen Problem: Umsprung in die zweite Zeile Java Basics - Anfänger-Themen 11
S Problem mit while-Schleifen Java Basics - Anfänger-Themen 6
S Problem bei Schleifen Java Basics - Anfänger-Themen 4
J Schleifen-Problem mit Arrays Java Basics - Anfänger-Themen 8
A Problem mit for Schleifen und Zeichnen HILFE!!! Java Basics - Anfänger-Themen 6
P while schleifen problem Java Basics - Anfänger-Themen 14
A Mitternachtsformel. Problem mit if Schleifen (Glaub ich). Java Basics - Anfänger-Themen 16
S Problem mit schleifen Java Basics - Anfänger-Themen 2
B Problem bei for Schleifen Java Basics - Anfänger-Themen 5
C Schleifen-Problem Java Basics - Anfänger-Themen 6
N Problem mit Schleifen-Durchlauf Java Basics - Anfänger-Themen 2
T schleifen Java Basics - Anfänger-Themen 3
Kingdako Wie löse ich eine Mathematische Formel mit Arrays und Schleifen? Java Basics - Anfänger-Themen 32
S Erste Schritte While Schleifen Java Basics - Anfänger-Themen 11
M geschachtelte for-Schleifen - Einmaleins ausgeben Java Basics - Anfänger-Themen 3
Mikejr Schleifen Java Basics - Anfänger-Themen 4
java-starter Erste Schritte Mit While Schleifen Programme schreiben Java Basics - Anfänger-Themen 4
K geschachtelte "for-Schleifen" Java Basics - Anfänger-Themen 3
Alen123 Potenzen in Schleifen Java Basics - Anfänger-Themen 26
Alen123 String wiederholen mit Schleifen Java Basics - Anfänger-Themen 1
A Schleifen und Boolsche Ausdrücke Java Basics - Anfänger-Themen 42
W Schleifen Java Basics - Anfänger-Themen 36
S Interaktive Abfrage, Hilfe mit Schleifen! Java Basics - Anfänger-Themen 6
Mojtaba1986 Hausaufgabe (Schleifen) Java Basics - Anfänger-Themen 33
A Schleifen Verzweigungen Java Basics - Anfänger-Themen 18
C Sind die while-Schleifen richtig in for-Schleifen ersetzt worden? Java Basics - Anfänger-Themen 8
H Muster mit verschachtelten Schleifen kreieren. Java Basics - Anfänger-Themen 2
A Schleifen in Java Java Basics - Anfänger-Themen 4
A Schleifen, Hilfe! Java Basics - Anfänger-Themen 6
C Schleifen Durchlauf Java Basics - Anfänger-Themen 7
M While-Schleifen-Fehler Java Basics - Anfänger-Themen 4
J Schleifen Wiederholendes Zeichenmuster Java Basics - Anfänger-Themen 4
K For-Schleifen Ablauf Java Basics - Anfänger-Themen 5
L Anzahl der Aufrufe von Schleifen bestimmen Java Basics - Anfänger-Themen 1
S Hilfe bei Java Aufgabe (Schleifen) Java Basics - Anfänger-Themen 25
B Verschachtelte For Schleifen Java Basics - Anfänger-Themen 8
G Input/Output Schleifen Durchlauf Java Basics - Anfänger-Themen 5
A Erste Schritte Schleifen Java Basics - Anfänger-Themen 5
J Muster und Schleifen Java Basics - Anfänger-Themen 33
H ERGÄNZUNGSFRAGE: Klammersetzung bei if-else Anweisungen und Schleifen Java Basics - Anfänger-Themen 2
scratchy1 Argumente mit verschiedenen Schleifen ausgeben Java Basics - Anfänger-Themen 3
C Schleifen Java Basics - Anfänger-Themen 12
E geschachtelte for-schleifen Java Basics - Anfänger-Themen 6
L Übungsaufgabe zu Schleifen Java Basics - Anfänger-Themen 7
W Erste Schritte Rechnen mit Schleifen? Denkanstoß gesucht Java Basics - Anfänger-Themen 15
A Erste Schritte for-Schleifen vereinfachen Java Basics - Anfänger-Themen 5
S Immer das selbe mit den Schleifen Java Basics - Anfänger-Themen 24
kokojamboo92 Schleifen und Arrays Java Basics - Anfänger-Themen 7
O Array, geschachtelte For-Schleifen Java Basics - Anfänger-Themen 34
S While-Schleifen Ausgabe als String? Java Basics - Anfänger-Themen 1
R Threads Pause zwischen zwei Schleifen Java Basics - Anfänger-Themen 1
D verschachtelte Schleifen Java Basics - Anfänger-Themen 6
H Schleifen (anfänger) Java Basics - Anfänger-Themen 13
C Variablen in Schleifen außerhalb verwenden Java Basics - Anfänger-Themen 2
L Schachbrettnummerierung mit Schleifen.. Java Basics - Anfänger-Themen 3
H Schleifen Java Basics - Anfänger-Themen 8
L Zahlentripel und for-Schleifen Java Basics - Anfänger-Themen 2
T Spezielle Aufgabe zu Schleifen Java Basics - Anfänger-Themen 3
T Erste Schritte Schleifen-Stop Java Basics - Anfänger-Themen 14
kilopack15 Rekursion und Schleifen Java Basics - Anfänger-Themen 27
I Mehre While-Schleifen hintereinander Java Basics - Anfänger-Themen 13
P Terminieren diese Schleifen Java Basics - Anfänger-Themen 6
L Was heißt terminieren bei Schleifen? Java Basics - Anfänger-Themen 3
I Brauche Hilfe bei Schleifen Java Basics - Anfänger-Themen 18
W Schleifen bei Greenfoot Java Basics - Anfänger-Themen 4
B Operatoren Stopp von Schleifen Java Basics - Anfänger-Themen 9
K Loop ohne Schleifen Java Basics - Anfänger-Themen 2
V Rechenzeichen bei Termen - Darstellung bei Schleifen Java Basics - Anfänger-Themen 7
E Muster auf der Konsole ausgeben lassen (Schleifen) Java Basics - Anfänger-Themen 7
C Erste Schritte Probleme bei Aufgaben zu Schleifen Java Basics - Anfänger-Themen 11
F OOP Schleifen und Probleme mit Setter und Getter Java Basics - Anfänger-Themen 1
L Blöcke bei verschachtelten Schleifen Java Basics - Anfänger-Themen 3
L Kurze Frage zu verschachtelten Schleifen Java Basics - Anfänger-Themen 3
E Erste Schritte Sternchenpyramide mit For-Schleifen erstellen Java Basics - Anfänger-Themen 9
H Best Practice Wie mit break verschachtelte Schleifen komplett verlassen? Java Basics - Anfänger-Themen 2
arti28 Erste Schritte For-Schleifen und While-Schleifen, String als Muster ausgeben. Java Basics - Anfänger-Themen 3
T [Schleifen] Schleifenproblem Java Basics - Anfänger-Themen 4
F Verschachtelte Schleifen Java Basics - Anfänger-Themen 4
J Hilfe verschachtelte Schleifen Java Basics - Anfänger-Themen 5
O Geschachtelte For-Schleifen Java Basics - Anfänger-Themen 1
D Zeichnen, Schleifen Java Basics - Anfänger-Themen 7
S Zeichnen , Schleifen Java Basics - Anfänger-Themen 4
L Schleifen und Array, nur letzte Eingabe wird ausgegeben Java Basics - Anfänger-Themen 3
Z Frage zu for-Schleifen Java Basics - Anfänger-Themen 5
M Wie kann ich eine Ausgabe vervielfachen? (Schleifen) Java Basics - Anfänger-Themen 4
Z Schleifen Beispiel: Fakultät Java Basics - Anfänger-Themen 26
T Erneute Frage zu Schleifen Java Basics - Anfänger-Themen 4
V Schleifen die nicht voneinander abhängen! (für CAN-BUS) Java Basics - Anfänger-Themen 10
T Anfängerfrage zu Schleifen und Arrays Java Basics - Anfänger-Themen 5
W Methoden While Schleifen Ergebnis im String speichern Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben