23
Μονοδιάστατοι Πίνακες

Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

  • Upload
    -

  • View
    105

  • Download
    3

Embed Size (px)

Citation preview

Page 1: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Μονοδιάστατοι Πίνακες

Page 2: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Πίνακες (Arrays)

Επιτρέπουν να αναφερόμαστε σε μια σειρά μεταβλητών με το ίδιο όνομα και να χρησιμοποιούμε ένα αριθμό (δείκτη) για να τις ξεχωρίζουμε. Βοηθούν στη δημιουργία μικρότερου και απλούστερου κώδικα, επειδή χρησιμοποιείται ο δείκτης για τη δημιουργία βρόχου.

Page 3: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Πίνακες (Arrays)

•Είναι δυνατή η αναφορά σε μια ομάδα τιμών με χρήση ενός ονόματος

•Πραγματοποίηση επεξεργασίας αυτών των τιμών είτε ατομικά, είτε συλλογικά.

Page 4: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Πίνακες (Arrays)

Οι πίνακες μπορούν να σας βοηθήσουν να παρακολουθείτε μικρά σύνολα τιμών με τρόπους που δεν θα ήταν πρακτικοί αν χρησιμοποιούσαμε συμβατικές μεταβλητές. Μονοδιάστατοι: κατάλογοι τιμών Δισδιάστατοι: πίνακες τιμών Τρισδιάστατοι: τρισδιάστατο σχήμα

Page 5: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Πίνακες

• Πίνακας (array) είναι ένα σύνολο μεταβλητών που έχουν κοινό όνομα και τύπο δεδομένων.

• Οι ανεξάρτητες τιμές του πίνακα ονομάζονται στοιχεία και αναγνωρίζονται από δείκτες.

Page 6: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Μονοδιάστατοι Πίνακες

• Ο δείκτης εμφανίζεται σε παρένθεση μετά το όνομα της μεταβλητής π.χ. Numbers(1)

• Εξ ορισμού η τιμή του πρώτου δείκτη αντιστοιχεί στο 0 π.χ. Numbers(0), Numbers(1), Numbers(2) …

Page 7: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Δήλωση πίνακα σταθερού μεγέθους

Η σύνταξη του ορισμού ενός τοπικού πίνακα:

Dim ΌνομαΠίνακα(Μεγαλύτερος δείκτης) As Τύπος Δεδομένων

Dim Months(12) As Integer

Page 8: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Εντολή Option Base

Για να θέσουμε τη τιμή του πρώτου δείκτη ίση με ένα χρησιμοποιούμε την εντολή Option Base. Παράδειγμα:

Option Base 1 Dim Months(12) As Integer

Page 9: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Εντολή Option Base

Παράδειγμα:

Option Base 1 Public Months(12) As Integer

Page 10: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Μονοδιάστατοι Πίνακες

Παράδειγμα: Option Base 1 Dim StudentName(200) As String For i=1 To 200 StudentName(i)=InputBox("Πληκτρολογείστε όνομα φοιτητή" & i)

Next i

Page 11: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 1: Μονοδιάστατος Πίνακας

Option Base 1 Dim StudentName(200) As String

Private Sub Command1_Click() For i=1 To 200

StudentName(i)=InputBox("Πληκτρο_ λογείστε το όνομα του φοιτητή" & i)

Next i End Sub

Page 12: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 2: Ανάγνωση Στοιχείων

Option Base 1 Dim A(3) As Single Private Sub Command1_Click() Dim i As Integer

For i=1 To 3 A(i) =InputBox("Πληκτρολογείστε το στοιχείο " & i)

Print A(i)

Next i End Sub

Page 13: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 2: Άθροισμα Στοιχείων

Private Sub Command2_Click() Dim i As Integer, Sum As Single

Sum = 0 For i=1 To 3 Sum = Sum + A(i) Next i Print "Αθροισμα στοιχείων:=" ; Sum End Sub

Page 14: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 2: Γινόμενο Στοιχείων

Private Sub Command3_Click() Dim i As Integer, Gin As Single

Gin = 1 For i=1 To 3 Gin = Gin * A(i) Next i Print “ Γινόμενο στοιχείων:=" ; Gin End Sub

Page 15: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 2: Μέγιστο Στοιχείο

Private Sub Command4_Click() Dim i As Integer, Megisto As Single Megisto = A(1) For i=1 To 3 If A(i) > Megisto Then Megisto = A(i) End If Next i Print “ Μέγιστο στοιχείο:=" ; Megisto End Sub

Page 16: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 2:

Άθροισμα Συνημιτόνων των Στοιχείων

Private Sub Command5_Click() Dim i As Integer, SumCos As Single SumCos = 0 For i=1 To 3 SumCos = SumCos + Cos(A(i)) Next i Print "Αθροισμα συνημιτόνων των στοι_

χείων:=" ; SumCos End Sub

Page 17: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 3

Να γραφεί πρόγραμμα το οποίο

καταγράφει και εμφανίζει τις ανώτατες ημερήσιες θερμοκρασίες μιας εβδομάδας και υπολογίζει τη μέση τιμή των θερμοκρασιών.

Page 18: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 3:

Option Base 1 Dim Temp(7) As Single Private Sub Command1_Click() Dim i As Integer For i=1 To 7 Temp(i) = InputBox ("Δώσε την υψηλότερη

θερμοκρασία", "Ημέρα" & i) Next i End Sub

Page 19: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 3:

Private Sub Command2_Click() Dim i As Integer, Total As Single Print "Υψηλότερες θερ/σίες της εβδομάδας:" Total = 0 For i=1 To 7 Print "Ημέρα"; i , Temp(i) Total = Total + Temp(i) Next i

Page 20: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 3

Print Print "Μέσος όρος υψηλότερων_

θερμοκρασιών:" ; Total/7

End Sub

Page 21: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 4

Θεωρώντας ότι οι τιμές των εσπεριδοειδών προϊόντων μεταβάλλονται καθημερινά στην Κεντρική Αγορά της Αθήνας, να γραφεί πρόγραμμα το οποίο:

1. Διαβάζει και εμφανίζει τις ημερήσιες τιμές των

πορτοκαλιών ανά κιλό για μια εβδομάδα (5 εργάσιμες ημέρες).

2. Υπολογίζει και εμφανίζει το μέσο όρο των ημερήσιων τιμών των πορτοκαλιών ανά κιλό για μια εβδομάδα.

Page 22: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Παράδειγμα 4

3.Υπολογίζει και εμφανίζει τη μέγιστη και την ελάχιστη

τιμή των πορτοκαλιών. 4. Υπολογίζει και εμφανίζει τη διαφορά μέγιστης και

ελάχιστης τιμής. Εάν η διαφορά είναι μεγαλύτερη από 1 Ευρώ εμφανίζει το μήνυμα «Υψηλή αύξηση», αλλιώς το μήνυμα «Αποδεκτή αύξηση».

Page 23: Προγραμματισμός & Εφαρμογές Υπολογιστών (μονοδιάστατοι πίνακες)

Άσκηση Γράψτε ένα πρόγραμμα που δέχεται από το πληκτρολόγιο τα στοιχεία 10 παραγωγών. Για κάθε παραγωγό δέχεται το όνομά του, το είδος της καλλιέργειας (1 για πορτοκάλια, 2 για λεμόνια ή 3 για μανταρίνια), και την παραγωγή που πέτυχε ο παραγωγός. Οι τιμές των προϊόντων είναι 1, 2 και 3 ευρώ αντίστοιχα. Μετά το τέλος της εισαγωγής των δεδομένων, το πρόγραμμα εμφανίζει. Τα στοιχεία των παραγωγών Το άθροισμα της είσπραξης για τους παραγωγούς των καλλιεργειών 1

και 2. Τη μέση παραγωγή για τους καλλιεργητές της κατηγορίας 3. Ένας καλλιεργητής αποκαλείται “μεγαλοκαλλιεργητής” άν η παραγωγή

του είναι > 4*μο (μέση παραγωγή της κατηγορίας). Να βρεθεί το ποσοστό των μεγαλοκαλλιεργητών για την κατηγορία 3.