Απορια σε μεταβλητες

Ξεκίνησε από theoni, 09 Μαΐου 2017, 10:22:52 ΠΜ

« προηγούμενο - επόμενο »

theoni

Καλήμερα σας!!!!!μια διευκρίνιση θα ήθελα...εστω οτι έχουμε ένα πρόγραμμα που περιέχει πίνακα με χαρακτήρες και μας ζητάει η άσκηση  να δώσουμε μια αλφαριθμητική μεταβλητή μέσα απο το πρόγραμμα μπορούμε να δώσουμιε μια θέση του πίνακα Α[3] ας πούμε???

Καρκαμάνης Γεώργιος

Καλημέρα.

Εστω ότι έχεις το παρακάτω τμήμα προγράμματος

Πρόγραμμα Π1
Μεταβλητές
Χαρακτήρες: Α[10],Χ

Αρχή

...
Χ <-- Α[3]

Γράψε Α[3]
....

Κάθε στοιχεί του πίνακα Α περιέχει μία αλφαριθμητική τιμή.
Το Χ είναι μια μεταβλητή τύπου χαρακτήρα που δέχεται την αλφαριθμητική τιμή

Λάμπρος Παπαδόπουλος

Αν θέλεις να αποθηκεύσεις στην θέση Α[3] μια αλφαριθμητική τιμή άσχετη με τα υπόλοιπα δεδομένα του πίνακα,
αυτό δεν απαγορεύεται αλλά δεν είναι καλή πρακτική.
Δεν ξέρω αν κατάλαβα καλά τι ρωτάς. Αν γίνεις πιο σαφής ίσως μπορέσουμε να βοηθήσουμε περισσότερο.

Κωστας τζιαννης

ναι μπορεις γιατι το Α[3] ουσιαστικα ειναι αλφαριθμητικη τιμη.ο πινακας χρησιμοποιειται για να μην εχουμε πολλες μεταβλητες.πχ οταν θελουμε να αποθηκευσουμε 100 χαρακτηρες αντι να χουμε 100 αλφαριθμητικες μεταβλητες χ1,χ2,χ3..χ100 φτιαχνουμε εναν αλφαριθμητικο πινακα.σε εναν πινακα για να εχεις προσβαση στα στοιχεια χρησιμοποιεις τις θεσεις του.δλδ το πινακ[1] μπορει να χει το "α" το πινακ[2] το "β" κτλ κτλ. μην σε μπερδευουν οι αριθμοι.αυτοι δειχνουν τη θεση του πινακα απλα.οποτε ειναι σαν να λες πινακ[1]=το στοιχειο στην πρωτη θεση="α" αρα αλφαριθμητικο.πινακ[2]=το στοιχειο στη 2η θεση="β" αρα αλφαριθμητικο.δεν ξερω αν αυτη ηταν η απορια σου ελπιζω να βοηθησα.τωρα για το αν ειναι καλο η κακο να το κανεις αυτο που ρωτας εξαρταται απο την ασκηση.μπορει να ειναι πολυ κακο μπορει και πολυ καλο

theoni

Στο περσυνο διαγωνισμα που ειχε βγαλει το στεκι ειχε εναν αλγοριθμιο με ταξινομηση με επιλογη και απο κατω ενα ερωτημα ελεγε βρες απο το παραπανω τμημα προγραμματος μια αλφαριθμητικη ματαβλητη ο αλγοριθμος ειχε εναν πινακα με αλφαριθμητικα στοιχεια.....η ερωτηση ειναι η εξης αν σαν αλφαριθμηρικη τιμη δωσω το Α[3] ας πουμε ειναι σωστο?????ελπιζω να το εθεσα καλυτερα

Λαμπράκης Μανώλης

Η αλφαρθμητική μεταβλητή στο θέμα αυτό είναι η Τ καθως αποθηκεύει στοιχείο αλφαριθμητικού πίνακα

Κωστας τζιαννης

#6
ναι γινεται να το περασεις

ΠΡΟΓΡΑΜΜΑ οτιναναι
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: α[10], ι
ΑΡΧΗ
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
    α[ι] <- ι
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  ΚΑΛΕΣΕ αα(α[2])
  ΓΡΑΨΕ α[2]
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΔΙΑΔΙΚΑΣΙΑ αα(β)
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: β
ΑΡΧΗ
  β <- 100
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

ΠΡΟΣΟΧΗ!!!!αυτο που δεν γινεται ειναι να εχεις πχ κατι τετοιο

ΠΡΟΓΡΑΜΜΑ οτιναναι2
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: α[10], ι,γ
ΑΡΧΗ
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
    α[ι] <- ι
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  γ<-α[4]
  ΚΑΛΕΣΕ αα(γ)
  ΓΡΑΨΕ α[2]
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΔΙΑΔΙΚΑΣΙΑ αα(α[3])
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: α[3]
ΑΡΧΗ
  α[3] <- 100
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ


theoni

Αυτο λεω αντι την Τ αν καποιος απαντουσε την Α[2] ας πουμε θα ηταν σωστο????

Λαμπράκης Μανώλης

Νομίζω περισσότερο "τεχνικό" είναι το θέμα ... τυπικά η ΜΕΤΑΒΛΗΤΗ αυστηρά είναι το Τ ... τα Α είναι πίνακας ... τώρα εγώ πχ αν ήταν 2 μονάδες θα έκοβα την  μία, θα έπερνα σωστή τη λογική αλλά μάλλον μάθος την εκτέλεση

Καρκαμάνης Γεώργιος

Το Α[2] είναι το 2ο  στοιχείο του πίνακα και οχι μια μεταβλητή, οπότε ή απάντηση είναι λανθασμένη

bagelis

ο πίνακας δεν είναι ένα σύνολο μεταβλητών;

Λάμπρος Παπαδόπουλος

Από το βιβλίο του μαθητή:
"Ο πίνακας είναι μία ομάδα μεταβλητών ιδίου τύπου που αναφέρονται με ένα κοινό όνομα και αποθηκεύονται σε διαδοχικές
θέσεις στη μνήμη."
Άρα το 3ο στοιχείο του πίνακα είναι μια από αυτές τις μεταβλητές.

Κωστας τζιαννης

το Α[2] οπως και το Α[3] κτλ φυσικα ειναι μεταβλητη.αλλιως δεν θα μπορουσες να κανεις εκχωρηση.πχ Α[2]<-10.42

Κωστας τζιαννης

ο λογος τωρα που κατι τετοιο οπως αυτο:

ΠΡΟΓΡΑΜΜΑ οτιναναι2
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: α[10], ι,γ
ΑΡΧΗ
  ΓΙΑ ι ΑΠΟ 1 ΜΕΧΡΙ 10
    α[ι] <- ι
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
  γ<-α[4]
  ΚΑΛΕΣΕ αα(γ)
  ΓΡΑΨΕ α[2]
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΔΙΑΔΙΚΑΣΙΑ αα(α[3])
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: α[3]
ΑΡΧΗ
  α[3] <- 100
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ

δεν επιτρεπεται ειναι επειδη εσυ θες να ορισεις μια μεταβλητη για να βαλεις μια τιμη.η μεταβλητη σου αυτη ειναι το α[3].ναι αλλα αν πας να τη δηλωσεις στις ακεραιες πχ διαβαζεται σαν πινακας 3 θεσεων!!!οποτε απο τη μια εχεις εναν πινακα 3 θεσεων και απο την αλλη μια μεταβλητη αρα ειναι λαθος.ελπιζω να ξεκαθαρισε το θεμα και να λυσες την απορια σου

Καρκαμάνης Γεώργιος

Καλό είναι να κρατάμε μια διαφοροποίηση μεταξύ μεταβλητής και στοιχείου του πίνακα.
Αν αρχίσουμε να καλλιεργούμε την ισότητα μεταξύ των δυο, τοτε θα φτάσουμε στο σημείο που όταν θα πρέπει να διαβαστεί το όνομα ενος ατόμου θα γράφουν οι μαθητές

Διάβασε όνομα[1]
Και θα δηλώνεται ως πίνακας.

Πως θα αντιδρούσαμε σε αυτό;




Κωστας τζιαννης

δεν νομιζω οτι ενα παιδι 18 χρονων ειναι δυσκολο να καταλαβει οτι οταν θες να αποθηκευσεις μια-2 τιμες δεν πρεπει να οριζεις πινακα.εγω καθηγητης δεν ειμαι απλα εχω βοηθησει ατομα στον προγραμματισμο.καποιος που ειναι καθηγητης σε σχολειο η φροντιστηριο ισως να χει συναντησει και τετοια ακραια παραδειγματα.αλλα οταν καποιος δεν καταλαβαινει οτι για μια 2 τιμες δεν χρειαζεται πινακας η γνωμη μου ειναι να μην κατεβει να δωσει πανελληνιες καν.

Λάμπρος Παπαδόπουλος

Παράθεση από: Καρκαμάνης Γεώργιος στις 10 Μαΐου 2017, 09:36:17 ΜΜ
Καλό είναι να κρατάμε μια διαφοροποίηση μεταξύ μεταβλητής και στοιχείου του πίνακα.
Αν αρχίσουμε να καλλιεργούμε την ισότητα μεταξύ των δυο, τοτε θα φτάσουμε στο σημείο που όταν θα πρέπει να διαβαστεί το όνομα ενος ατόμου θα γράφουν οι μαθητές


Διάβασε όνομα[1]
Και θα δηλώνεται ως πίνακας.

Πως θα αντιδρούσαμε σε αυτό;


Καλή ευκαιρία για να υπενθυμίσουμε πότε πρέπει να χρησιμοποιούμε πίνακες!