Προγραμματισμός Η/Υ (2011-12)

Συντονιστής: University Editors

Re: Προγραμματισμός Η/Υ (2011-12)

Δημοσίευσηαπό MakisH » Πέμ, 23 Αύγ 2012 8:35 am

Ποιος compiler σου έβγαζε αυτό το error και ποιον χρησιμοποίησες μετά;
(υποθέτω ο άλλος σου έβγαλε κάτι σε στυλ "variable is undefined")
Είχες βάλει implicit none;
Μου είναι χρήσιμο να το ξέρω! :)
Ζητούνται βιβλία στο Αναγνωστήριο Χημικών Μηχανικών! Στείλτε μου αν θέλετε να δώσετε.
MakisH Οικονομική ενίσχυση στο MQN.gr
 
Δημοσιεύσεις: 306
Εγγραφή: Δευτ, 03 Μάιος 2010 10:57 pm
Τοποθεσία: Στους Χημικούς μηχ.
Έτος εισαγωγής: 2008

Re: Προγραμματισμός Η/Υ (2011-12)

Δημοσίευσηαπό pokerman » Πέμ, 23 Αύγ 2012 6:13 pm

Αυτο το λαθος μου το εβγαλε το cloud , χρησιμοποιω το geny.

Εχω κατεβασει ενα Force 2.0 που μου εβγαλε σαν error σε ποια ακριβως γραμμη του προγραμματος ειχα την λαθος μεταβλητη.
Απλα αυτο δεν μπορω να το χρησιμοποιω γιατι εχω ενα loop με real αριθμους που κανονικα αυτο τρεχει μονο στην 77 αλλα για καποιο λογο το cloud το τρεχει και στην 95.

Δεν εχω βαλει implicit none
pokerman
 
Δημοσιεύσεις: 216
Εγγραφή: Κυρ, 19 Οκτ 2008 5:45 pm

Re: Προγραμματισμός Η/Υ (2011-12)

Δημοσίευσηαπό MakisH » Πέμ, 23 Αύγ 2012 7:57 pm

Ούτε το Geany ούτε το Force είναι compilers, αλλά περιβάλλοντα προγραμματισμού (βασικά text editors) που καλούν κάποιον compiler με κάποιες ρυθμίσεις (διαφορετικές ρυθμίσεις μπορούν να δώσουν διαφορετικά μηνύματα κατά το compilation). Αν έχεις κατεβάσει το Force από το πρώτο link, τότε έβαλε μαζί τον GFortran. Στο Cloud βλέπω χρησιμοποιεί επίσης GFortran. Μάλλον διαφορετικές ρυθμίσεις λοιπόν...

Το implicit none πριν τη δήλωση των μεταβλητών είναι εντολή που σώζει από ατέλειωτες ώρες debugging! Προτείνεται ανεπιφύλαχτα. Αν το έβαζες λογικά θα σου χτύπαγε κατευθείαν στο compilation μόλις έβρισκε αδήλωτη μεταβλητή (και θα σου έλεγε ότι είναι αυτό το πρόβλημα).

Πιθανόν να ανέχεται και σε νεότερο κώδικα real μετρητές (γενικώς η Fortran είναι πολύ backwards compatible) αλλά λογικά θα πρέπει να σου έχει βγάλει κάποιο Warning. Μπορείς να πετύχεις το ίδιο αποτέλεσμα με Do...enddo χωρίς μετρητή, αλλάζοντας την τιμή της μεταβλητής μέσα στο loop και βάζοντας ένα "If(συνθήκη) exit" για να το τερματίσεις. (αποφεύγω προσωπικά το Do While).
Ζητούνται βιβλία στο Αναγνωστήριο Χημικών Μηχανικών! Στείλτε μου αν θέλετε να δώσετε.
MakisH Οικονομική ενίσχυση στο MQN.gr
 
Δημοσιεύσεις: 306
Εγγραφή: Δευτ, 03 Μάιος 2010 10:57 pm
Τοποθεσία: Στους Χημικούς μηχ.
Έτος εισαγωγής: 2008

Προηγούμενη

Επιστροφή στο 1ο Έτος

Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση : Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης

cron