Σημαντικά Συμπεράσματα - Διαπιστώσεις για Ασκήσεις

Ξεκίνησε από papaluk, 31 Μαΐου 2009, 01:18:29 ΜΜ

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

papaluk

1. Στην Pascal δεν ορίζεται πολλαπλή επιλογή όπως στη ΓΛΩΣΣΑ αλλά στη θέση της έχουμε εμφωλευμένες
2. Όταν χρησιμοποιούμε μια if, βάζουμε ερωτηματικό μόνο στην τελευταία εντολή
πχ
if S1 then
entA
else
  if S2
  then entB
  else entC;
Σε περίπτωση που μεταξύ μιας then και else έχουμε παραπάνω από μια εντολές τότε
χρησιμοποιούμε begin - end, βάζουμε ερωτηματικό σε κάθε ενδιάμεση εντολή, ενώ ερωτηματικό βάζουμε μόνο στο τελευταίο end εφόσον έχει και αν δεν έχει στην τελευταία εντολή όπως παραπάνω

πχ
if S1 then
begin
   ent1;
   ent2;
  end
  else if S2 then
      ent3
       else if S3 then
         begin
           ent4;
           ent5;
         end;
Έβαλα στο τελευταίο end ; διότι με αυτό κλείνει η If και δεν έβαλα στο ent3  ; διότι δεν είναι η τελευταία εντολή της if και δεν εμπεριέχεται σε begin - end.

Άρα στη σελίδα 93, παράδειγμα α έπρεπε να υπάρχει ; μετά το α5 ;

3. Στα υποπρογραμματα που είναι πολύ πιθανή η άσκηση να γίνει ο πίνακας τιμών πρέπει να τονιστεί ότι σε συνάρτηση στέλνω τις πραγματικές, στις τυπικές και αυτές δεν επιστρέφουν πάλι πίσω την τιμή τους. Ενώ σε Διαδικασία (σε αντίθεση με ότι γίνεται σε ΓΛΩΣΣΑ) όταν τις ορίσω χωρίς var, δηλαδή παράμετροι τιμής δεν επιστρέφουν την τιμή τους, ενώ αν τις ορίσω με var στην επικεφαλίδα διαδικασίας, οπότε είναι παράμετροι μεταβλητής επιστρέφουν την τιμή τους.
Αυτό πρέπει να είναι ξεκάθαρο και για ασκήσεις που θα ζητηθεί υποπρόγραμμα. Προφανώς σε ψευδογλώσσα δεν ορίζονται τα υποπρογραμματα, αλλά προσοσχή σε αντίθεση με ΓΛΩΣΣΑ τα ορίζει το σχολικό με ειδικό σχήμα στο διάγραμμα ροής

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

5. Αν θέλετε να χρησιμοποιήσετε επανάληψη για προκαθορισμένο αριθμό, αλλά με βήμα διαφορετικό από 1 ή -1 τότε δεν μπορείτε να χρησιμοποιήσετε την for , λλά αναγκαστικά την while ή repeat.

6. Στα πρώτα θέματα μετατροπές από while se repeat κτλ δεν θα ήταν κακό θέμα εφόσον είναι η πρώτη χρονιά μαθήματος

7. προσοχή σε ασκήσεις με την write όπου ορίζεις διάστημα για το μήνυμα και δεκαδικό μέρος

Καλή επιτυχία σε όλους τους μαθητές

xryka

Σχετικά με τα υποπρογράμματα σε λογικό διάγραμμα το βιβλίο απλα δέιχνει το σχήμα,παράδειγμα δεν υπάρχει για το πως ακριβώς χρησιμοποιείται... είναι παράλογο να ζητήσουν κάτι τέτοιο... βέβαια άβυσσος η ψυχή της επιτροπής......

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

Καλή επιτυχία σε όλους


papaluk

Θεωρώ ότι όσοι μαθητές διάβαζαν με σκοπό να δώσουν εξετάσεις μπορούν να ανταποκριθούν σε θέματα όπως το 3ο περσινό στο ενιαίο, αλλά το ποσοστό αυτών που διάβαζαν για να δώσουν εξετάσεις είναι 5 με 10 %. Θεωρώ όμως ότι πολλοί μαθητές από το ενιαίο που με τη βάση του 10 δεν τα καταφέρνουν, ίσως επειδή στα επαγγελματικά τα μαθήματα είναι λιγότερα, τα μαθηματικά ευκολότερα και από τα μαθηματικά της γενικής θα κατάφερναν σίγουρα το 10..
Πάντως σίγουρα τα πράγματα ειναι πολύ καλύτερα σε σχέση με παλιά όπου έμπαινε σε ΤΕΙ όποιος παπαγάλιζε καλύτερα τα δίκτυα και κατάφερνε να πάρει ένα 10 στην έκθεση..μαθηματικά όλοι γράφουν ένα 15 με τόσο εύκολα θέματα.
Υπομονή, την Τρίτη θα δούμε τι σκέφτεται η επιτροπή και μακάρι τα θέματα να είναι όπως και στα δίκτυα!!

Mariosxania


iliasthes

Οι μετατροπές από while σε repeat και από case σε if και το αντίστροφο είναι καλά θέματα. Επίσης ωραίες ασκησούλες είναι ο προσδιορισμός του πλήθους των επαναλήψεων ή των τιμών που παίρνουν κάποιες μεταβλητές κατά την εκτέλεση ενός προγράμματος.Μετατροπή από ψευδοκώδικα σε λογικό διάγραμμα ή πρόγραμμα σε pascal κλπ.

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

DeiDei

Στο διαγωνισμα 4 Θεμα 2 ,β

program table (output);
     var i:integer;
     begin
       writeln(‘Number’:10, ‘square’:10, ‘cube’:10);
       for i:=1 to 20 do
          writeln(i:10, sqr(i):10*sqr(i):10);
     end.

Δν την νιωθω την ασκηση, στην εκτελεση πατωνει, για εξηγηστε τι ακριβως παιζετε αν μπορειτε tnx (:

Mariosxania

Δεν βγάζει νόημα μάλλον το τετράγωνο θέλει να βρει.
Τρέξτο έτσι
program table;
var
i:integer;
begin
i:=0  ;
writeln('number':10,'square':10,'cube':10);
for i:=1 to 20 do
writeln(i:10,sqr(i)*sqr(i):10);
readln;
end.

joanna

ναι... τυπογραφικό λάθος. Πάντως αυτό το κομμάτι κώδικα είναι ατόφιο από το βιβλίο.

DeiDei

Πως ακριβως δουλευουν τα MOD k DIV ,το παραδειγμα του βιβλιου με μπερδευει :S

papaluk

χmodκ δίνει το υπόλοιπο της διαίρεσης χ δια κ. τα χ, κ πρέπει να είναι ακέραιοι ενώ στο γενικό λύκειο τα mod και div με αρνητικούς ήταν εκτός ύλης ( ευελπιστώ το ίδιο να ισχύει και σε εσάς.
πχ 6mod2 κάνει 0, διότι η διαίρεση δεν εφήνει υπόλοιπο, ενώ αν είχες 7mod4 τότε το αποτέλεσμα είναι 3, διότι 1*4=4, 2*4=8, άρα ξεπερνας το 7 που διαιρείς συνεπώς κρατάς το 1*4=4 και θέλεις άλλα 3 μέχρι το 7, συνεπώς το υπόλοιπο 3.
χdivκ δίνει το πηλίκο της διαίρεσης χ δια κ. τα χ, κ πρέπει να είναι ακέραιοι
πχ 6div2=3 κάνεις κανονικά τη διαίρεση. αν το αποτέλεσμα δεν βγαίνει ακέραιος αλλά πραγματικός, κρατάς μόνο το ακέραιο μέρος πχ 7div4= 1, 75 εσύ κρατάς το 1 ή 5div45=0,.... άρα κρατάς το 0

DeiDei


xryka

Βρίσκει το i^4 για i απο 1 ως 20, αλλά για να τρέξει σωστά πρέπει το i να δηλωθεί longint..

Παράθεση από: Mariosxania στις 01 Ιουν 2009, 02:59:22 ΠΜ
Δεν βγάζει νόημα μάλλον το τετράγωνο θέλει να βρει.
Τρέξτο έτσι
program table;
var
i:integer;
begin
i:=0  ;
writeln('number':10,'square':10,'cube':10);
for i:=1 to 20 do
writeln(i:10,sqr(i)*sqr(i):10);
readln;
end.