THMMY.gr

Μαθήματα Βασικού Κύκλου => Δομημένος Προγραμματισμός => Topic started by: billakos on February 27, 2011, 18:45:45 pm



Title: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: billakos on February 27, 2011, 18:45:45 pm
Eδω μπορειτε να γραφετε αποριες τις οποιες μπορει να εχετε γενικα πανω στον Δομημενο Προγραμματισμο για το πανεπιστημιακο έτος 10/11

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


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: teslaaaa on June 21, 2011, 18:37:45 pm
μηπως μπορει να με βοηθησει καποιος στην κατανοηση του παρακατω κομματιου κωδικα?
ειναι απο τη λυση του κορτεση,εργασια Ε..

for(i=0;i<n-1;i++){
    for(j=i+1;j<n;j++){
      d=sqrt(pow(x-x[j],2)+pow(y-y[j],2));
      if(fl){
   mind=d;
   *k=i;
   *m=j;
   fl=0;


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: ValmadiaN on June 21, 2011, 19:21:09 pm
μηπως μπορει να με βοηθησει καποιος στην κατανοηση του παρακατω κομματιου κωδικα?
ειναι απο τη λυση του κορτεση,εργασια Ε..

for(i=0;i<n-1;i++){
    for(j=i+1;j<n;j++){
      d=sqrt(pow(x-x[j],2)+pow(y-y[j],2));
      if(fl){
   mind=d;
   *k=i;
   *m=j;
   fl=0;
Αυτο το κομματι βρισκεται στην συναρτηση find_pair αν δεν κανω λαθος.
Προσπαθει να υπολογισει την ελαχιστη αποσταση μεταξυ των πυλωνων.
Στην πρωτη επαναληψη (i=0 j=1) θα υπολογιστει το d κι επειδη fl=1
(το θετει ετσι στην αρχη της συναρτησης) θα μπει μεσα στο if και θα εχω mind=d.
Σε ολες τις υπολοιπες επαναληψεις, μιας και fl=0 αυτο το κομματι του κωδικα δεν
θα εκτελεστει ξανα.Αυτο που κανει ουσιαστικα ειναι να αρχικοποιει την ελαχιστη αποσταση
(mind).Οπως για παραδειγμα στο πρωτο εξαμηνο οταν θελαμε να βρουμε την μεγιστη τιμη ενος
πινακα Α γραφαμε max=A[0] και μετα ξεκινουσαμε το for.
Ελπιζω να βοηθησα!  8))


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: teslaaaa on June 21, 2011, 19:38:18 pm
μηπως μπορει να με βοηθησει καποιος στην κατανοηση του παρακατω κομματιου κωδικα?
ειναι απο τη λυση του κορτεση,εργασια Ε..

for(i=0;i<n-1;i++){
    for(j=i+1;j<n;j++){
      d=sqrt(pow(x-x[j],2)+pow(y-y[j],2));
      if(fl){
   mind=d;
   *k=i;
   *m=j;
   fl=0;
Αυτο το κομματι βρισκεται στην συναρτηση find_pair αν δεν κανω λαθος.
Προσπαθει να υπολογισει την ελαχιστη αποσταση μεταξυ των πυλωνων.
Στην πρωτη επαναληψη (i=0 j=1) θα υπολογιστει το d κι επειδη fl=1
(το θετει ετσι στην αρχη της συναρτησης) θα μπει μεσα στο if και θα εχω mind=d.
Σε ολες τις υπολοιπες επαναληψεις, μιας και fl=0 αυτο το κομματι του κωδικα δεν
θα εκτελεστει ξανα.Αυτο που κανει ουσιαστικα ειναι να αρχικοποιει την ελαχιστη αποσταση
(mind).Οπως για παραδειγμα στο πρωτο εξαμηνο οταν θελαμε να βρουμε την μεγιστη τιμη ενος
πινακα Α γραφαμε max=A[0] και μετα ξεκινουσαμε το for.
Ελπιζω να βοηθησα!  8))
ευχαριστω για τη βοηθεια! ;)
αν και αυτο που δεν καταλαβα ουσιαστικα ειναι γιατι ξεκιναει ετσι : for(j=i+1;j<n;j++) στον εσωτερικο βροχο και τι ακριβως καταχωρει στις μεταβλητες k,m (περα απο το οτι ειναι pointers :P)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: ValmadiaN on June 21, 2011, 19:51:40 pm
μηπως μπορει να με βοηθησει καποιος στην κατανοηση του παρακατω κομματιου κωδικα?
ειναι απο τη λυση του κορτεση,εργασια Ε..

for(i=0;i<n-1;i++){
    for(j=i+1;j<n;j++){
      d=sqrt(pow(x-x[j],2)+pow(y-y[j],2));
      if(fl){
   mind=d;
   *k=i;
   *m=j;
   fl=0;
Αυτο το κομματι βρισκεται στην συναρτηση find_pair αν δεν κανω λαθος.
Προσπαθει να υπολογισει την ελαχιστη αποσταση μεταξυ των πυλωνων.
Στην πρωτη επαναληψη (i=0 j=1) θα υπολογιστει το d κι επειδη fl=1
(το θετει ετσι στην αρχη της συναρτησης) θα μπει μεσα στο if και θα εχω mind=d.
Σε ολες τις υπολοιπες επαναληψεις, μιας και fl=0 αυτο το κομματι του κωδικα δεν
θα εκτελεστει ξανα.Αυτο που κανει ουσιαστικα ειναι να αρχικοποιει την ελαχιστη αποσταση
(mind).Οπως για παραδειγμα στο πρωτο εξαμηνο οταν θελαμε να βρουμε την μεγιστη τιμη ενος
πινακα Α γραφαμε max=A[0] και μετα ξεκινουσαμε το for.
Ελπιζω να βοηθησα!  8))
ευχαριστω για τη βοηθεια! ;)
αν και αυτο που δεν καταλαβα ουσιαστικα ειναι γιατι ξεκιναει ετσι : for(j=i+1;j<n;j++) στον εσωτερικο βροχο και τι ακριβως καταχωρει στις μεταβλητες k,m (περα απο το οτι ειναι pointers :P)
Ξεκιναει με j=i+1 για να μην υπαρχει η περιπτωση να ειναι i=j γιατι τοτε θα υπολογισει την αποσταση
(x-x[j])^2+(y-y[j])^2
που ειναι μηδεν και δεν εχει νοημα.
Τωρα στις μεταβλητες k και m κραταει τις θεσεις των πυλωνων μεταξυ τον οποιων η αποσταση γινεται ελαχιστη.
(για να ξερει μετα οτι αυτους τους πυλωνες πρεπει να αντικαταστησει).
Τα k και m ειναι pointers για να κρατησουν τις τιμες τους και μετα το τελος της συναρτησης ωστε να γινει
χρηση τους στην main.


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: teslaaaa on June 21, 2011, 19:56:19 pm
μηπως μπορει να με βοηθησει καποιος στην κατανοηση του παρακατω κομματιου κωδικα?
ειναι απο τη λυση του κορτεση,εργασια Ε..

for(i=0;i<n-1;i++){
    for(j=i+1;j<n;j++){
      d=sqrt(pow(x-x[j],2)+pow(y-y[j],2));
      if(fl){
   mind=d;
   *k=i;
   *m=j;
   fl=0;
Αυτο το κομματι βρισκεται στην συναρτηση find_pair αν δεν κανω λαθος.
Προσπαθει να υπολογισει την ελαχιστη αποσταση μεταξυ των πυλωνων.
Στην πρωτη επαναληψη (i=0 j=1) θα υπολογιστει το d κι επειδη fl=1
(το θετει ετσι στην αρχη της συναρτησης) θα μπει μεσα στο if και θα εχω mind=d.
Σε ολες τις υπολοιπες επαναληψεις, μιας και fl=0 αυτο το κομματι του κωδικα δεν
θα εκτελεστει ξανα.Αυτο που κανει ουσιαστικα ειναι να αρχικοποιει την ελαχιστη αποσταση
(mind).Οπως για παραδειγμα στο πρωτο εξαμηνο οταν θελαμε να βρουμε την μεγιστη τιμη ενος
πινακα Α γραφαμε max=A[0] και μετα ξεκινουσαμε το for.
Ελπιζω να βοηθησα!  8))
ευχαριστω για τη βοηθεια! ;)
αν και αυτο που δεν καταλαβα ουσιαστικα ειναι γιατι ξεκιναει ετσι : for(j=i+1;j<n;j++) στον εσωτερικο βροχο και τι ακριβως καταχωρει στις μεταβλητες k,m (περα απο το οτι ειναι pointers :P)
Ξεκιναει με j=i+1 για να μην υπαρχει η περιπτωση να ειναι i=j γιατι τοτε θα υπολογισει την αποσταση
(x-x)^2+(y-y)^2
που ειναι μηδεν και δεν εχει νοημα.
Τωρα στις μεταβλητες k και m κραταει τις θεσεις των πυλωνων μεταξυ τον οποιων η αποσταση γινεται ελαχιστη.
(για να ξερει μετα οτι αυτους τους πυλωνες πρεπει να αντικαταστησει).
και εγω ετσι το σκεφτηκα αλλα δεν ημουν σιγουρη...οταν λες θεση φανταζομαι δεν εννοεις συντεταγμενες?γιατι τοτε θα χρειαζοταν 2 μεταβλητες για τον καθε πυλωνα.. μηπως εννοεις τον αυξοντα αριθμο του καθε πυλωνα η κατι τετοιο?


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: ValmadiaN on June 21, 2011, 19:58:53 pm
Ναι τον αυξοντα αριθμο καθε πυλωνα εννοουσα οχι την θεση,
γιατι οπως λες για την θεση (συντεταγμενες) θα χρειαζοταν 4
μεταβλητες (2 για καθε πυλωνα).


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: teslaaaa on June 21, 2011, 20:26:22 pm
thanx a lot! :)
και μια τελευταια απορια! :P
για να καταχωρησουμε τα i και j στις μεταβλητες k και m πρεπει να εχουμε ορισει και πινακα με τον αυξοντα αριθμο καθε πυλωνα η αυτο δεν ειναι απαραιτητο?


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: ValmadiaN on June 21, 2011, 21:13:45 pm
thanx a lot! :)
και μια τελευταια απορια! :P
για να καταχωρησουμε τα i και j στις μεταβλητες k και m πρεπει να εχουμε ορισει και πινακα με τον αυξοντα αριθμο καθε πυλωνα η αυτο δεν ειναι απαραιτητο?
Στο προγραμμα υπαρχουν οι πινακες x[] και y[] στους οποιους ειναι αποθηκευμενες
οι συντεταγμενες των πυλωνων.Αυτο απο μονο του οριζει το αυξοντα αριθμο για καθε πυλωνα ως εξης:
Ο πυλωνας με συντεταγμενες x[0],y[0] εχει αυξον αριθμο 0
Ο πυλωνας με συντεταγμενες x[1],y[1] εχει αυξον αριθμο 1
Ο πυλωνας με συντεταγμενες x[2],y[2] εχει αυξον αριθμο 2 κτλ κτλ.
οταν για παραδειγμα θα εχεις *k=3 και *m=2 (εστω οτι ετυχαν αυτα τα νουμερα)
τοτε θα ξερεις οτι η ελαχιστη αποσταση ειναι αυτη μεταξυ των πυλωνων 3 και 2
οι συντεταγμενες των οποιων ειναι x[3],y[3] και x[2],y[2] αντιστοιχα.
Ουσιαστικα δηλαδη ο αυξον αριθμος αναφερεται στη θεση που εχει καθε πυλωνας στους πινακες των
συντεταγμενων.


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Ναταλία on June 21, 2011, 22:28:33 pm
Να ρωτησω κατι και γω..
ειδα το εξης στη δηλωση μεταβλητων:

int t[]=(3,5,7);

αυτο σημαινει οτι: t[0]=3 , t[1]=5, t[2]=7 ?
το βαζω στον compiler και κολλαει!!  :-\


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: ValmadiaN on June 21, 2011, 22:31:49 pm
Να ρωτησω κατι και γω..
ειδα το εξης στη δηλωση μεταβλητων:

int t[]=(3,5,7);

αυτο σημαινει οτι: t[0]=3 , t[1]=5, t[2]=7 ?
το βαζω στον compiler και κολλαει!!  :-\
Ναι αυτο σημαινει.
Νομιζω θελει να βαλεις
int t[]={3,5,7};
Δηλαδη με αγκυστρα οχι παρενθεσεις.


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Ναταλία on June 21, 2011, 22:33:47 pm
Να ρωτησω κατι και γω..
ειδα το εξης στη δηλωση μεταβλητων:

int t[]=(3,5,7);

αυτο σημαινει οτι: t[0]=3 , t[1]=5, t[2]=7 ?
το βαζω στον compiler και κολλαει!!  :-\
Ναι αυτο σημαινει.
Νομιζω θελει να βαλεις
int t[]={3,5,7};
Δηλαδη με αγκυστρα οχι παρενθεσεις.

σε ευχαριστω πολυυυ!!  ;D


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Ναταλία on June 22, 2011, 00:31:51 am
κατι ακομα...
ελυσε κανενας το θεμα με τις αντιστασεις και τα V, I κτλ του ιουνιου 2010?
πως θα βρουμε ποια ειναι η συνδεσμολογια??  :-\


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Silvershot on June 22, 2011, 00:45:05 am
κατι ακομα...
ελυσε κανενας το θεμα με τις αντιστασεις και τα V, I κτλ του ιουνιου 2010?
πως θα βρουμε ποια ειναι η συνδεσμολογια??  :-\

Rολ=V/I ( V,Ι γνωστα ). Μετα συγκρινεις το Rολ με το την τιμη R της αντιστασης του αντιστιχου κουτιου και βλεπεις αν Rολ>R τοτε ειναι σε σειρα, αν Rολ<R τοτε παραλληλα και αν Rολ=R τοτε μπορει να ειναι και τα 2 οποτε απαντας για το πληθος οτι περιεχει 1. Στις 2 πρωτες περιπτωσεις βρισκεις την ολικη και μετα αναλογα αν ειναι σε σειρα παιρνεις N=Rολ/R ενω παραλληλα N=R/Rολ :)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Ναταλία on June 22, 2011, 01:10:41 am
κατι ακομα...
ελυσε κανενας το θεμα με τις αντιστασεις και τα V, I κτλ του ιουνιου 2010?
πως θα βρουμε ποια ειναι η συνδεσμολογια??  :-\

Rολ=V/I ( V,Ι γνωστα ). Μετα συγκρινεις το Rολ με το την τιμη R της αντιστασης του αντιστιχου κουτιου και βλεπεις αν Rολ>R τοτε ειναι σε σειρα, αν Rολ<R τοτε παραλληλα και αν Rολ=R τοτε μπορει να ειναι και τα 2 οποτε απαντας για το πληθος οτι περιεχει 1. Στις 2 πρωτες περιπτωσεις βρισκεις την ολικη και μετα αναλογα αν ειναι σε σειρα παιρνεις N=Rολ/R ενω παραλληλα N=R/Rολ :)

ναι οντως!!! φχαριστωω!!!  ;D


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Silvershot on June 22, 2011, 01:42:31 am
Παιδια λιγη βοηθεια με τo θεμα 2ο Ιουνιου 10. Αν καποιος ασχοληθηκε και την εκανε ας μοιραστει τον κωδικα, θα το εκτιμουσα πολυ!


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: titan1 on June 22, 2011, 02:09:32 am
Γεια σας,
Στα θέματα Σεπτεμβρίου 2010 στο 3ο θέμα λέει: «Να γράψτε στο εσωτερικό πλαισίου και στη συνέχεια να δικαιολογήσετε την εκτύπωση του πιο κάτω προγράμματος»
Τι εννοεί με τη φράση «στο εσωτερικό πλαισίου»;


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Nerevar on June 22, 2011, 02:31:40 am
https://www.thmmy.gr/smf/index.php?topic=44641.210 (https://www.thmmy.gr/smf/index.php?topic=44641.210)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: teslaaaa on June 22, 2011, 13:09:17 pm
θεμα 1 σεπτ 2010 ξερει κανεις αν πρεπει να ορισουμε μια δομη που να περιεχει εμβαδο,συντελστες για υπολογισμο φορου  κλπ,να ορισουμε εναν πινακα απο τετοιες δομες οπου καθε στοιχειο θα ειναι και ενα ακινητο-δομη και μετα να περασουμε τον πινακα αυτον μεσα στη συναρτηση?στην περιπτωση αυτη η δομη που θα ορισουμε πανω πανω δεν θεωρειται γενικη μεταβλητη?οποτε μηπως πρπει να ορισουμε 2(πανομοιοτυπες ουσιαστικα) δομες?


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: zioy on June 22, 2011, 13:49:57 pm
int fun(int n,int k);
int main ()
 {
  int i,k=7;
  for (i=0;i<4;i++)
  printf("%d\n",fun(i,k));
 }
 int fun(int n,int k)
 {static int m,t[3];
  if(!n){
     m=n;
     t[0]=t[1]=t[2]=n;
  }
  switch(m){
     case 1:
          m=(k>3)+3;
          return m;
     case 6:
          t[1]=k;
          m+=*(t+1);
     case 4:
          m+=2;
          break;
     default:
          m%=5;
          m++;
     }
     return m;
  }                 
                     



αν μπορει καποιος να το λυσει!!


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Ναταλία on June 22, 2011, 14:38:58 pm
θεμα 1 σεπτ 2010 ξερει κανεις αν πρεπει να ορισουμε μια δομη που να περιεχει εμβαδο,συντελστες για υπολογισμο φορου  κλπ,να ορισουμε εναν πινακα απο τετοιες δομες οπου καθε στοιχειο θα ειναι και ενα ακινητο-δομη και μετα να περασουμε τον πινακα αυτον μεσα στη συναρτηση?στην περιπτωση αυτη η δομη που θα ορισουμε πανω πανω δεν θεωρειται γενικη μεταβλητη?οποτε μηπως πρπει να ορισουμε 2(πανομοιοτυπες ουσιαστικα) δομες?

δεν νομιζω οτι χρειαζονται δομες!  :???:


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: teslaaaa on June 22, 2011, 14:49:36 pm
ναι το καταλαβα οτι τελικα δεν χρειαζονται  :P ::)


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: johnvoyager on June 22, 2011, 14:52:02 pm
θεμα 1 σεπτ 2010 ξερει κανεις αν πρεπει να ορισουμε μια δομη που να περιεχει εμβαδο,συντελστες για υπολογισμο φορου  κλπ,να ορισουμε εναν πινακα απο τετοιες δομες οπου καθε στοιχειο θα ειναι και ενα ακινητο-δομη και μετα να περασουμε τον πινακα αυτον μεσα στη συναρτηση?στην περιπτωση αυτη η δομη που θα ορισουμε πανω πανω δεν θεωρειται γενικη μεταβλητη?οποτε μηπως πρπει να ορισουμε 2(πανομοιοτυπες ουσιαστικα) δομες?

Δες πως την έλυσα εγω ;)

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
void tax(int Emv,int category,float t,float e,int *ar_dosi,float *dosi);

void main(){
   int i,Emv,categ,ar_dos;
   float t,e,dosi,foros,s_foros=0;
   printf("Dwse tous suntelestes t kai e");
   scanf("%f %f",&t,&e);
   for(i=0;i<100;i++){
      printf("Dwse thn kathgoria tou %dou akinhtou",i+1);
      printf("\n1 gia diamerisma,2 gia monokatoikia");
      scanf("%d",&categ);
      printf("\nDwse to emvado:");
      scanf("%d",&Emv);
      tax(Emv,categ,t,e,&ar_dos,&dosi);
      foros=ar_dos*dosi;
      printf("\nAkinito %d :\nDosi=%f\nArithmos dosewn=%d\nSunolikos foros=%f",i+1,dosi,ar_dos,foros);
      s_foros+=foros;
   }
   printf("\n\nSunolikos foros apo ta 100 akinhta:%f",s_foros);
   getch();
}

void tax(int Emv,int category,float t,float e,int *ar_dosi,float *dosi){
   float foRoS;
   foRoS=Emv*t*e;
   if(category==2)
      foRoS+=(0.1)*(Emv*t*e);
   if(foRoS>100){
      *ar_dosi=3;
      *dosi=foRoS/3;
   }
   else{
      *ar_dosi=1;
      *dosi=foRoS;
   }
}


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: eleni on June 22, 2011, 14:59:13 pm
  m=(k>3)+3;
πως μεταφράζεται ακριβώς αυτή η έκφραση ας βοηθήσει κάποιος!!! :(



Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Nerevar on June 22, 2011, 15:04:31 pm
Aν k>3 (true) τοτε m=1+3=4
Αν k<3 (false) τοτε m=0+3=3


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: eleni on June 22, 2011, 15:14:16 pm
Aν k>3 (true) τοτε m=1+3=4
Αν k<3 (false) τοτε m=0+3=3

σε ευχαριστώ...


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Laza G on June 22, 2011, 16:30:29 pm
Στο πρόγραμμα με το τί εμφανίζει ουστιαστικά σε αυτό θέλει πολύ προσοχή..
Στο αποτέλεσμα τον λογικών συνθηκών που επιστρέφουν 0 ή 1..


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: teslaaaa on June 22, 2011, 18:27:50 pm
οποιος μπορει να καταλαβει τι γραφει θεμα 3ο ιουνιος 2010 στις πρωτες γραμμες της fun ας βοηθησει λιγο!δεν μπορω να δω καλα τον κωδικα! :P


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Angel C. on June 22, 2011, 18:35:07 pm
οποιος μπορει να καταλαβει τι γραφει θεμα 3ο ιουνιος 2010 στις πρωτες γραμμες της fun ας βοηθησει λιγο!δεν μπορω να δω καλα τον κωδικα! :P

Νομίζω αυτό:


#include<stdio.h>

int fun(int k)
{
   static int x;
   if(!k) x=k;
   x++;
   x%=4;
   return x;
}



Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: orestis-12 on June 22, 2011, 18:40:21 pm
παιδια η εντολη if(!n) τι κανει??


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: teslaaaa on June 22, 2011, 18:42:53 pm
οποιος μπορει να καταλαβει τι γραφει θεμα 3ο ιουνιος 2010 στις πρωτες γραμμες της fun ας βοηθησει λιγο!δεν μπορω να δω καλα τον κωδικα! :P

Νομίζω αυτό:


#include<stdio.h>

int fun(int k)
{
   static int x;
   if(!k) x=k;
   x++;
   x%=4;
   return x;
}


thanks! ακομα και το x για  z το περνουσα! :P


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: johnvoyager on June 22, 2011, 18:48:03 pm
Παιδια λιγη βοηθεια με τo θεμα 2ο Ιουνιου 10. Αν καποιος ασχοληθηκε και την εκανε ας μοιραστει τον κωδικα, θα το εκτιμουσα πολυ!

αν λες εκεινη με το αρχειο earthquake εχω ανεβαση λυση εδω:https://www.thmmy.gr/smf/index.php?topic=44641.195


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Faros on June 22, 2011, 18:54:26 pm
παιδια η εντολη if(!n) τι κανει??

αν το n=0


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Bazinga on September 19, 2011, 16:40:34 pm
m+=*(t+1);

ας με διαφωτισει καποιος για αυτο.


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Faros on September 19, 2011, 17:56:59 pm
m+=*(t+1);

ας με διαφωτισει καποιος για αυτο.

το *(t+1) ειναι το στοιχειο που βρισκετε κατα 1*sizeof(t) bytes δεξια της θεσης μνημης που δειχνει ο pointer t

πρακτικα ειναι σαν να λες t[1]

συνολικα : m=m+t[1]



Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: nvog1993 on February 22, 2012, 21:02:32 pm
3o θεμα σεπτεμβριος 2010 ομαδα Α ας ανεβασει καποιος τισ λυσεις που βρηκε!


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: nohponex on February 22, 2012, 23:47:49 pm
3o θεμα σεπτεμβριος 2010 ομαδα Α ας ανεβασει καποιος τισ λυσεις που βρηκε!
1 2 3 4


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: nvog1993 on February 22, 2012, 23:49:41 pm
λολ


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: nvog1993 on February 23, 2012, 00:04:08 am
1 για το 3 θεμα 2010 σεπτεμβρη κ  1 ΑΧCDE για το 3 θεμα 2010 ιουνιο εχω βρει!ας επιβεβαιωσει καποιος που τα ελυσε!
4                                                      2 AXXDE
6                                                      3 AXXXE
15                                                    0 XXXXE


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: manina on February 23, 2012, 00:33:40 am
Τα αριστερά τα βρήκα κι εγώ έτσι. Στο άλλο βρήκα 1AXCDE
                                                                           2ABXDE
                                                                           3ABCXE
                                                                           0XBCDE
Aν ψάξεις κάπου στο φόρουμ, νομίζω στο "πως γράψατε" της αντίστοιχης χρονιάς ή σε ενα από όλα τα "γενικές απορίες κλπ" υπάρχει και η επεξήγηση από κάποιους.


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: nvog1993 on February 23, 2012, 00:55:39 am
εχω κανει το λαθος κ αποθηκευω καθε φορα την αλλαγη στο στρινγκ ενω δεν πρεπει ε?σε ευχαριστω!το πρωτο το δουλεψες?


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: nvog1993 on February 23, 2012, 00:58:00 am
γραψε λαθος-δεν ειδα πως ειπεσ οκ για το πρωτο!


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: SPRAS on February 23, 2012, 09:06:20 am
παίδες στο 3ο Θέμα του Ιουνίου 2010 το σωστό είναι:AXCDE
                                                                            AXXDE
                                                                            AXXXE
                                                                            XXXXE.
Οι αλλαγές αποθηκεύονται στο string. Για να έμενε το string ως είχε σε κάθε i του for θα έπρεπε να δηλωνόταν το string κάθε φορά μέσα στο loop, δηλαδή:for (...)
                                          {   char = {...}
                                              ...


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: 8ball on February 23, 2012, 10:52:12 am
1 2 3 4

wtf?1 4 6 15 εχω εγω.Επιτηδες το γραψες?


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: chrimour on February 23, 2012, 11:56:10 am
κανενας για θεμα 2 σεπτεμβριου 2010; καταφερα να δημιουργησω τους πινακες fAF και fBF καπως ετσι:

void main(){
........

for (i=0; i<N; i++)
    for (j=0; j<M; j++)
       if (AF==BF[j])
            c++;
fAF=(float *)malloc((N-c)*sizeof(float));
fBF=(float *)malloc((M-c)*sizeof(float));

το μονο που με δυσκολευει ειναι να τους γεμισω με τις συχνοτητες AF και BF αντιστοιχα που δεν υπαρχουν και στους δυο πινακες.. εχω μπλοκαρει και δεν ξερω πως να το κανω.. καποιος που να το ελυσε;


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: SPRAS on February 23, 2012, 12:16:32 pm
     int c = 0;
     for (i=0;i<N;i++)
     {
         int vrethike = 0;
         for (j=0;j<M;j++)
         {
             if(AF==BF[j])
             {
                vrethike = 1;
                break;       
             }         
         } 
         if(!vrethike) {
            fAF[c]=AF;
            c++;
        }
    }

και αντίστοιχα και για τον fBf...


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: virts11 on February 23, 2012, 20:05:03 pm
borei kaneis na me diafwtisei?? pws akrivws doulevei h fseek? an 8elw na paw stn arxi tou arxeiou kanw : fseek(fp,0,SEEK_SET);
otan 8elw na metakini8w pros ta katw kanw fseek(fp, -size, SEEK_CUR) kai pros ta panw fseek(fp, size, SEEK_CUR)??


Title: Re: [Δομημένος Πρ.] Απορίες σε ασκήσεις 10/11
Post by: Terzos on February 24, 2012, 03:46:07 am
borei kaneis na me diafwtisei?? pws akrivws doulevei h fseek? an 8elw na paw stn arxi tou arxeiou kanw : fseek(fp,0,SEEK_SET);
otan 8elw na metakini8w pros ta katw kanw fseek(fp, -size, SEEK_CUR) kai pros ta panw fseek(fp, size, SEEK_CUR)??

Από αυτά που διάβασα μόλις τώρα αυτό κατάλαβα και γω, αν και για το πρώτο μπορείς λογικά να χρησιμοποιήσεις και το rewind. Αλλά δν τολμώ να τα εφαρμόσω ακόμα στην πράξη... :P