THMMY.gr

Μαθήματα Βασικού Κύκλου => Δομημένος Προγραμματισμός => Topic started by: Burlitsa on March 17, 2012, 05:21:54 am



Title: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Burlitsa on March 17, 2012, 05:21:54 am
Eδω μπορειτε να γραφετε αποριες τις οποιες μπορει να εχετε γενικα πανω στον Δομημενο Προγραμματισμο για το πανεπιστημιακο έτος 10/11

Για καθε εργασια καλυτερα θα ηταν να φτιαχνεται χωριστο τοπικ για πιο ευκολη αναζητηση!


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Luffy on June 12, 2012, 18:29:24 pm
Οταν δεσμευεις θεση μνημης με malloc πρεπει παντα να την αποδεσμευεις ?
Ουτως η αλλως η μνημη που δεσμευσες δε θα αποδεσμευτει μετα το τελος του προγραμματος ?


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: c0ndemn3d on June 12, 2012, 18:31:58 pm
Πρέπει να την αποδεσμεύεις πάντα, αλλιώς θα μείνουν στη μνήμη και δεν θα έχεις δυνατότητα να βρεις που είναι αποθηκευμένα αυτά τα δεδομένα.


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Niobe on June 12, 2012, 19:19:45 pm
Code:
fun(int n)
{   
   static x=0;
   x+=n;
   fun(x);
}
οταν θα καλεστει η φαν για δευτερη φορα η στατικ μεταβλητη εχει την αλλαγμενη τιμη η την τιμη 0?
Δηλ. ξερω οταν παιζει να φυγεις απο την φαν για την μαιν πχ οτι κραταει την τιμη αλλα στο recursion ??
οποιος μπορει ας ελεησει...


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Jim D. Ace on June 12, 2012, 19:26:09 pm
νομιζω οτι η αρχικοποιηση χ=0 θα γινει μονο την πρωτη φορα αφου η χ ειναι static

εδιτ: τωρα ειδα οτι ρωτας για την αναδρομη οποτε δεν ξερω αν αυτο που σου ειπα οντως ισχυει


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Exomag on June 12, 2012, 19:35:57 pm
Code:
fun(int n)
{   
   static x=0;
   x+=n;
   fun(x);
}
οταν θα καλεστει η φαν για δευτερη φορα η στατικ μεταβλητη εχει την αλλαγμενη τιμη η την τιμη 0?
Δηλ. ξερω οταν παιζει να φυγεις απο την φαν για την μαιν πχ οτι κραταει την τιμη αλλα στο recursion ??
οποιος μπορει ας ελεησει...
νομιζω οτι η αρχικοποιηση χ=0 θα γινει μονο την πρωτη φορα αφου η χ ειναι static

εδιτ: τωρα ειδα οτι ρωτας για την αναδρομη οποτε δεν ξερω αν αυτο που σου ειπα οντως ισχυει

Στην αναδρομή διατηρείται η τιμή της μιας static μεταβλητής. Το δοκίμασα με ένα πρόχειρο/δοκιμαστικό πρόγραμμα...


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Jim D. Ace on June 12, 2012, 19:49:48 pm
να ρωτησω μπορει καποιος να γραψει τον κωδικα που αφορα το διαβασμα ενος 2δ πινακα χαρακτηρων(strings); ::)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: heavy melon on June 12, 2012, 19:52:17 pm
Code:
fun(int n)
{   
   static x=0;
   x+=n;
   fun(x);
}
οταν θα καλεστει η φαν για δευτερη φορα η στατικ μεταβλητη εχει την αλλαγμενη τιμη η την τιμη 0?
Δηλ. ξερω οταν παιζει να φυγεις απο την φαν για την μαιν πχ οτι κραταει την τιμη αλλα στο recursion ??
οποιος μπορει ας ελεησει...
νομιζω οτι η αρχικοποιηση χ=0 θα γινει μονο την πρωτη φορα αφου η χ ειναι static

εδιτ: τωρα ειδα οτι ρωτας για την αναδρομη οποτε δεν ξερω αν αυτο που σου ειπα οντως ισχυει

Στην αναδρομή διατηρείται η τιμή της μιας static μεταβλητής. Το δοκίμασα με ένα πρόχειρο/δοκιμαστικό πρόγραμμα...


εννοείς ότι θα έχει την αλλαγμένη?όχι 0


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: c0ndemn3d on June 12, 2012, 19:55:20 pm
Btw να ξέρετε ότι μια static μεταβλητή αρχικοποιείται πάντα ως 0 αυτόματα.

@Irida ναι, θα την έχει αλλαγμένη. Αν τρέξεις πχ για n=2 το x θα γίνει στην αρχή 0 και μετά 2 και όταν θα κάνει την πρώτη αναδρομή θα διατηρήσει την τιμή 2 κτλπ.


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Exomag on June 12, 2012, 19:59:43 pm
να ρωτησω μπορει καποιος να γραψει τον κωδικα που αφορα το διαβασμα ενος 2δ πινακα χαρακτηρων(strings); ::)
Code:
char strings[10][100];
for (i=0;i<10;i++)
 scanf("%s",strings[i]);


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Jim D. Ace on June 12, 2012, 20:03:52 pm
thanks :)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: aris giannena on June 13, 2012, 12:55:13 pm
οποτε τυπωνει:

για i=0 : 1 AXCDE
για i=1:  2 ABXDE
για i=2:  3 ABCXE
για i=3:  4 XBCDE
 
Ας επιβεβαιωσει/διορθώσει καποιος

θεμα ιουνιος 2010


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: New_Entry on June 13, 2012, 13:14:02 pm
οποτε τυπωνει:

για i=0 : 1 AXCDE
για i=1:  2 ABXDE
για i=2:  3 ABCXE
για i=3:  4 XBCDE
 
Ας επιβεβαιωσει/διορθώσει καποιος

θεμα ιουνιος 2010

Μήπως μπορεί κάποιος να γράψει τον κώδικα της συνάρτησης fun του θέματος 3 από Ιούνιο του 2010; Γιατί δεν μπορώ να ξεχωρίσω καλά...


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: New_Entry on June 13, 2012, 13:15:09 pm
να ρωτησω μπορει καποιος να γραψει τον κωδικα που αφορα το διαβασμα ενος 2δ πινακα χαρακτηρων(strings); ::)
Code:
char strings[10][100];
for (i=0;i<10;i++)
 scanf("%s",strings[i]);

το '&' δεν χρειάζεται; κι αν όχι, γιατί;;


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Jim D. Ace on June 13, 2012, 13:17:26 pm
να ρωτησω μπορει καποιος να γραψει τον κωδικα που αφορα το διαβασμα ενος 2δ πινακα χαρακτηρων(strings); ::)
Code:
char strings[10][100];
for (i=0;i<10;i++)
 scanf("%s",strings[i]);

το '&' δεν χρειάζεται; κι αν όχι, γιατί;;

δεν χρειαζεται επειδη ο πινακας ειναι απο μονος του pointer σε αντιθεση με μια απλη μεταβλητη
αλλα και να το βαλεις θα λειτουργησει κανονικα...(αν σε μπερδευει)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: aris giannena on June 13, 2012, 13:21:35 pm
int fun(int k)
{
static int x;
if (!k) x=k;
x++;
x%=4;
return x;
}

η main νομιζω φαινεται


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: New_Entry on June 13, 2012, 13:23:31 pm
να ρωτησω μπορει καποιος να γραψει τον κωδικα που αφορα το διαβασμα ενος 2δ πινακα χαρακτηρων(strings); ::)
Code:
char strings[10][100];
for (i=0;i<10;i++)
 scanf("%s",strings[i]);



το '&' δεν χρειάζεται; κι αν όχι, γιατί;;

δεν χρειαζεται επειδη ο πινακας ειναι απο μονος του pointer σε αντιθεση με μια απλη μεταβλητη
αλλα και να το βαλεις θα λειτουργησει κανονικα...(αν σε μπερδευει)


χμμ...σωστά... thanks!  :)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Mr K on June 13, 2012, 14:32:01 pm
οποτε τυπωνει:

για i=0 : 1 AXCDE
για i=1:  2 ABXDE
για i=2:  3 ABCXE
για i=3:  4 XBCDE
 

Ολόσωστος.. ;)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Jim D. Ace on June 13, 2012, 14:41:23 pm
παιδια σε αυτη τη γραμμη
if (!k) x=k;
εννοει οτι αν k!=0 τοτε χ=κ;
βασικα τι σημαινει !k;
το ! δεν ειναι το NOT;


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Mr K on June 13, 2012, 14:52:16 pm
παιδια σε αυτη τη γραμμη
if (!k) x=k;
εννοει οτι αν k!=0 τοτε χ=κ;
βασικα τι σημαινει !k;
το ! δεν ειναι το NOT;

Αυτη η εντολη σημαινει: Άν το (οχι κ) ειναι 1 εκτελεσε την εντολη χ=κ;

Ουσιαστικα εκτελειται μονο μια φορα για κ=0 οπου το !κ=1 και εκτελειται το χ=κ (προκειται για αρχικοποιηση)

Ολες τις υπολοιπες φορες (για κ=1,2,3) το !κ=0 και δεν εκτελειται το if


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Jim D. Ace on June 13, 2012, 14:57:08 pm
thanks


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: SPS on June 13, 2012, 15:52:11 pm
Παιδιά μπορεί κάποιος να μου πει τη λογική στο παραδειγμα για τη realloc απο σημειώσεις κορτέση,σελ 49;
Εκεί που μπαίνει στο for σκαλώνω άσχημα :o


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Jim D. Ace on June 13, 2012, 17:09:15 pm
Παιδιά μπορεί κάποιος να μου πει τη λογική στο παραδειγμα για τη realloc απο σημειώσεις κορτέση,σελ 49;
Εκεί που μπαίνει στο for σκαλώνω άσχημα :o
+1 μηπως αντι να χει 2 for με i θα πρεπε το δευτερο να ναι με κατι αλλο
και αν δεν ισχυει αυτο που λεω μπορει καποιος να εξηγησει τη λογικη του; ::)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Falergon on June 13, 2012, 17:19:30 pm
Για ποιες τιμές του n μπαίνει μέσα στην if( !n)?


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: ThanosAm on June 13, 2012, 17:25:56 pm
Για ποιες τιμές του n μπαίνει μέσα στην if( !n)?
Θα μπει μεσα στη if οταν η συνθηκη ειναι TRUE.
0=FALSE και οτι ειναι διαφορο του μηδεν TRUE.
Αρα εστω n=1 = TRUE ομως !n=NOT TRUE=FALSE αρα δεν θα μπει
Εστω n=0=FALSE !n=NOT FALSE=TRUE αρα για μηδεν θα μπει


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Falergon on June 13, 2012, 17:29:56 pm
thx έτσι νόμιζα και εγώ.


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: pap2 on June 13, 2012, 17:34:41 pm
Για το θέμα Γ) του ιουνίου 2010 βρήκα:

Για i=0: 1 AXCDE
Για I=1: 2 ΑXXDE
Για i=2: 3 AXXXE
Για i=3: 0 ΧΧΧΧΕ

ποιος θα μας διαφωτήσει????


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Jim D. Ace on June 13, 2012, 17:42:16 pm
Για το θέμα Γ) του ιουνίου 2010 βρήκα:

Για i=0: 1 AXCDE
Για I=1: 2 ΑXXDE
Για i=2: 3 AXXXE
Για i=3: 0 ΧΧΧΧΕ

ποιος θα μας διαφωτήσει????
πιο πανω εχει απαντηθει και απ'οτι φαινεται δε συμφωνειτε

οποτε τυπωνει:

για i=0 : 1 AXCDE
για i=1:  2 ABXDE
για i=2:  3 ABCXE
για i=3:  4 XBCDE
 

Ολόσωστος.. ;)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: Exomag on June 13, 2012, 17:42:38 pm
Για το θέμα Γ) του ιουνίου 2010 βρήκα:

Για i=0: 1 AXCDE
Για I=1: 2 ΑXXDE
Για i=2: 3 AXXXE
Για i=3: 0 ΧΧΧΧΕ

ποιος θα μας διαφωτήσει????

Η απάντηση είναι:
Code:
1 AXCDE
2 ABXDE
3 ABCXE
0 XBCDE

Μη ξεχνάς ότι το string γίνεται "ABCDE" σε κάθε for loop...


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 11-12
Post by: pap2 on June 13, 2012, 17:47:43 pm
thx
επίσης μια ακόμα ερώτηση:
στα θέματα του Σεπτεμβρίου 2010 στο 1ο θέμα η δεύτερη ερώτηση (Ποια η σημασία της οργάνωσης των πληροφοριών (αξιοποίησης των δομών δεδομένων) στον δομημένο προγραμματσμό?
ποιες οι κυριότερες δομές δεδομένων? Τι είναι και πως είναι οργανωμένες οι δομές Λίστας?)) Που είναι η θεωρία για αυτά γιατί στο φυλλάδιο του πάγκαλου δεν βρίσκω κάτι σχετικό....