ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1

ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
1. ΟΠΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΣΕ ΓΛΩΣΣΑ VISUAL
BASIC
Τύποι µεταβλητών στη Visual Basic
Integer Ακέραιοι αριθµοί -32768 έως 32767
Long Ακέραιοι αριθµοί έως περίπου +-2 δις
Single Αριθµοί µε υποδιαστολή -10-45 - 1038
Double Αριθµοί µε υποδιαστολή -10-324 - 10308
String σειρά από χαρακτήρες
Byte Ακέραιοι αριθµοί 0-255
Boolean True, False
Οποιοσδήποτε από τους παραπάνω τύπους είναι variant
ΕΡΩΤΗΣΗ: Μπορώ να πω στη Visual Basic να µε αναγκάσει να ΟΡΙΖΩ
ΤΟΥΣ ΤΥΠΟΣ ΟΛΩΝ ΤΩΝ ΜΕΤΑΒΛΗΤΩΝ;
Απάντηση: Ναι, µε τη δήλωση Option Explicit
Ανάγκασε τον προγραµµατιστή να δηλώνει τους τύπους όλων των
µεταβλητών του.
2. ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΛΓΟΡΙΘΜΙΚΕΣ ∆ΟΜΕΣ
2.1. ΕΠΑΝΑΛΗΠΤΙΚΗ ∆ΟΜΗ For .. Next
Όταν ξέρω πόσες επαναλήψεις θα εκτελέσει ένα µέρος
προγράµµατος τότε χρησιµοποιώ την επαναληπτική δοµή
for …….next
του
Παράδειγµα 2.1.1.
Έστω ότι θέλω να εισάγω τη στηθαία διάµετρο 20 κορµών και θέλω ο
Η/Υ να βρίσκει το άθροισµά τους και τον µέσο όρο τους
Αν το υποπρόγραµµα ενεργοποιείται µε το πάτηµα του command1 τότε:
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Private Sub Command1_Click()
Dim s As Integer
s=0
For metritis = 1 To 10
d = InputBox("Dose th diametro")
s=s+d
Next metritis
Text1.Text = s
End Sub
Private Sub Command1_Click()
Dim s As Integer
Dim MO As Single
s=0
For metritis = 1 To 10
d = InputBox("∆ώσε τη στηθιαία διάµετρο")
s=s+d
Next metritis
MO = s / 10
Text1.Text = MO
End Sub
_________________________________________________________
2.2. ∆ηµιουργία ΜΕΝΟΥ σε οπτικό περιβάλλον προγραµµατισµού µε
τον Menou Editor
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
2.2.1 Παράδειγµα αλλαγής του χρώµατος της φόρµας
Εικόνα 1.
Παράδειγµα 2.2.1.
Private Sub mnu_blue_Click()
Form1.BackColor = QBColor(1)
End Sub
Private Sub mnu_blue_Click()
Form1.BackColor = QBColor(1)
mnu_blue.Enabled = False
mnu_red.Enabled = True
End Sub
___________________________________________________________
Private Sub mnu_red_Click()
Form1.BackColor = QBColor(4)
mnu_blue.Enabled = True
mnu_red.Enabled = False
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
End Sub
__________________________________________________________
Private Sub mnu_blue_Click()
Form1.BackColor = QBColor(1)
mnu_blue.Enabled = False
mnu_red.Enabled = True
End Sub
__________________________________________________________
Private Sub mnu_exit_Click()
Form1.Hide
End
End Sub
Private Sub mnu_red_Click()
Form1.BackColor = QBColor(4)
mnu_blue.Enabled = True
mnu_red.Enabled = False
End Sub
Εικόνα 2.
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
2.3. Παράδειγµα εκτέλεσης αριθµητικών πράξεων µε µενού
Παράδειγµα 2.3.1.
Private Sub mnu_prosthesi_Click()
Dim a, b As Integer
a = Val(Text1.Text)
b = Val(Text2.Text)
Text3.Text = a + b
End Sub
2.4. Επαναληπτική δοµή Do ….. While …. Loop
Χρησιµοποιείται όταν δεν ξέρω εκ των προτέρων το πλήθος των
επαναλήψεων που θα εκτελεστούν.
Παράδειγµα 2.4.1.
arithmos=1
Do While (arithmos<20)
arithmos=arithmos+1
Loop
Η συγκεκριµένη επανάληψη θα µπορούσε να υλοποιηθεί και µε for
For arithmos=1 To 20
Next arithmos
Όσο ισχύει η συνθήκη θα εκτελείται η επανάληψη. Μόλις πάψει να
ισχύει η συνθήκη θα πάψει να εκτελείται και η επανάληψη.
Παράδειγµα 2.4.2.
Έστω ότι ήθελα να προσθέτω όλους τους αριθµούς από το 1 έως και το
20
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
S=0
For i=1 To 20
S=S+i
Next i
Παράδειγµα 2.4.3.
Έστω ότι ήθελα να προσθέτω όλους τους άρτιους αριθµούς από το 1 έως
και το 20. Προσοχή στην αρχικοποίηση της τιµής του S.
S=0
For i=0 To 20 step 2
S=S+i
Next i
2.5. ΠΑΡΑ∆ΕΙΓΜΑΤΑ ΧΡΗΣΗΣ του Do .. While … Loop
Παράδειγµα 2.5.4.
Θέλω ο χρήστης του προγράµµατος να εισάγει το σωστό PASSWORD
που είναι 123456. Εφόσον ο χρήστης εισάγει λάθος το password το
σύστηµα θα ρωτάει ξανά και ξανά µέχρι το Password να εισαχθεί σωστά.
Private Sub Command1_Click()
password = InputBox("Παρακαλώ εισάγετε το Password")
Do While (password<>"123456")
password = InputBox("Λάθος εισαγωγή τιµής Παρακαλώ
ξαναεισάγετε το Password")
Loop
End Sub
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Εικόνα 3.
___________________________________________________________
Παράδειγµα 2.5.5.
Έστω ότι θέλω να ρωτάει µέχρι 5 φορές σε περίπτωση που δίνεται λάθος
password από το χρήστη.
Private Sub Command1_Click()
password = InputBox("Παρακαλώ εισάγετε το Password")
metritis=1
If (password="123456") Then
MsgBox("Βρήκες τον κωδικό µε την 1η Είσαι πολύ έξυπνος")
Endif
Do While (password<>"123456")
password = InputBox("Λάθος εισαγωγή τιµής Παρακαλώ
ξαναεισάγετε το Password")
metritis=metritis+1
If (password="123456") Then
MsgBox("Επιτέλους ….ουφ Βρήκες τον κωδικό ")
Endif
If (metritis =5) Then
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
MsgBox("∆ώσατε λάθος 5 φορές το σύνθηµα το πρόγραµµα
τερµατίζει")
End
Endif
Loop
End Sub
Παράδειγµα 2.5.6.
Θέλω να γίνεται εισαγωγή 20 διαµέτρων εντός των ορίων 19 µε 27 και να
υπολογίζεται ο µέσος όρος
Private Sub Command1_Click()
Dim diametros As Integer
Dim sum As Integer
Dim mo As Single
Dim max As Integer
Dim min As Integer
max = 18
min = 28
sum = 0
For i = 1 To 20
diametros = InputBox("Dose diametro")
Do While (diametros < 18) Or (diametros > 28)
diametros = InputBox("Ksana Dose diametro")
Loop
If (diametros > max) Then max = diametros
If (diametros < min) Then min = diametros
sum = sum + diametros
Next i
mo = sum / i
Text1.Text = mo
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Text2.Text = min
Text3.Text = max
End Sub
Εικόνα 4.
Εικόνα 5.
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Παράδειγµα 2.5.7.
Η ίδια εργασία να υλοποιηθεί µε την χρήση µονοδιάστατου πίνακα 20
θέσεων
Private Sub Command1_Click()
Dim diam(20) As Integer
Dim sum As Integer
Dim mo As Single
Dim max As Integer
Dim min As Integer
max = 18
min = 28
sum = 0
For i = 1 To 20
diam(i) = InputBox("Dose diametro")
Do While (diam(i) < 18) Or (diam(i) > 28)
diam(i) = InputBox("Ksana Dose diametro")
Loop
If (diam(i) > max) Then max = diam(i)
If (diam(i) < min) Then min = diam(i)
sum = sum + diam(i)
Next i
mo = sum / i
Text1.Text = mo
Text2.Text = min
Text3.Text = max
End Sub
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Παράδειγµα 2.5.8.
Η παραπάνω άσκηση να επεκταθεί ώστε να υπολογίζει και τον αριθµό
των δέντρων που έχουν διάµετρο µεγαλύτερη από την µέση διάµετρο.
Dim diam(20) As Integer
Dim sum As Integer
Dim sum2 As Integer
Dim mo As Single
Dim max As Integer
Dim min As Integer
max = 18
min = 28
sum = 0
For i = 1 To 20
diam(i) = InputBox("Dose diametro")
Do While (diam(i) < 18) Or (diam(i) > 28)
diam(i) = InputBox("Ksana Dose diametro")
Loop
If (diam(i) > max) Then max = diam(i)
If (diam(i) < min) Then min = diam(i)
sum = sum + diam(i)
Next
mo = sum / i
sum2 = 0
For i = 1 To 20
If (diam(i) > mo) Then sum2 = sum2 + 1
Next
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Text1.Text = mo
Text2.Text = min
Text3.Text = max
Text4.Text = sum2
Εικόνα 6.
Παράδειγµα 2.5.9.
Θέλω να γίνεται εισαγωγή 20 διαµέτρων εντός των ορίων 19 µε 27
καθώς και της ηλικίας του κάθε δέντρου. Στη συνέχεια να βρίσκει τον
µέσο όρο διαµέτρων και ηλικιών καθώς και τα δέντρα µε διάµετρο
µεγαλύτερη του µέσου όρου.
Private Sub Command1_Click()
Dim diam(20, 2) As Integer
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Dim sum As Integer
Dim sum2 As Integer
Dim mo As Single
Dim agesum As Integer
Dim agemo As Single
sum = 0
agesum = 0
For i = 1 To 20
diam(i, 1) = InputBox("Dose diametro")
Do While (diam(i, 1) < 18) Or (diam(i, 1) > 28)
diam(i, 1) = InputBox("Ksana Dose diametro")
Loop
diam(i, 2) = InputBox("dose ilikia dentrou")
sum = sum + diam(i, 1)
agesum = agesum + diam(i, 2)
Next
mo = sum / i
agemo = agesum / i
sum2 = 0
For i = 1 To 20
If (diam(i, 1) > mo) Then sum2 = sum2 + 1
Next
Text1.Text = mo
Text2.Text = sum
Text3.Text = agemo
End Sub
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Εικόνα 7.
Παράδειγµα 2.5.10.
Να γραφτεί πρόγραµµα το οποίο να δίνει την δυνατότητα για εισαγωγή
διαµέτρων και ηλικιών για 10 δέντρα. Οι τιµές αυτές να αποθηκεύονται
σε πίνακα 10 θέσεων, δύο διαστάσεων. Στην συνέχεια µε το κατάλληλο
κουµπί να εισάγουµε µια διάµετρο και να αναζητούµε στον πίνακα αυτή
τη διάµετρο. Εάν η διάµετρος δεν υπάρχει να εµφανίζει κατάλληλο
µήνυµα. Αν υπάρχει µια φορά να εµφανίζετε η θέση στον πίνακα, η
ηλικία και η διάµετρος ενώ αν υπάρχει περισσότερες από µία να
εµφανίζονται τα στοιχεία της τελευταίας καταχώρησης µαζί µε
ενηµερωτικό µήνυµα. Τέλος να υπάρχει επιλογή µηδενισµού των
στοιχείών του πίνακα και της φόρµας.
Dim dentra(10, 2) As Integer
Private Sub Command1_Click()
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
For i = 1 To 10
dentra(i, 1) = InputBox("Dose diametro")
Do While (dentra(i, 1) < 18) Or (dentra(i, 1) > 28)
dentra(i, 1) = InputBox("Ksana Dose diametro")
Loop
dentra(i, 2) = InputBox("dose ilikia dentrou")
Next
End Sub
Private Sub Command2_Click()
Dim diametros As Integer
Dim plithos As Integer
Dim thesi As Integer
plithos = 0
diametros = InputBox("dose diametro gia anazitisi")
For i = 1 To 10
If dentra(i, 1) = diametros Then
plithos = plithos + 1
thesi = i
End If
Next
If plithos = 1 Then
Text1.Text = thesi
Text2.Text = dentra(thesi, 2)
Text.Text = dentra(thesi, 1)
End If
If plithos = 0 Then MsgBox ("H dimateros pou dosate den iparxei")
If plithos > 1 Then
MsgBox ("h diametros emfanistike poles fores")
Text1.Text = thesi
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Text2.Text = dentra(thesi, 2)
Text3.Text = dentra(thesi, 1)
End If
End Sub
Private Sub Command3_Click()
For i = 1 To 10
dentra(i, 1) = 0
dentra(i, 2) = 0
Next
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
MsgBox ("O pinakas Midenistike")
End Sub
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Εικόνα 8.
3. Πίνακες στη Visual Basic
Οι πίνακες είναι µια στατική δοµή δεδοµένων η οποία καταλαµβάνει
συγκεκριµένο πλήθος συνεχόµενων θέσεων στη µνήµη του Η/Υ και
δέχεται προς αποθήκευση µόνο Οµοειδή δεδοµένα.
Άρα λοιπόν:
……..προσοχή κάθε πίνακας δέχεται προς εισαγωγή ΜΟΝΟ ίδιου τύπου
δεδοµένα
και έχει συγκεκριµένο πλήθος αποθηκευτικών θέσεων
Παράδειγµα 3.1.
Έστω ότι έχω τους βαθµούς 30 φοιτητών και θέλω να τους αποθηκεύσω
κάπου έτσι ώστε να µπορούν να χρησιµοποιηθούν από το πρόγραµµα.
Έστω ότι ο πίνακας λέγεται vathmoi
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
∆ΗΛΩΣΗ
Dim vathmoi(30) As Integer
π.χ. vathmoi(3) =8 σηµαίνει ότι στην 3η θέση αποθηκεύω το 8
Για τη συγκεκριµένη εφαρµογή χρειάζοµαι έναν πίνακα 30 θέσεων
2 7 8
[1][2] [3]
……………………………………………………………………………
[30]
Ο πίνακας λέµε ότι είναι Στατική δοµή δεδοµένων
vathmoi(5)=88
3.1. ΕΙΣΑΓΩΓΗ ΤΙΜΩΝ ΣΕ ΠΙΝΑΚΑ
Η εισαγωγή τιµών σε πίνακα γίνεται µε τη χρήση της επαναληπτικής
δοµής For ..Next
Στο συγκεκριµένο παράδειγµα η εισαγωγή γίνεται ως εξής:
For i=1 To 30
vathmoi(i) = InputBox(‘Dose vathmo’)
Next i
Παράδειγµα 3.1.1.
Α. Έστω ότι θέλω να εισάγω σε έναν πίνακα αλφαριθµητικών 10 θέσεων
3 τιµές και να τις εµφανίζω πάνω στη φόρµα µε το πάτηµα του
command1.
Β. Έστω ότι θέλω να εισάγω σε έναν πίνακα ακεραίων 10 θέσεων 3 τιµές
και να τις εµφανίζω πάνω στη φόρµα µε το πάτηµα του command2.
Option Explicit
Dim Pinakas1(1 To 10) As String
Dim Pinakas2(1 To 10) As Integer
Private Sub Command1_Click()
Dim i As Integer
Cls
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Pinakas1(1) = "Orestiada"
Pinakas1(2) = "TK68200"
Pinakas1(3) = "Tmhma Dasologias"
For i = 1 To 3
Print "H timh tou pinaka Pinakas1 sth thesh " + Str(i) + " einai: " +
Pinakas1(i)
Next i
End Sub
Private Sub Command2_Click()
Dim i As Integer
Cls
Pinakas2(1) = 234
Pinakas2(2) = 684
Pinakas2(3) = 199
For i = 1 To 3
Print "H timh tou pinaka Pinakas2 sth thesh " + Str(i) + " einai: " +
Str(Pinakas2(i))
Next i
End Sub
Παράδειγµα 3.1.2.
Α. Έστω ότι θέλω να εισάγω σε έναν πίνακα αλφαριθµητικών 10 θέσεων
3 οποιεσδήποτε τιµές µε τη χρήση InputBox και να τις εµφανίζω πάνω
στη φόρµα µε το πάτηµα του command1.
Β. Έστω ότι θέλω να εισάγω σε έναν πίνακα ακεραίων 10 θέσεων 3 τιµές
µε τη χρήση InputBox και να τις εµφανίζω πάνω στη φόρµα µε το
πάτηµα του command2.
Option Explicit
Dim Pinakas1(1 To 10) As String
Dim Pinakas2(1 To 10) As Integer
__________________________________________________________
Private Sub Command1_Click()
Dim i As Integer
Cls
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
For i=1 To 3
Pinakas1(i)=InputBox(“Dose keimeno gia apothikefsi”)
Next i
For i = 1 To 3
Print "H timh tou pinaka Pinakas1 sth thesh " + Str(i) + " einai: " +
Pinakas1(i)
Next i
End Sub
__________________________________________________________
Private Sub Command2_Click()
Dim i As Integer
Cls
For i=1 To 3
Pinakas2(i)=InputBox(“Dose arithmo gia apothikefsi”)
Next i
For i = 1 To 3
Print "H timh tou pinaka Pinakas2 sth thesh " + Str(i) + " einai: " +
Str(Pinakas2(i))
Next i
End Sub
Εικόνα 9.
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
3.2.
Χρήση του Combo Box στους πίνακες της Visual Basic
To Combo χρησιµοποιείται για να εµφανίζω µε φιλικό τρόπο τις τιµές
ενός πίνακα.
Εικόνα 10.
Παράδειγµα 3.2.1.
_____________________________________________________
Private Sub Command1_Click()
Dim i As Integer
Cls
For i = 1 To 3
Pinakas1(i) = InputBox("Dose keimeno gia apothikefsi")
Next i
Combo1.Clear
For i = 1 To 3
Combo1.AddItem (Pinakas1(i))
Next i
End Sub
____________________________________________________
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Private Sub Command2_Click()
Cls
Dim i As Integer
For i = 1 To 3
Pinakas2(i) = InputBox("Dose arithmo gia apothikefsi")
Next i
Combo1.Clear
For i = 1 To 3
Combo1.AddItem Str((Pinakas2(i)))
Next i
End Sub
3.3. Χρήση των CheckBoxes και Option Buttons στη VB
Παράδειγµα 3.3.1
Έστω ότι θέλω να υλοποιήσω την πιο κάτω εφαρµογή. Όταν έχω επιλέξει
κάποιο check box θα εµφανίζεται το Caption του µε την ένδειξη ON.
Αλλιώς θα εµφανίζεται το Caption του µε την ένδειξη OFF. Αντίστοιχα
αν έχω επιλέξει ένα option button θα εµφανίζεται το caption του.
Στην περίπτωση αυτή θα πρέπει να συντάξω το υποπρόγραµµα
Subroutine enhmerosh το οποίο θα τρέχει σε κάθε περίπτωση σχετικού
συµβάντος event.
Το Interface του προγράµµατος θα είναι το πιο κάτω όπως φαίνεται στην
εικόνα 11:
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Εικόνα 11.
Check Boxes και Option Buttons
Public Sub enhmerosh()
Dim keimeno
If Check1.Value = 1 Then
keimeno = "Sound: ON"
Else
keimeno = "Sound: OFF"
End If
If Check2.Value = 1 Then
keimeno = keimeno + Chr(13) +"Mouse: ON"
Else
keimeno = keimeno + +Chr(13) + "Mouse: OFF"
End If
If Check3.Value = 1 Then
keimeno = keimeno + Chr(13) +"Colors: ON"
Else
keimeno = keimeno + Chr(13) +"Colors: OFF"
End If
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
If option1.Value=True Then
keimeno=keimeno + Chr(13) +"FM"
End if
If option2.Value=True Then
keimeno=keimeno + Chr(13) +"AM"
End if
If option3.Value=True Then
keimeno=keimeno + Chr(13) +"CD"
End if
Label1.Caption=keimeno
End Sub
Private Sub Check1_Click()
enhmerosh
End Sub
Private Sub Check2_Click()
enhmerosh
End Sub
Private Sub Check3_Click()
enhmerosh
End Sub
Private Sub Form_Load()
End Sub
Private Sub Option1_Click()
enhmerosh
End Sub
Private Sub Option2_Click()
enhmerosh
End Sub
ΣΗΜΕΙΩΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΟΣ ∆ασική Πληροφορική 1
Θεωρία
ου
5 ΕΞΑΜΗΝΟΥ
ΜΑΘΗΜΑ 1ο
Λάζαρος Σ. Ηλιάδης Αναπληρωτής Καθηγητής ∆ΠΘ
Email: liliadis@fmenr.duth.gr
Private Sub Option3_Click()
enhmerosh
End Sub