Simples Array-Problem. Einzelne Werte miteinander multiplizieren



  • Moin Moin,

    also erstmal zum Problem:
    Ich hab hier ein eindimensionales Array erstellt, dass mir Werte nach einer bereits eingefügten Formel ausspuckt und anzeigt. Was ich möchte ist, dass er jeden einzelnen berechneten Wert mit dem nächsten multipliziert. Ich weiss aber nicht, wie man den Inhalt der ersten Berechnung mit dem Inhalt der zweiten Berechnung und die wiederum mit dem Inhalt der dritten multipliziert usw. (Am Ende wird das ganze noch mit 2 multipliziert. Könnt ihr mir da vielleicht helfen? Bin absoluter Programmier-Neuling ;P
    Ich sollte auch noch erwähnen, dass wir nur im normalen C programmieren sollen.

    Das Programm selbst:
    Ich muss nach dem Wallisschen Produkt die Kreiszahl Pi auf 10^-7 Stellen genau annähern. Für den Anfang berechnet er bei mir aber lediglich die ersten 100.Schritte der Übersicht halber. Ich hab die einzelnen Zwischenschritte anzeigen lassen, um zu sehen, ob er wenigstens das schonmal richtig berechnet. Nötig ist es aber fürs Programm ned. Später soll dann auch noch mit einem Funktionsprototypen der Wechsel für Werte in Zähler und Nenner Rückgabewerte ausgegeben werden, je nachdem ob der Parameterwert gerade oder ungerade ist. Aber das schnall ich ja schonmal gar ned 😃 Fürs erste reicht es mir, dass er überhaupt Pi ausspuckt

    #include <stdio.h>
    #include <math.h>
    
    main()
    {  
    	int intVariable_k=1, i=0;
    	double dblErgebnis[200];
    
    	do 
    	{
    		dblErgebnis[i]=(4*pow(intVariable_k,2))/(4*pow(intVariable_k,2)-1);
    
    		intVariable_k++;
    		printf("%20.14lf\n", dblErgebnis[i]);
    
    	}
    	while (i<100, intVariable_k<100);
    
    	printf("%20.14lf", Irgendwas_schlaues);
    
    }
    


  • Entweder du multiplizierst von Hand in einer Schleife ( double prod=1;for(int i=0;i<asize;++i)prod*=array[i]; ) oder du schaust dir mal accumultate() an.


Anmelden zum Antworten