C++ Produktzeichen ineinander verschachteln?

ctgz - (Computer, Programm, programmieren)

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet
int result = 1;
for(int k=1; k<=5; k++){
for(int i=1; i<=4; i++){
result *= 2*k*i;
}
}
Korrelationsfkt 
Fragesteller
 28.08.2016, 15:14

Die Ausgabe passt nicht.

0
NeoExacun  28.08.2016, 15:19
@Korrelationsfkt

Der Datentyp ist zu klein. Nimm nicht int, sondern etwas größeres.

Zum Beispiel long long.


long long result = 1;
for(int k=1; k<=5; k++){
for(int i=1; i<=4; i++){
result *= 2*k*i;
}
}



0
Korrelationsfkt 
Fragesteller
 28.08.2016, 15:25
@NeoExacun

Selbst long long ist zu klein, anscheinend.

Du bist dir sicher, dass das richtig ist? Würde es in meine Formelsammlung rein nehmen.

Wie kann ich dafür sorgen, dass nicht jedes Zwischenergebnis angezeigt wird sondern nur das Endergebnis?

0
Korrelationsfkt 
Fragesteller
 28.08.2016, 15:27
@NeoExacun

Es ist ja mit in der Schleife und wird daher jedesmal mit ausgegeben. Mache ich es außerhalb ist der Wert 0.

0
Korrelationsfkt 
Fragesteller
 28.08.2016, 15:35
@NeoExacun

#include
using namespace std;

int main()
{
long long result = 1;
for(int k=1; k<=5; k++){
for(int i=1; i<=4; i++){
result *= 2*k*i;

cout << result << endl;
}}

system("PAUSE");
return 0;

}



0
NeoExacun  28.08.2016, 15:39
@Korrelationsfkt
int main() {
long long result = 1;

for(long long k=1; k<=5; k++){
for(long long i=1; i<=4; i++){
result *= 2*k*i;
}
}

cout << result << endl;

system("PAUSE");
return 0;
}

Probiers mal so.

0
Korrelationsfkt 
Fragesteller
 28.08.2016, 15:51
@NeoExacun

Kommt aufjedenfall nur ein Ergebnis bei raus. Mit unsigned vor den longs auch was gescheites.

0
NeoExacun  28.08.2016, 15:56
@NeoExacun

Hab mich wohl vertan. WolframAlpha sagt 1.731.334.989.561.200.640.000

0

int gesamtErgebnis = 1;
int unterErgebnis;
for(int k = 1;k <= 5; k++)
{
 unterErgebnis = 1;
for(int i = 1; i <= 4; i++)
{
 unterErgebnis = unterERgebnis * 2 * k * i;

}

gesamtErgebnis = gesamtErgebnis *  unterERgebnis;

}

Ergebnis: gesamtErgebnis

...hoffe ich habe das Produktzeichen richtig interpretiert (hab das noch nie in Mathe benutzt^^)

 
  

Korrelationsfkt 
Fragesteller
 28.08.2016, 15:27

Ich bin am überlegen weshalb du gesamtErgebnis benutzt.

0
verreisterNutzer  28.08.2016, 15:30
@Korrelationsfkt

hmm vielleicht braucht man auch nur eine variable ...bin zu dumm um das ohne ausprobieren herauszufinden. (bin zurzeit nicht am PC)

0