Select Case Σκοπός: Εκμάθηση της εντολής (δομής) Select Case ώστε να μπορείτε να διαλέγετε μια επιλογή ανάμεσα σε πολλές διαθέσιμες στον κώδικα του προγράμματος Κ. Κωστοπούλου
Τελεστές Σύγκρισης Οι τελεστές σύγκρισης συγκρίνουν δεδομένα (ιδιότητες, μεταβλητές ή άλλο στοιχείο δεδομένων) στο κώδικα προγράμματος και καθορίζουν το αποτέλεσμα της σύγκρισης με απαντήσεις του τύπου True (αληθές) ή False (ψευδές).
Τελεστές Σύγκρισης Οι τελεστές σύγκρισης μπορούν να συγκρίνουν αριθμητικές και αλφαβητικές τιμές. Μπορείτε να συγκρίνετε κάθε είδους αριθμό με ένα άλλο αριθμό ή κάθε είδους κείμενο με ένα άλλο κείμενο. Οι μεταβλητές και στις δύο πλευρές ενός τελεστή σύγκρισης θα πρέπει να έχουν τον ίδιο τύπο δεδομένων ή τουλάχιστον συμβατούς τύπους.
Τελεστές Σύγκρισης = Ίσο με <> Διάφορο του > Μεγαλύτερο από = Ίσο με <> Διάφορο του > Μεγαλύτερο από < Μικρότερο από >= Μεγαλύτερο από ή ίσο με <= Μικρότερο από ή ίσο με
Select Case Τα προγράμματα μπορούν να παίρνουν αποφάσεις.
Select Case Select Case Μεταβλητή Case Τιμή1 Case Τιμή2 . . . Εντολές που εκτελούνται αν η μεταβλητή είναι ίση με Τιμή1 Case Τιμή2 Εντολές που εκτελούνται αν η μεταβλητή είναι ίση με Τιμή2 . . . Case Else Εντολές που εκτελούνται αν δεν βρεθεί ίση τιμή End Select
Select Case Select Case Μεταβλητή Case Τιμή1 Case Τιμή2 . . . Εντολή(ές)1 Case Τιμή2 Εντολή(ές)2 . . . Case Else Εντολή(ές)Ν End Select
Παράδειγμα Select Case Dim Age As Integer Age = 18 Select Case Age Case 16 Label1.Caption= "Μπορείς να οδηγήσεις μηχανάκι" Case 18 Label1.Caption= " Τώρα μπορείς να ψηφίσεις " Case 65 Label1.Caption= "Μπορείς να συνταξιοδοτηθείς" Case Else Label1.Caption= "Είσαι στην καλύτερη ηλικία!" End Select
Παράδειγμα Select Case Dim Name As String Name = InputBox("Δώσε όνομα") Select Case Name Case "Μαρία" MsgBox ("Καλωσόρισες Μαρία!") Case “ Πέτρος" MsgBox ("Καλημέρα Πέτρο!") Case "Ελένη" MsgBox ("Πώς είσαι Ελένη;") Case Else MsgBox ("Γεια σου κύριε Άγνωστε!") End Select
Select Case Μπορεί να χρησιμοποιεί τους τελεστές σύγκρισης: Η δυνατότητα αυτή πραγματοποιείται με τη χρήση της δεσμευμένης λέξης Is. Η δεσμευμένη λέξη Is συγκρίνει τη μεταβλητή με την παράσταση που ακολουθεί την δεσμευμένη λέξη Is (π.χ. Is<=10). Μπορεί να χρησιμοποιεί τη δεσμευμένη λέξη To για να ορίσει το εύρος τιμών της μεταβλητής (π.χ. 10 To 30).
Select Case αριθμός ή αριθμητική έκφραση (π.χ. 12.2, cos(A)) αλφαριθμητικό ή έκφραση αλφαριθμητικού (π.χ. "John", NumMonths) διάστημα τιμών (π.χ. 15 Το 20, "C" To "CF").
Select Case συγκριτική τιμή (π.χ. Is<10, Is>"Β") συνδυασμός (π.χ. Case 1 To 4, 7 To 9, 11, 13, Is>MaxNumber) υπό τον όρο ότι η μεταβλητή και οι τιμές της πρέπει να είναι ή όλες αριθμητικές ή όλες αλφαριθμητικές.
Παράδειγμα Select Case Select Case Age Case Is <= 6 Print "Μωρό" Case 6 To 12 Print "Παιδί" Case 12 To 18 Print "Εφηβος" Case 18 To 70 Print "Ενήλικας" Case Else Print "Ηλικιωμένος" End Select
Εκφώνηση άσκησης Να γραφεί πρόγραμμα όπου δίνεται η θερμοκρασία περιβάλλοντος και εμφανίζει το εξής μήνυμα: εάν η θερμοκρασία είναι <= με 8 βαθμούς εμφανίζει το μήνυμα "Κάνει παγωνιά" εάν η θερμοκρασία είναι > από 8 και <= με 15 εμφανίζει το μήνυμα "Κάνει ψύχρα" εάν η θερμοκρασία είναι > από 15 και <= με 28 εμφανίζει το μήνυμα " Έχει καλό καιρό" εάν η θερμοκρασία είναι > 28 τότε εμφανίζει το μήνυμα "Κάνει πολύ ζέστη"
Λύση άσκησης Dim Temp As Single Temp = InputBox(“Δώσε θερμοκρασία περιβάλλοντος") Select Case Temp Case Is <= 8 MsgBox ("Κάνει Παγωνιά") Case 8 To 15 MsgBox ("Κάνει Ψύχρα") Case 15 To 28 MsgBox ("Έχει καλό καιρό") Case Else MsgBox ("Κάνει πολύ ζέστη") End Select