Erklärungs Prob

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hey, sollen für die Uni ein Pog machen, welches unter anderem die Potenz mit einer Schleife berrechnen sollen. Hab ich auch. Müssen das dann aber beschreiben, wie diese Methode jetzt abläuft. Kann mir da jemand kurz helfen.
Also ich würde das in etwas so machen: i ist 1 und wird anschließend immer um 1 erhöht, ist aber kleiner als y. Komme jetzt aber mit dem Teil "potenz = potenz * x;" net klar. was passiert hier.



Code:
public static int Potenz (){
		Scanner scanner = new Scanner(System.in); 
		
		System.out.println("Bitte geben Sie die Basis ein!"); 
        final int x = (int) scanner.nextDouble(); 
        System.out.println("Bitte geben Sie den Exponenten ein!"); 
        final int y = (int) scanner.nextDouble();
		
		int i;
		int potenz =1;

		for (i=1 ; i <= y ; i = i + 1)
		potenz = potenz * x;

		System.out.println ("Der Exponent von " + x+"^"+y+ " = "+ potenz);
		return potenz;
		}
 

SnooP

Top Contributor
versteh ich nicht... - hast du jetzt das programm gemacht oder nicht? Warum verstehst du dann die Zeile potenz = potenz * x nicht? ich würde die zeile übrigens auch mal einrücken, damit man sieht, dass die zur for-schleife gehört...
 
G

Gast

Gast
nee hab die von nem kum pel, deshalb frag ich ja.
wie meinste das mit einrücken
 

Ark

Top Contributor
:autsch: Ich frage mich gerade, wie Du den Rest des Quelltextes verstehst.

i = i + 1 scheinst Du ja zu verstehen (sonst hättest Du hier Unverständnis geäußert!), aber warum dann nicht potenz = potenz * x?


=> Hinsetzten und Nase in Bücher stecken.

Ark
 
G

Gast

Gast
versuch du doch mal die zeile zuerklären

dann sehn wir ja wo es bei dir hackt und können dir helfen
 
G

Guest

Gast
hab jetzt mal in meinen Code meine Kommentare geschriebn, so wie ich es deuten würde

Code:
public static int Potenz (){
		Scanner scanner = new Scanner(System.in); 
		
		System.out.println("Bitte geben Sie die Basis ein!"); 
        final int x = (int) scanner.nextDouble(); 
        System.out.println("Bitte geben Sie den Exponenten ein!"); 
        final int y = (int) scanner.nextDouble();
		
		int i;				// Initialisierung von i
		int potenz =1;	    // Initialisierung von potenz mit dem Wert 1

		for (i=1 ; i <= y ; i = i + 1) // i hat den Wert 1 und ist kleiner oder gleich y, i wird berrechnet indem zu i 1 addiert wird
		potenz = potenz * x;	// neue potenz berrechnet sich, indem die alte potenz mit x multipliziert wird 

		System.out.println ("Der Exponent von " + x+"^"+y+ " = "+ potenz);
		return potenz;	// Ausgabe der Potenz
		}
 

dsv fritz

Bekanntes Mitglied
Code:
public static int Potenz (){ 
      Scanner scanner = new Scanner(System.in); 
       
      System.out.println("Bitte geben Sie die Basis ein!"); 
        final int basis = (int) scanner.nextDouble(); 
        System.out.println("Bitte geben Sie den Exponenten ein!"); 
        final int exponent = (int) scanner.nextDouble(); 

// Gelöst von jemanden aus java-forum.org

        int potenz = basis;
      for (int i=0 ; i <(exponent-1) ; i ++){ 
          potenz *=potenz ;      
      }
    
      System.out.println ("Der Exponent von " + x+"^"+y+ " = "+ potenz); 
      return potenz;   // Ausgabe der Potenz 
      }

BITTE!!!
 

Leroy42

Top Contributor
Also das dürfte Bockmist sein.

Code:
for (int i=0 ; i <(exponent-1) ; i ++){ 
          potenz *=potenz ;      
      }

Auf jeden Fall hat das herzlich wenig mit a^n (also potenzieren) zu tun.
 

dsv fritz

Bekanntes Mitglied
Leroy42 hat gesagt.:
Also das dürfte Bockmist sein.

Code:
for (int i=0 ; i <(exponent-1) ; i ++){ 
          potenz *=potenz ;      
      }

Auf jeden Fall hat das herzlich wenig mit a^n (also potenzieren) zu tun.

Wenn ich nicht täusche ist:
x^n = x*x*x*...

oder liege ich da falsch?
 

Leroy42

Top Contributor
potenz = 2.

potenz *= potenz ==> potenz == 4
potenz *= potenz ==> potenz == 16
potenz *= potenz ==> potenz == 256
potenz *= potenz ==> potenz == 65536

Also 2^5 == 65536? :autsch:
 
S

SlaterB

Gast
1. Schritt:
(x)*(x)

2. Schritt:
(x*x)*(x*x)

3. Schritt:
(x*x*x*x)*(x*x*x*x)

4. Schritt:
(x*x*x*x*x*x*x*x)*(x*x*x*x*x*x*x*x)

= x^(2^n)
 

dsv fritz

Bekanntes Mitglied
Tja, da hat sich ein kleiner Fehler eingeschlichen:
Natürlich sollte es
Code:
 potenz*=basis;
heissen.
Habe eben die Variablen umbenannt und dann hab ich das irgendwie verhauen.
 
G

Guest

Gast
danke, also ist das so jetzt richtig

Code:
public static int Potenz (){ 
	      Scanner scanner = new Scanner(System.in); 
	        
	      System.out.println("Bitte geben Sie die Basis ein!"); 
	        final int basis = (int) scanner.nextDouble(); 
	        System.out.println("Bitte geben Sie den Exponenten ein!"); 
	        final int exponent = (int) scanner.nextDouble(); 

	     int potenz = basis; 
	      for (int i=0 ; i <(exponent-1) ; i ++){ 
	          potenz *=basis ;      
	      } 
	    
	      System.out.println ("Der Exponent von " + basis +"^"+exponent+ " = "+ potenz); 
	      return potenz;   // Ausgabe der Potenz 
	      }
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Erste Schritte Hausaufgaben-Prob. - Iterative Prog. Zahlen aufsummieren, wenn durch k>0 teilbar. Java Basics - Anfänger-Themen 5
H Kleines Prob Java Basics - Anfänger-Themen 5
K Erste Schritte prob mit DefaultListModel (string) Java Basics - Anfänger-Themen 8
K Erste Schritte prob anzeige Java Basics - Anfänger-Themen 4
F Button array prob Java Basics - Anfänger-Themen 7
K Prob. mit einer Fehlermeldung Java Basics - Anfänger-Themen 7
S OOP ArrayList Klasse nachbauen, prob mit remove Java Basics - Anfänger-Themen 5
G Prob. mit KeyListener und Unterklasse Java Basics - Anfänger-Themen 5
J Doppelte Integer aus einem Array entfernen - seltsames Prob. Java Basics - Anfänger-Themen 5
G hibernate . tutorial prob . Java Basics - Anfänger-Themen 4
S prob mit add in einer arry list Java Basics - Anfänger-Themen 13
G taschrechner prob Java Basics - Anfänger-Themen 2
A Connection Prob Java Basics - Anfänger-Themen 3
F prob beim positionieren eines banners Java Basics - Anfänger-Themen 4
N Array-Prob Java Basics - Anfänger-Themen 6
K Prob mit java.util.regex.matches-String wird nicht erkannt? Java Basics - Anfänger-Themen 9
K prob mit einer matrix.ha Java Basics - Anfänger-Themen 34
T Quersummen Prob. Java Basics - Anfänger-Themen 4
javafreak1986 Util.class Prob Java Basics - Anfänger-Themen 8
L RandomAccessFile - Prob Java Basics - Anfänger-Themen 4
G nen virus oder nen prob mit java Java Basics - Anfänger-Themen 3
M Prob bei JTextArea auf .setEditable(false) setzen Java Basics - Anfänger-Themen 2
G mal wieder Prob mit Jar-File Java Basics - Anfänger-Themen 16
T Prob. Interface und Paramter Java Basics - Anfänger-Themen 5
E 2 Prob.:"ArrayIndexOutOfBoundsException" & do- Java Basics - Anfänger-Themen 2
Z prob beim erstellen eines jar files mit eclipse Java Basics - Anfänger-Themen 4
G kleines Prob bei "net send" programm Java Basics - Anfänger-Themen 2

Ähnliche Java Themen


Oben