bird Δημοσ. 9 Ιουνίου 2013 Δημοσ. 9 Ιουνίου 2013 Ένα πολύ βιαστικό προγραμματάκι... (χωρίς ιδιαίτερο έλεγχο) #include <stdio.h> #include <stdlib.h> #define JMAX 6 #define IMAX 6 static float T[IMAX][JMAX]; void printT() { int i,j; for (i=0;i<IMAX;i++) { for(j=0;j<JMAX;j++) printf("%5.2f ",T[i][j]); printf("\n"); } } float f(int i, int j) { float s=2.; float p=0.5; float t=1.; if(i==0 || j==0) return T[i][j]; if (j==JMAX-1) { f(i,j-1); return T[i][j]; } T[i][j] = f(i-1,j) + 2*(t/(2*s*s))*f(i-1,j)*p*(f(i-1,j+1)+f(i-1,j-1)-2*f(i-1,j)); f(i,j-1); return T[i][j]; } int main() { int i,j; for(i=0;i<IMAX;i++) for(j=0;j<JMAX;j++) T[i][j]=0.; T[0][1]=1.2; T[0][2]=2.7; T[0][3]=3.5; T[0][4]=4.8; printf("Initail Array!\n"); printT(); f(IMAX-1,JMAX-1); printf("\n\nFinaly array!\n"); printT(); return 0; } edit: Οι τιμές για s,p,t είναι τυχαίες και με μία μόνο κλήση της f γεμίζει ο πίνακας... 1
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα