Folge Iterativ berechnen < Sonstiges < Hochschule < Informatik < Vorhilfe
|
Aufgabe | [mm] a_{1}=1, a_{2}=2.
[/mm]
[mm] a_{2}=(n+1)*a_{n-2}
[/mm]
Geben Sie ein C-Programm an, dass die Folge [mm] a_{n} [/mm] iterativ berechnet. |
Hallo,
ich muss diese Folge iterativ berechnen. Nun ja es funktioniert bis n=4. Aber ab n=5 ist es nicht mehr richtig. Was könnte das Problem sein. Mein Ansatz ist folgender:
#include<stdio.h>
int calc_iterative(int n) {
int a;
int it;
int [mm] it_1=1;
[/mm]
int [mm] it_2=2;
[/mm]
if (n==1) {
return 1;
}
if (n==2) {
return 2;
}
for (a=3;a<=n;a++) {
it = [mm] (n+1)*it_1;
[/mm]
[mm] it_1 [/mm] = [mm] it_2;
[/mm]
[mm] it_2 [/mm] = it;
}
return it;
}
int main () {
int n;
int it;
printf("Bitte geben Sie eine Zahl ein: ");
scanf("%d", &n);
it = calc_iterative(n);
printf("Die eingegebene Zahl lautet %d und die iterativ berechnete Zahl lautet %d", n, it);
return 0;
}
Danke im voraus.
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 22:11 Do 25.03.2010 | Autor: | Rino |
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
> for (a=3;a<=n;a++) {
> it = [mm](n+1)*it_1;[/mm]
> [mm]it_1[/mm] = [mm]it_2;[/mm]
> [mm]it_2[/mm]Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
= it;
> }
du multiplizierst immer mit $(n+1)$ anstatt mit $(a+1)$
Gruß, Rino
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 09:11 Fr 26.03.2010 | Autor: | encephalon |
Vielen Dank, jetzt funktionierts.
MfG
|
|
|
|