Re: Προγραμματισμός & χρήση Η/Υ (2012-13) 31 από rovetwold To print με το write έχουν κάποια διαφορά ?
Re: Προγραμματισμός & χρήση Η/Υ (2012-13) 32 από MakisH Ναι. Το print γράφει μόνο στην οθόνη, ενώ το write γράφει και σε αρχεία (ή τουλάχιστον αυτή είναι η μόνη διαφορά που ξέρω). Αν σε μπερδεύει να σκέφτεσαι ποιο κάνει τι, απλώς ξέχνα το print και βάζε παντού write. Δεν γνωρίζω όμως ιστορικά γιατί υπάρχουν και οι δυο εντολές. Το είχα ψευτοψάξει κάποτε και είχα βρει ότι είναι πολύ παλιές και οι δυο εντολές. διόρθωση-συμπλήρωση: η Print έχει μόνο επιλογή για το ΠΩΣ θα γράψει κάτι (format). Η Write έχει επιλογές για το ΠΟΥ (οθόνη-αρχείο κα) και το ΠΩΣ (format), ενώ επιστρέφει την κατάσταση της εκτέλεσής της (IOSTAT=Input/Output Status) και αριθμό σφάλματος. Τα δυο τελευταία είναι προαιρετικά. ======> Βοηθήστε στο forum! <======
Re: Προγραμματισμός & χρήση Η/Υ (2012-13) 33 από rovetwold Για την τοποθέτηση στοιχείων σε πίνακα ,ποιος τρόπος ειναι ευκολότερος/καλύτερος ; Ο τρόπος με το "DO-ENDO" ή με το "implied do" ; Για να το εφαρμόζω και σε δισδιαστατες arrays και σε μονοδιάστατες.
Re: Προγραμματισμός & χρήση Η/Υ (2012-13) 34 από panos108 Κοίτα το πιο εύκολο σίγουρα είναι το Κώδικας: Επιλογή όλωνreal x(3,3) read*,x που δεν είναι κανένα από τα 2. Το implied do είναι εύχρηστο μεν και πιάνει λίγο χώρο, ωστόσο και τα αυτά εύκολα μειωνεκτούν με το διπλό do ή το απλό μονό (1 διασταση array) στο εξής, δεν μπορείς να έχεις συνθηκες στο read σου, δεν μπορείς πχ να πεις αν το i>3 το βάλε τη τιμη ι*3 else βάλε i. Άρα, οι 2 παραπάνω εύκολοι και μικροί τρόποι χρησιμεύουν όταν έχουμε και ένα απλό read People who wish to analyze nature without using mathematics must settle for a reduced understanding
Re: Προγραμματισμός & χρήση Η/Υ (2012-13) 35 από MakisH Προσοχή όμως, οι διδιάστατες arrays αποθηκεύονται στη μνήμη κατά στήλες (ακριβέστερα: κατά τον δεύτερο "δείκτη-index"). Spoiler: showΚώδικας: Επιλογή όλωνProgram test implicit none real x(3,3) integer i,j read *,x Do i=1,3 print *, ( x(i,j), j=1,3 ) enddo End Γενικότερα, δεν συμβαίνει αυτό που περιμένουμε. Παρατηρήστε ποια σειρά έχουν οι μετρητές στα DO στο παρακάτω παράδειγμα ώστε να βγουν οι τιμές που βάλαμε με τη σειρά που τις βάλαμε. Θέλει προσοχή λοιπόν. Σημείωση: αγνοήστε τα περίεργα στην print, θα μάθουμε αργότερα τι σημαίνουν. Spoiler: showΚώδικας: Επιλογή όλωνProgram test implicit none real x(2,2,2) integer i,j,k read *,x Do k=1,2 Do j=1,2 Do i=1,2 print "(A,I1,2(',',I1),A,F4.1)", "x(",i,j,k,")=",x(i,j,k) enddo enddo enddo End ======> Βοηθήστε στο forum! <======
Re: Προγραμματισμός & χρήση Η/Υ (2012-13) 36 από panos108 hardcore, 3D? κρίμα δεν έχει 3D αναπαράσταση ? People who wish to analyze nature without using mathematics must settle for a reduced understanding
Re: Προγραμματισμός & χρήση Η/Υ (2012-13) 37 από MakisH Ούτε 2D αναπαράσταση έχει, τεχνητό είναι αυτό που κάνεις. Στην πραγματικότητα οι "διαστάσεις" είναι indexes (οι αριθμοί μέσα στις παρενθέσεις). Έχοντας μια array με 5 θέσεις μέσα στην παρένθεση, πρέπει να καθορίσω αντίστοιχα 5 τιμές για να προκύψει ένα στοιχείο. Για να μας βολεύει, στο χαρτί (και στην οθόνη), τα γράφουμε σε γραμμές και στήλες. ======> Βοηθήστε στο forum! <======
Re: Προγραμματισμός & χρήση Η/Υ (2012-13) 38 από rovetwold Επομένως,ποια μορφή (για το read) ειναι αυτή που μπορεί να χρησιμοποιηθει στις περισσότερες ασκήσεις (μονοδιαστατα/δισδιαστατα arrays) ;
Re: Προγραμματισμός & χρήση Η/Υ (2012-13) 39 από MakisH DO loops και άγιος ο θεός. (Do...enddo) ======> Βοηθήστε στο forum! <======
Re: Προγραμματισμός & χρήση Η/Υ (2012-13) 40 από rovetwold Η πρόοδος θα γίνει τη Δευτέρα 10 Δεκεμβρίου και θα μετράει κατά 40% στο τελικό βαθμό.Θα βγει αναλυτική ανακοίνωση τις επόμενες μερες.