Potenz mit Modulo (über for-Schleife) berechnen

Eddie

Mitglied
Hallo zusammen,

ich bin neu hier, studiere Wirtschaftsinformatik und habe im Moment einige Probleme mit der Programmierung in Java und hoffe, dass ihr mir vielleicht weiterhelfen könnt.
Im Moment geht es darum, mittels einer for-Schleife eine Methode zu implementieren, mit der sich eine Funktion der Form a^x mod p berechnen lässt (also z. B. 1234^12 mod 541 = 237).

Das soll allerdings nur der erste Schritt sein. Im weiteren Aufgabenverlauf sollen wir diese Funktion auch noch rekursiv sowie durch Darstellung der Exponenten in Binärform implementieren.

Ich scheitere allerdings irgendwie schon an der ersten Teilaufgabe ???:L

Ich habe mir gedacht, erst einmal die Potenzierung an sich zu implementieren. Also soll mir das Programm nur das Ergebnis von a^x zurückgeben. Sollte eigentlich nicht so schwer sein. Aber irgendwie bekomme ich immer das Ergenis 0 raus, wenn ich z. B. 4^2 rechnen will. Könnt ihr mir vielleicht sagen, wo der Fehler im Code ist? Wenn ich den Code auf Papier durchgehe, finde ich den Fehler auch nicht.

Gruß
Eddie


Java:
public int modExpSimple(int x, int a, int p){
		int erg = 0;
		int b = a;
		
		for (int i=1; i==x; i++){
			erg = b * a;
			b = erg;
		}
		
		System.out.println("Das Ergebnis lautet: " + erg);
		
		return erg;
	}
 

Landei

Top Contributor
Java:
for (int i=1; i==x; i++){
ist schonmal falsch. Die Schleife wird solange ausgeführt, wie die mittlere Bedingung stimmt. Wenn x ungleich 1 ist, ist die Bedingung schon beim ersten Durchlauf (wo i == 1 ist) nicht erfüllt, und deine Schleife läuft überhaupt gar nicht.
 

nrg

Top Contributor
b ist überflüssig aber viel wichtiger ist deine Abbruchbedingung in der Schleife. Die solltest du mal überdenken...

"mache solange wie i gleich x"
 

Eddie

Mitglied
und schon klappts auch mit dem Modulo...vielen Dank für die schnelle Hilfe :)
Irgendwie sieht man den Wald vor lauter Bäumen nicht, wenn man zu lange davor sitzt.
Das Ergebnis funktioniert nun auf jeden Fall:

Java:
public int modExpSimple(int x, int a, int p){

		int erg = 0;
		int b = a;
		
		for (int i=1; i<x; i++){
			erg = (b * a) % p;
			b = erg;
		}
		
		return erg;
}
 

Landei

Top Contributor
Wie schon von anderen erwähnt ist dein b hyperliquid:

Java:
public int modExpSimple(int x, int a, int p){
        int erg = 1;
        for (int i=0; i<x; i++){
            erg = (a * erg) % p;
        }
        return erg;
}
 

Eddie

Mitglied
Stimmt b ist auch überflüssig...aber peinlich ist mir nur das mit der Schleife...sollte nicht vorkommen :oops:

Seis drum..Thema auf erledigt gesetzt...besten Dank an euch alle :)

Gruß
Eddie
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Potenz berechnen mit for-Schleife Java Basics - Anfänger-Themen 3
F Potenz ausrechnen Hilfe! Java Basics - Anfänger-Themen 7
E Erste Schritte Potenz Negativ (rekursiv) Java Basics - Anfänger-Themen 2
L Rekursive Methode zur Berechnung der Potenz q hoch p Java Basics - Anfänger-Themen 17
A DecimalFormat und wissenschatliche (Potenz-)Schreibweise Java Basics - Anfänger-Themen 6
A mantisse var * 10 hoch potenz var Java Basics - Anfänger-Themen 2
hello_autumn Potenz selber berechnen, Rekursiv. Java Basics - Anfänger-Themen 6
C Gleichung mit Potenz mit einer Unbekannten lösen Java Basics - Anfänger-Themen 5
R 2er Potenz mit vorgegebenem Schema Java Basics - Anfänger-Themen 5
W Potenz Java Basics - Anfänger-Themen 6
J Methoden Rekursive Potenz ohne Math.Pow() Java Basics - Anfänger-Themen 9
M Potenz berechnen Java Basics - Anfänger-Themen 3
P Usereingabe und Potenz berechnen Java Basics - Anfänger-Themen 16
2 2er Potenz berechnen Java Basics - Anfänger-Themen 17
K Potenz mit Summer der ungeraden Zahlen Java Basics - Anfänger-Themen 14
M Potenz mithilfe rekursiver Funktion Java Basics - Anfänger-Themen 13
Haubitze_Broese Potenz einer Zahl, der Exponent ist dabei eine beliebige ganze Zahl? Java Basics - Anfänger-Themen 10
J programm für kleinste potenz Java Basics - Anfänger-Themen 10
G Potenz in Java Java Basics - Anfänger-Themen 20
R Rechenoperationen mit Modulo Java Basics - Anfänger-Themen 2
B Modulo-Operator anhand eines Beispieles erklären Java Basics - Anfänger-Themen 7
s.marcii Modulo in der Variable einsetzen - ist das möglich? Java Basics - Anfänger-Themen 2
A Modulo operation Java Basics - Anfänger-Themen 5
A Char und modulo Java Basics - Anfänger-Themen 8
C Verständnisfrage zu Modulo Java Basics - Anfänger-Themen 6
T Modulo / Pow berechnen Java Basics - Anfänger-Themen 4
F Switch Case Modulo berechnen Java Basics - Anfänger-Themen 12
krgewb Best Practice Modulo Java Basics - Anfänger-Themen 4
L Rekursion Modulo Java Basics - Anfänger-Themen 7
W Input/Output Modulo Wert speichern und ausgeben lassen Java Basics - Anfänger-Themen 3
S Operatoren Modulo programmieren Java Basics - Anfänger-Themen 10
V Andere Schreibweise für % Modulo Java Basics - Anfänger-Themen 9
N Methoden Modulo Operator Java Basics - Anfänger-Themen 1
D Brauche Hilfe bei Modulo (Übungsaufgabe) Java Basics - Anfänger-Themen 14
L Modulo Reste abspeichern und wiedergeben ? Java Basics - Anfänger-Themen 4
Z 10er und 100er Stelle durch Modulo Java Basics - Anfänger-Themen 2
H Buch: Java lernen mit BlueJ Modulo-Operator Java Basics - Anfänger-Themen 16
J for-schleife + modulo Java Basics - Anfänger-Themen 2
E Problem mit modulo Rechnung Java Basics - Anfänger-Themen 8
S Modulo Operator Java Basics - Anfänger-Themen 8
R Merkwürdige Modulo Berechnung Java Basics - Anfänger-Themen 7
J modulo Java Basics - Anfänger-Themen 13
R Ersatz für Modulo Operator Java Basics - Anfänger-Themen 8
H Typ short: Exponent und Modulo Java Basics - Anfänger-Themen 3
W Modulo rechnen Java Basics - Anfänger-Themen 3
calzone Problem einer Gleichung mit Modulo Java Basics - Anfänger-Themen 5
A Problem mit modulo Java Basics - Anfänger-Themen 8
J statt modulo "if-Anweisung" Java Basics - Anfänger-Themen 9
J Modulo berechnen Java Basics - Anfänger-Themen 11
S Modulo Java Basics - Anfänger-Themen 10
D BigInteger potenzieren und anschließend Modulo Java Basics - Anfänger-Themen 7
G SHA (byte array) per modulo hashen Java Basics - Anfänger-Themen 6
G Modulo Java Basics - Anfänger-Themen 4
J Modulo-Operator rechnet falsch Java Basics - Anfänger-Themen 2
Safado modulo rechnen Java Basics - Anfänger-Themen 5
S Modulo-Operator Java Basics - Anfänger-Themen 5
H Modulo rechnen Java Basics - Anfänger-Themen 17
G Modulo Division funzt nicht Java Basics - Anfänger-Themen 3
G BigInteger und Modulo Java Basics - Anfänger-Themen 3
B Modulo (%) und == Java Basics - Anfänger-Themen 8
G GlassPane über JScrollPane legen Java Basics - Anfänger-Themen 6
A Server - Client Nachrichtenaustausch über Eventbus Java Basics - Anfänger-Themen 12
P Neue Java v8 JRE Version nicht über alte drüber installierbar: Wie sonst? Java Basics - Anfänger-Themen 7
D Downloadfortschritt von Datei über Google Drive API v3 Java Basics - Anfänger-Themen 10
B großzügiges Pixelraster über Bildschirm legen Java Basics - Anfänger-Themen 7
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
L Beim Java Programmstart, mehrere Parameter über die Kommandozeile übergeben Java Basics - Anfänger-Themen 9
sserio Iterierung über ein zweidimensionales Array Java Basics - Anfänger-Themen 16
H Eine Methode über Actionlistener beenden Java Basics - Anfänger-Themen 8
S Java über SSH Java Basics - Anfänger-Themen 13
X Wie erreiche ich, dass ein Robot weitere Attribute hat, die nicht materialisiert sind, sondern nur über get/ set-Methoden simuliert sind? Java Basics - Anfänger-Themen 1
M Wie können Klassen nicht-materialisierte Attribute haben, die nur über get/ set-Mehoden simuliert sind? Java Basics - Anfänger-Themen 6
D Best Practice Ausgabe über direkte Ausgabe oder try-catch? Java Basics - Anfänger-Themen 13
R Eigenschaft über Parameter auslesen und ändern Java Basics - Anfänger-Themen 15
P Datei einlesen, nach Begriff filtern und in Datei ausgeben. Problem Standardausgabe über Konsole Java Basics - Anfänger-Themen 19
W Unterschiede bei Zugriff auf Objekt und Klassenvariablen über einen Getter? Java Basics - Anfänger-Themen 2
W char über die Konsole? Java Basics - Anfänger-Themen 7
EchtKeineAhnungManchmal Hallo :) ich bekomme es nicht hin eine Fehlermeldung auszugeben über die GUI Java Basics - Anfänger-Themen 3
S Array über ein Ausgabemethode in main ausgeben Java Basics - Anfänger-Themen 31
C Potenzberechnung über switch case. Taschenrechner mit Eingabe über einen grafischen Dialog Java Basics - Anfänger-Themen 22
J Wert zurückgeben über get Methode Java Basics - Anfänger-Themen 8
J Eintrag Combobox über einen String auswählen Java Basics - Anfänger-Themen 3
A Array Ansprache einer Zelle über Punktnotation? Java Basics - Anfänger-Themen 3
O Java über cmd benutzen ? Java Basics - Anfänger-Themen 5
J Variablenzugriff über string Java Basics - Anfänger-Themen 18
W Objekte über Scanner Input; ToString Probleme... Java Basics - Anfänger-Themen 4
H Methode über String Wert aufrufen Java Basics - Anfänger-Themen 8
M Java Kompilieren über Package grenzen hinaus Java Basics - Anfänger-Themen 4
M Arrays mit mehreren Werten über JOptionPane initialisieren Java Basics - Anfänger-Themen 12
Tino1993 Ellipse über draw Funktion ohne spur wandern lassen Java Basics - Anfänger-Themen 6
M Mehrere Datenbank zugriffe über tomee.xml regeln? Java Basics - Anfänger-Themen 1
N Input/Output Eine Frage über system.out.println. Java Basics - Anfänger-Themen 10
J Array über Getter erlangen Java Basics - Anfänger-Themen 34
S While-Schleife geht in Endlosschleife über, warum? Java Basics - Anfänger-Themen 6
B OOP-Anfänge über CMD + Editor Java Basics - Anfänger-Themen 30
G Variablen Array Länge über den Konstruktor definieren Java Basics - Anfänger-Themen 4
L Addition von Arrays über die Parameterliste Java Basics - Anfänger-Themen 11
C Datei über relative Pfade einlesen Java Basics - Anfänger-Themen 6
1 Erste Schritte Was denkt ihr über eines meiner ersten Javaprogramme? Java Basics - Anfänger-Themen 2
S Allgemeine Frage über Generics und Vererbungen Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben