greekmanael Δημοσ. 8 Οκτωβρίου 2013 Δημοσ. 8 Οκτωβρίου 2013 Γεια σας παιδιά , θα ήθελα να μου πείτε αν υπάρχει flag στην γλώσσα προγραμματισμού pascal και αν ναι τότε πως συντάσσεται , δηλαδή ένα παράδειγμα .Μιλάω για την free pascal όχι delphi ή lazarus .Ευχαριστώ για τον χρόνο σας.
Dr.Fuzzy Δημοσ. 9 Οκτωβρίου 2013 Δημοσ. 9 Οκτωβρίου 2013 η 'flag' είναι μια έννοια και μπορεί να υλοποιηθεί σε κάθε γλώσσα προγραμματισμού. 2
greekmanael Δημοσ. 10 Οκτωβρίου 2013 Μέλος Δημοσ. 10 Οκτωβρίου 2013 Έχεις όμως καμία ιδέα για το πως συντάσσεται(στην γλώσσα pascal) ?
drm Δημοσ. 10 Οκτωβρίου 2013 Δημοσ. 10 Οκτωβρίου 2013 Μπορείς να δηλώσεις μία boolean μεταβλητή...var MyFlag: Boolean
greekmanael Δημοσ. 10 Οκτωβρίου 2013 Μέλος Δημοσ. 10 Οκτωβρίου 2013 Νόμιζα ότι η flag κάνει άλλο πράγμα , δηλαδή νόμιζα ότι επιστρέφει σε κάποιο κομμάτι κώδικα , κάτι σαν εντολή επανάληψης (while,for,repeat). Θέλω στον παρακάτω κώδικα μου , μόλις τελειώσει να βγάζει ένα μήνυμα που να λέει , θες να ξανά παίξεις το παιχνίδι ; και αν πεις ναι τότε να ξανά επιστρέφει στην αρχή του κώδικα.Μπορώ να το κάνω αυτό χωρίς while,for,repeat; Αν ναι τότε πως ; program game1;uses crt;var r,a,l : integer;beginrandomize; l:=5;clrscr;r:=random(100)+1;writeln('se auto to game prepei na mantepseis ena tuxaio ari8mo apo to 0-100');writeln('exeis 5 prospa8eies');while 0<l dobeginwriteln('exeis ',l,'zwes');l:=l-1;write('dwse ton ari8mo :');readln(a);if a<r thenbeginwriteln('o ari8mos pou ebales einai mikroteros apo ton tuxaio');endelse if a>r thenbeginwriteln('o ari8mos pou ebales einai megaluteros apo ton tuxaio');endelse if a=r thenbegintextcolor(10);writeln('TO BRHKES GG');l:=l-10;readln;exit;end;if a>100 thenbeginwriteln(' AKURO (ari8mos magaluteros tou 100)');endelse if a<0 thenbeginwriteln(' AKURO (ari8mos mikroteros tou 0)');end;end;textcolor(4);writeln('EXASES O ARI8MOS HTAN :',R);readln;end.
Dr.Fuzzy Δημοσ. 10 Οκτωβρίου 2013 Δημοσ. 10 Οκτωβρίου 2013 Η 'flag' σαν έννοια απλά χρησιμοποιείται για να σηματοδοτήσει ένα γεγονός και να δώσει μια ένδειξη της ύπαρξης αυτού του γεγονότος. Το τι θα κάνεις εσύ με αυτή την ένδειξη από εκεί και πέρα είναι θέμα δικό σου.
greekmanael Δημοσ. 10 Οκτωβρίου 2013 Μέλος Δημοσ. 10 Οκτωβρίου 2013 Ok ευχαριστώ για την βοήθεια παιδιά.
migf1 Δημοσ. 10 Οκτωβρίου 2013 Δημοσ. 10 Οκτωβρίου 2013 Γιατί να το κάνεις χωρίς for, while, repeat; Για αυτό υπάρχουν τα loops. Αλλιώς, μπορείς να το κάνεις με goto.
greekmanael Δημοσ. 11 Οκτωβρίου 2013 Μέλος Δημοσ. 11 Οκτωβρίου 2013 Ευχαριστώ για την βοήθεια migf1 .Τελικά αυτό που έψαχνα ηταν το label ΠΧ. Program Example6;uses Crt;LABEL LABELONE;var a : integer;beginClrScr;LABELONE:writeln('dwse ari8mo');readln(a);if a>0 thenbegingoto LABELONE;end;readkey;end.
migf1 Δημοσ. 11 Οκτωβρίου 2013 Δημοσ. 11 Οκτωβρίου 2013 Παρακαλώ, αλλά είναι πολύ κακή πρακτική να χρησιμοποιείς goto για loops (δηλαδή όταν το στέλνεις σε πρωτύτερο label). Είναι κακή πρακτική γιατί σε μεγάλα προγράμματα θα χάσεις τελείως την μπάλα. Αυτό που θέλεις γίνεται πολύ εύκολα με τα στάνταρ loops. Για παράδειγμα: Program Example6; uses Crt; var a: integer; begin clscr; repeat writeln('dwse ari8mo'); readln(a); until a < 1; readkey; end.
greekmanael Δημοσ. 11 Οκτωβρίου 2013 Μέλος Δημοσ. 11 Οκτωβρίου 2013 Ναι το ξέρω σε μεγάλα προγράμματα θα το χρησιμοποιώ .Απλά ήθελα να το μάθω.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα