xakerdo7 Δημοσ. 2 Ιουνίου 2008 Δημοσ. 2 Ιουνίου 2008 Καλησπερα,εχω την συνάρτηση mesminmax, η οποία υπολογίζει το μέγιστο τον ελάχιστο αλλά και το μέσο όρο σε πίνακα τριάντα στοιχείων(δύο γραμμών και 15 στηλών). Τα στοιχεία του πίνακα προκύπτουν από γεννήτρια τυχαίων αριθμών. Στο τέλος εκτυπώνεται ο πίνακας και τα αποτελέσματα σε δύο σειρές.Εχω κανει το εξης.Μπορει καποιος να βοηθησει? #include<stdio.h> #include<stdlib.h> int main() { int i,j,min,max,a[2][15]; float mo=0,sum=0; for (i=0;i<2;i++) { for(j=0;j<15;j++) { a[j]=1+(rand()%30); printf("%d ",a[j]); } } mo=sum/30; max=a[0][0]; min=a[0][0]; for(i=0;i<2;i++) for(j=0;j<15;j++) { if(max<a[j]) max=a[j]; if(min>a[j]) min=a[j]; } for(i=0;i<2;i++) { for(j=0;j<15;j++) { printf("%d ",a[j]); } printf("\n"); } printf("max %d min %d mo %f \n",max,min,mo); return 0; }
ippo00 Δημοσ. 2 Ιουνίου 2008 Δημοσ. 2 Ιουνίου 2008 > #include<stdio.h> #include<stdlib.h> int main() { int i,j,min,max,a[2][15]; float mo=0,sum=0; for (i=0;i<2;i++) { for(j=0;j<15;j++) { a[i][j]=1+(rand()%30); printf("%d ",a[i][j]); } } mo=sum/30; max=a[0][0]; min=a[0][0]; for(i=0;i<2;i++) for(j=0;j<15;j++) { if(max<a[i][j]) max=a[i][j]; if(min>a[i][j]) min=a[i][j]; } for(i=0;i<2;i++) { for(j=0;j<15;j++) { printf("%d ",a[i][j]); } printf("\n"); } printf("max %d min %d mo %f \n",max,min,mo); return 0; } Που είναι η συνάρτηση;
xakerdo7 Δημοσ. 2 Ιουνίου 2008 Μέλος Δημοσ. 2 Ιουνίου 2008 Η mesminmax ειναι η συναρτηση που θα χρησιμοποιησω εγω μετα καπου αλλου!Απλα θελω τον κωδικα σωστο.
ippo00 Δημοσ. 2 Ιουνίου 2008 Δημοσ. 2 Ιουνίου 2008 οπότε αυτό που έχεις ονομάσει εδώ main είναι mesminmax; το μόνο που δεν έκανες είναι να υπολογίσεις το sum > for(i=0;i<2;i++) for(j=0;j<15;j++) { if(max<a[i][j]) max=a[i][j]; if(min>a[i][j]) min=a[i][j]; sum+=a[i][j]; } mo=sum/30;
xakerdo7 Δημοσ. 2 Ιουνίου 2008 Μέλος Δημοσ. 2 Ιουνίου 2008 Ναι αλλα και παλι δεν τρεχει σωστα!Κατι κανω λαθος!!
ippo00 Δημοσ. 2 Ιουνίου 2008 Δημοσ. 2 Ιουνίου 2008 Το 'τρεξα με την τροποποιησή μου και το μόνο που βλέπω περίεργο είναι ότι εκτυπώνεις τον πίνακα οταν τον γεμίζεις Οο
xakerdo7 Δημοσ. 2 Ιουνίου 2008 Μέλος Δημοσ. 2 Ιουνίου 2008 Λογω της rand,η οποια παραγει αριθμους θα επρεπε να τρεχει με το που παταω το execute!Που ειναι το λαθος?
ippo00 Δημοσ. 2 Ιουνίου 2008 Δημοσ. 2 Ιουνίου 2008 > chuc@boom-desktop:~/Development/cprog$ ./cluc 14 17 28 26 24 26 17 13 10 2 3 8 21 20 24 17 1 7 23 17 12 9 28 10 3 21 3 14 8 26 max 28 min 1 mo 15.066667 Αυτό έγινε σε μένα
xakerdo7 Δημοσ. 2 Ιουνίου 2008 Μέλος Δημοσ. 2 Ιουνίου 2008 Καλως θα το κοιταξω και θα σου πω!Ετσι φαινεται σωστο!Ευχαριστω παντως.
ippo00 Δημοσ. 2 Ιουνίου 2008 Δημοσ. 2 Ιουνίου 2008 Αυτό έκανα compayle όπως το βλέπεις > #include<stdio.h> #include<stdlib.h> int main(int argc, char **argv) { int i,j,min,max,a[2][15]; float mo=0.0,sum=0.0; for (i=0;i<2;i++) { for(j=0;j<15;j++) { a[i][j]=1+((rand())%30); /* printf("%d ",a[i][j]); */ } } max=a[0][0]; min=a[0][0]; for(i=0;i<2;i++) for(j=0;j<15;j++) { if(max<a[i][j]) max=a[i][j]; if(min>a[i][j]) min=a[i][j]; sum+=a[i][j]; } mo=sum/30.0; for(i=0;i<2;i++) { for(j=0;j<15;j++) { printf("%d ",a[i][j]); } printf("\n"); } printf("max %d min %d mo %f \n",max,min,mo); return 0; }
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.