ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Σχετικά έγγραφα
Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Υπολογιστικά Συστήματα

Πληροφορική. Ενότητα 5 η : Εισαγωγή στον Προγραμματισμό με τη Visual Basic. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

Τεχνικές Προγραμματισμού και Χρήση Λογισμικού Η/Υ στις Κατασκευές

Υπολογιστικά Συστήματα

4. Επιλογή και Επανάληψη

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Συστήματα Αυτομάτου Ελέγχου. Ενότητα Α: Γραμμικά Συστήματα

Δομημένος Προγραμματισμός

Εισαγωγή στον Προγραμματισμό με C++

Προγραμματισμός και Εφαρμογές Υπολογιστών

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Προγραμματισμός και Εφαρμογές Υπολογιστών

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

Προγραμματισμός Η/Υ. Ενότητα 4: Εντολές Επιλογής

Λογιστικές Εφαρμογές Εργαστήριο

Δομημένος Προγραμματισμός

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Πληροφορική. Εργαστηριακή Ενότητα 3 η : Επεξεργασία Κελιών Γραμμών & Στηλών. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Προγραμματισμός και Εφαρμογές Υπολογιστών

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Εισαγωγή στον Προγραμματισμό. Ενότητα 4: Έλεγχος Ροής. Κ.

Εισαγωγή στους Υπολογιστές

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Πίνακας Περιεχομένων. 1. Locals Window & BreakPoints

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

Δομή Επανάληψης. Κεφάλαιο 7 Mike Trimos

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Αντικειμενοστραφής Προγραμματισμός

Αλγοριθμική & Δομές Δεδομένων- Γλώσσα Προγραμματισμού Ι (PASCAL) (PASCAL ) Εντολές Ελέγχου & Επανάληψης

Εισαγωγή στον Προγραμματισμό με C++

Εισαγωγή στον Προγραμματισμό

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

Πληροφορική. Εργαστηριακή Ενότητα 1 η : Εισαγωγή στα Λογιστικά Φύλλα με το MS Excel. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Πληροφορική. Εργαστηριακή Ενότητα 6 η : Ταξινόμηση & Ομαδοποίηση Δεδομένων

ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ(Visual Basic)

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Δομημένος Προγραμματισμός

Υπολογιστικά Συστήματα

Προγραμματισμός Η/Υ. Ενότητα 5: Εντολές Επανάληψης

Διδακτική της Πληροφορικής

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Πληροφορική. Εργαστηριακή Ενότητα 8 η : Γραφήματα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

Στοιχεία Προγραμματισμού Σε Γραφικό Περιβάλλον Φύλλο εργασίας 1 ο

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επανάληψης. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Πληροφορική ΙΙ Θεματική Ενότητα 5

Πληροφορική ΙΙ Θεματική Ενότητα 7

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Αντικειμενοστραφής Προγραμματισμός

Προγραμματισμός H/Y Ενότητα 2: Εντολές ελέγχου ροής. Επικ. Καθηγητής Συνδουκάς Δημήτριος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Σχεδίαση Ψηφιακών Συστημάτων

Εισαγωγή στους Υπολογιστές

Στατιστική Επιχειρήσεων

Δομημένος Προγραμματισμός

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΠΛΗΡΟΦΟΡΙΚΗ. Ενότητα: Εργαστηριακές Ασκήσεις. Καθηγήτρια: Ι.

Εισαγωγή στον Προγραμματισμό Η/Υ (Fortran 90/95/2003)

Ενότητα 1 Διάλεξη 3. Προγραμματισμός με Εφαρμογές στην Επιστήμη του Μηχανικού. Σιέττος Κωνσταντίνος

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) a= b= c= 3 read(d,e)

Δομές ελέγχου & επανάληψης

Σχεδίαση Ψηφιακών Συστημάτων

Περιεχόμενα ΜΤ Τυχαίας Προσπέλασης Θεωρία Υπολογισμού Ενότητα 23: Μηχανές Turing Τυχαίας Προσπέλασης Επ. Καθ. Π. Κατσαρός Τμήμα Πληροφορικής Επ. Καθ.

3 η ΕΝΟΤΗΤΑ Συναρτήσεις στο MATLAB

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΜΑΘΗΜΑΤΙΚΑ ΓΙΑ ΟΙΚΟΝΟΜΟΛΟΓΟΥΣ

Τεχνικές Προγραμματισμού και Χρήση Λογισμικού Η/Υ στις Κατασκευές

Δομημένος Προγραμματισμός

Υδραυλικά & Πνευματικά ΣΑΕ

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 2 - Εργαστήριο

Αντικειμενοστραφής Προγραμματισμός

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Δομή Επιλογής. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Πληροφορική. Εργαστηριακή Ενότητα 2 η : Το βιβλίο εργασίας του MS Excel. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Διαδικαστικός Προγραμματισμός

Λογιστικές Εφαρμογές Εργαστήριο

Εντολές επιλογής Επαναλήψεις (if, switch, while)

Συστήματα Αυτομάτου Ελέγχου 1 Ενότητα # 5: Χρήση μετασχηματισμού Laplace για επίλυση ηλεκτρικών κυκλωμάτων Μέθοδοι εντάσεων βρόχων και τάσεων κόμβων

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Ενότητα: Τοπικές vs Καθολικές Μεταβλητές ΚΥΡΟΠΟΥΛΟΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Τμήμα Διοίκηση Επιχειρήσεων (Κοζάνη)

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Πληροφορική. Ενότητα 4: Α. Λογικές εκφράσεις (Παραστάσεις και Δείκτες). Β. Δομές Προγραμματισμού. Κωνσταντίνος Καρατζάς Τμήμα Μηχανολόγων Μηχανικών

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι. Ενότητα 7α: SQL (NULL, Διαίρεση) Ευαγγελίδης Γεώργιος. Τμήμα Εφαρμοσμένης Πληροφορικής ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Προγραμματισμός ΗΥ και Υπολογιστική Φυσική. Χρήστος Γκουμόπουλος

ΒΟΗΘΗΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ

Προγραμματισμός και Εφαρμογές Υπολογιστών

Μαθηματικά. Ενότητα 6: Ασκήσεις Ορίων Συνάρτησης. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 2 : Αλγόριθμοι. Δρ. Γκόγκος Χρήστος

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΕΠΕΞΕΡΓΑΣΙΑ ΕΙΚΟΝΑΣ. Ενότητα 3: Αποκατάσταση Εικόνας.

Περιβαλλοντική Χημεία

ΑΣΦΑΛΕΙΑ & ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ(Θ)

Υπολογισμός - Εντολές Επανάληψης

Transcript:

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Προγραμματισμός Η/Υ Ενότητα 3 η : Η Γλώσσα Προγραμματισμού VB.NET (2 ο Μέρος) Ι. Ψαρομήλιγκος Χ. Κυτάγιας Τμήμα Λογιστικής & Χρηματοοικονομικής

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς. 2

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα» έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. 3

Σκοποί ενότητας Στην συγκεκριμένη ενότητα παρουσιάζονται οι εντολές λήψης αποφάσεων «If...Then», «If... Then... Else», «If... Then... ElseIf» και «Select Case» καθώς και οι εντολές επανάληψης «For Next» και «Do Loop» της γλώσσας προγραμματισμού Visual Basic.NET. 4

Περιεχόμενα Η Δομή If...Then Η Δομή If... Then... Else Η Δομή If... Then... ElseIf Η Δομή Select Case Η Δομή For... Next Η Δομή Do... Loop 5

Εντολές Λήψης Αποφάσεων Η Visual Basic παρέχει τρεις εντολές Λήψης Αποφάσεων. Οι εντολές αυτές επηρεάζουν τη ροή του προγράμματός μας με βάση την ικανοποίηση ή μη κάποιας ή κάποιων συνθηκών. Με τη χρήση των εντολών λήψης αποφάσεων τα προγράμματά μας γίνονται περισσότερο ευέλικτα και ικανά να διαχειριστούν την επίλυση των διαφόρων προβλημάτων - καταστάσεων. Οι 3 εντολές Λήψης Αποφάσεων είναι: If...Then If... Then... Else και If... Then... ElseIf Select Case 6

Η Δομή If Then Η δομή If... Then ελέγχει μια συνθήκη. Εάν η συνθήκη αυτή είναι αληθής (True) εκτελούνται οι εντολές που βρίσκονται μετά το Then. Οι εντολές μπορούν να γραφούν σε μια γραμμή ή σε ξεχωριστές Εαν επιλέξουμε σύνταξη μιας γραμμής τότε οι εντολές διαχωρίζονται με το σύμβολο «:» Εαν επιλέξουμε σύνταξη πολλών γραμμών τότε μετά την τελευταία εντολή πρέπει να προσθέσουμε End If. 7

Παραδείγματα Dim count As Integer = 0 Dim message As String If count = 0 Then message = "There are no items." ElseIf count = 1 Then message = "There is 1 item." Else message = "There are " & count & " items." End If 8

Η Δομή If Then Else Η δομή If... Then... Else χρησιμοποιείται όταν έχουμε δύο εναλλακτικές με βάση τη συνθήκη και μας ενδιαφέρει η εκτέλεση ενός συνόλου εντολών Έτσι στην παρακάtω δομή If εκτελείται μόνο το Σύνολο_Εντολών_1 ή μόνο το Σύνολο_Εντολών_2 ανάλογα με το αν η συνθήκη είναι αληθής (True) ή ψευδής (False) αντίστοιχα. If <συνθήκη> Then Else End If Σύνολο_Εντολών_1 Σύνολο_Εντολών_2 9

Η Δομή If Then ElseIf Όταν έχουμε περισσότερες των δυο πιθανών εναλλακτικών περιπτώσεων που καθορίζουν τη ροή του προγράμματός μας, χρησιμοποιούμε την παρακάτω δομή If : If <συνθήκη1> Then Σύνολο_Εντολών_1 ElseIf <συνθήκη2> Then Σύνολο_Εντολών_2 ElseIf <συνθήκη3> Then... Else End If Σύνολο_Εντολών_3 Σύνολο_ΕντολώνN 10

Παραδείγματα If mesos_oros < 10 Then result = "Failed" Else result = "Passed" End If If mesos_oros>=8.5 Then msg = "Άριστα" ElseIf mesos_oros>=7 Then msg = "Λίαν Καλώς" ElseIf mesos_oros>=6 Then msg = "Καλώς" ElseIf mesos_oros>=5 Then msg = "Μέτρια" Else msg = "Απορρίπτεται" End If Πρέπει να είστε ιδιαίτερα προσεκτικοί στην επιλογή της σειράς των εντολών. Για παράδειγμα αν στον παραπάνω κώδικα,που χαρακτηρίζει το βαθμό του πτυχίου βάσει του μέσου όρου των μαθημάτων, η συνθήκη mesos_oros>=5 μπεί στο πρώτο If τότε φοιτητής με μέσο όρο 6 θα χαρακτηριστεί με άριστη απόδοση. 11

Η Δομή Select Case Η συγκεκριμένη εντολή δέχεται μια τιμή (προκύπτει από την "έκφραση") και με βάση αυτήν επιλέγεται η πρώτη περίπτωση που η τιμή της αντιστοιχεί με την τιμή της έκφρασης. Έτσι εκτελούνται μόνο οι εντολές που αντιστοιχούν σε αυτήν την περίπτωση (case) Π.χ Οι διάφορες περιπτώσεις μπορεί να πάρουν και πιο ευέλικτες μορφές όπως: Select Case έκφραση Case τιμή1 Σύνολο_Εντολών_1 Case τιμή2 Σύνολο_Εντολών_2... Case τιμήν Σύνολο_Εντολών_Ν Case Else Σύνολο_Εντολών End Select Case -2 To 2, 5 To 9,11, 13, Is > maxnumber 12

Παραδείγματα Dim grade As Char grade = "B" Select Case grade Case "A" Console.WriteLine("Excellent!") Case "B", "C" Console.WriteLine("Well done") Case "D" Console.WriteLine("You passed") Case "F" Console.WriteLine("Better try again") Case Else Console.WriteLine("Invalid grade") End Select Console.WriteLine("Your grade is " & grade) Select Case Season Case 1 msg = "Winter" Case 2 msg = "Spring" Case 3 msg = "Summer" Case 4 msg = "Autumn" End Select Select Case agerange Case 16 To 21 Console.WriteLine( Still Young ) Case 50 To 64 Console.WriteLine( Start Lying ) End Select 13

Select Case vs ElseIf Η Select Case μπορεί να αντικαταστήσει τα πολλαπλά ElseIf σε μια δομή επιλογής. Ας δούμε το παράδειγμα με το χαρακτηρισμό της βαθμολογίας και με τις δυο περιπτώσεις. If mesos_oros>=8.5 Then msg = "Άριστα" ElseIf mesos_oros>=7 Then msg = "Λίαν Καλώς" ElseIf mesos_oros>=6 Then msg = "Καλώς" ElseIf mesos_oros>=5 Then msg = "Μέτρια" Else msg = "Απορρίπτεται" End If Select Case mesos_oros Case Is >= 8.5 msg = "Άριστα" Case Is >= 7 msg = "Λίαν Καλώς" Case Is >= 6 msg = "Καλώς" Case Is >= 5 msg = "Μέτρια" Case Else msg = "Απορρίπτεται" End Select 14

Η Δομή For Next Χρησιμοποιούμε τη δομή "For...Next" για να επαναλάβουμε ένα συγκεκριμένο αριθμό φορών την εκτέλεση ενός συνόλου εντολών (το σύνολο των εντολών το δηλώνουμε μεταξύ του For και του Next). Η συγκεκριμένη δομή χρησιμοποιεί μια μεταβλητή ελέγχου ως "μετρητή" των επαναλήψεων. Εμείς μπορούμε να καθορίσουμε την αρχική και την τελική τιμή του μετρητή καθώς και το "βήμα" της αύξησης ή μείωσης (το βήμα μπορεί να είναι και αρνητικό). For Μετρητής = Αρχική_τιμή to Τελική_τιμή [Step βήμα] εκτελέσιμη εντολή 1 εκτελέσιμη εντολή 2... εκτελέσιμη εντολή K Next [Μετρητής] 15

Παραδείγματα (1) For X=1 to 100 Console.WriteLine(X) Νext X S = 0 For X=0 to 100 If X Mod 2 = 0 Then S = S + X^2 Νext X S = 0 For X=1 to 100 Step 2 S = S + X Νext X Dim Index, S as Integer For Index=1 to 100 S=S+Index If (S>10) Then Exit For Νext Index 16

Παραδείγματα (2) Στο παρακάτω τμήμα προγράμματος υπολογίζεται με τη βοήθεια της μεταβλητής s το άθροισμα: 1 2 +(0.9) 2 +(0.8) 2 +...+(0.1) 2 [=3.85] Dim i as double, s as double s = 0 For i=1 to 0.1 step 0.1 s = s + i^2 Next I 17

Η Δομή Do Loop (1) Οταν ο αριθμός των επαναλήψεων δεν είναι γνωστός και εξαρτάται από κάποια συνθήκη χρησιμοποιούμε τη δομή "Do... Loop" Η δομή "Do... Loop" παρουσιάζεται με τις παρακάτω μορφές: --- 1η Μορφή --- --- 2η Μορφή --- Do {While Until} συνθήκη Do [εντολές] [εντολές] Loop Loop {While Until} συνθήκη 18

Η Δομή Do Loop (2) --- 1η Μορφή --- --- 2η Μορφή --- Do {While Until} συνθήκη Do [εντολές] [εντολές] Loop Loop {While Until} συνθήκη Στην 1η μορφή η συνθήκη εξετάζεται πρώτα ενώ στη 2η μορφή εξετάζεται στο τέλος. Συνεπώς, στην 1η μορφή η συνθήκη μπορεί να αποτρέψει εντελώς τις επαναλήψεις ενώ στη 2η μορφή θα έχουμε τουλάχιστον μια επανάληψη. Η συνθήκη συνοδεύεται με το While ή το Until. Αν έχουμε "While συνθήκη" σημαίνει "Οσο η συνθήκη=true επανέλαβε" ενώ αν έχουμε "Until συνθήκη" σημαίνει "Μέχρι η συνθήκη να γίνει ίση με true επανέλαβε". Αρα με While τερματίζουμε τις επαναλήψεις όταν γίνει "συνθήκη=false" ενώ με Until όταν γίνει "συνθήκη=true" 19

Παράδειγμα Do While Loop Στο επόμενο τμήμα προγράμματος εισάγεται ένας αριθμός στη μεταβλητή number τύπου Integer. Οσο η τιμή που πληκτρολογούμε δε βρίσκεται εντός του διαστήματος [1,10], εμφανίζεται σχετικό μήνυμα και ξαναζητείται τιμή για τη number. Dim number As Integer Console.Write("Δώσε έναν αριθμό από το 1 έως το 10=") number = Console.ReadLine() Do While (number < 1 Or number > 10) Console.WriteLine("Ο αριθμός δεν είναι στο διάστημα [1,10]") Console.Write("Δώσε έναν αριθμό από το 1 έως το 10=") number = Console.ReadLine() Loop 20

Παράδειγμα Do Until Loop Το επόμενο τμήμα προγράμματος κάνει ακριβώς ότι και το προηγούμενο χρησιμοποιώντας "Until συνθήκη". Eισάγεται ένας αριθμός στη μεταβλητή number τύπου Integer. Οσο η τιμή που πληκτρολογούμε δε βρίσκεται εντός του διαστήματος [1,10], εμφανίζεται σχετικό μήνυμα και ξαναζητείται τιμή για τη number. Dim number As Integer Console.Write("Δώσε έναν αριθμό από το 1 έως το 10=") number = Console.ReadLine() Do Until (number >= 1 And number <= 10) Console.WriteLine("Ο αριθμός δεν είναι στο διάστημα [1,10]") Console.Write("Δώσε έναν αριθμό από το 1 έως το 10=") number = Console.ReadLine() Loop 21

Παράδειγμα Do Loop While Το επόμενο τμήμα προγράμματος κάνει ακριβώς ότι και τα προηγούμενα δύο χρησιμοποιώντας "While συνθήκη" στο τέλος. Eισάγεται ένας αριθμός στη μεταβλητή number τύπου Integer. Οσο η τιμή που πληκτρολογούμε δε βρίσκεται εντός του διαστήματος [1,10], εμφανίζεται σχετικό μήνυμα και ξαναζητείται τιμή για τη number. Dim number As Integer Do Console.Write("Δώσε έναν αριθμό από το 1 έως το 10=") number = Console.ReadLine() If (number < 1 Or number > 10) Then Console.WriteLine("Ο αριθμός δεν είναι στο διάστημα [1,10]") End If Loop While (number < 1 Or number > 10) 22

Παράδειγμα Do Loop Until Το επόμενο τμήμα προγράμματος κάνει ακριβώς ότι και το προηγούμενο χρησιμοποιώντας "Until συνθήκη" στο τέλος. Eισάγεται ένας αριθμός στη μεταβλητή number τύπου Integer. Οσο η τιμή που πληκτρολογούμε δε βρίσκεται εντός του διαστήματος [1,10], εμφανίζεται σχετικό μήνυμα και ξαναζητείται τιμή για τη number. Dim number As Integer Do Console.Write("Δώσε έναν αριθμό από το 1 έως το 10=") number = Console.ReadLine() If (number < 1 Or number > 10) Then Console.WriteLine("Ο αριθμός δεν είναι στο διάστημα [1,10]") End If Loop Until (number >= 1 And number <= 10) 23

Ατέρμονες επαναλήψεις Είναι επαναλήψεις στις οποίες δεν υπάρχει τρόπος διαφυγής. Δείτε το παρακάτω τμήμα κώδικα: Dim number As Integer Do Console.Write("Δώσε έναν αριθμό ή -1 για ΤΕΡΜΑΤΙΣΜΟ. ") number = Console.ReadLine() number = number ^ 2 Console.WriteLine("To τετράγωνό του είναι " & number) Loop While number <> -1 24

Ατέρμονες επαναλήψεις παράδειγμα Μια βελτίωση του προηγούμενου προγράμματος για να έχουμε τρόπο διαφυγής είναι και η παρακάτω: Dim number As Integer Do Console.Write("Δώσε έναν αριθμό ή -1 για ΤΕΡΜΑΤΙΣΜΟ. ") number = Console.ReadLine() if number = -1 Then Exit Do number = number ^ 2 Console.WriteLine("To τετράγωνό του είναι " & number) Loop 25

Τέλος Ενότητας