Title: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 07, 2012, 14:34:59 pm Συζήτηση και απορίες για τη δεύτερη εργασία.
Εκφώνηση της δεύτερης εργασίας στο ethmmy Δίνονται οι συντεταγμένες (xi,yi) n σημείων στα οποία έχουν εγκατασταθεί δέκτες οι οποίοι θα λαμβάνουν ένα σήμα από έναν κεντρικό σταθμό. Για να βρεθεί η θέση του κεντρικού σταθμού βρίσκονται τα δύο σημεία που απέχουν μεταξύ τους τη μεγαλύτερη απόσταση και ως σημείο για την εγκατάσταση του σταθμού επιλέγεται το μέσον της ευθείας που ενώνει τα δύο αυτά σημεία. Επειδή το σήμα που θα φτάνει σε κάθε δέκτη δεν πρέπει να έχει ισχύ μικρότερη από μια ισχύ Pmin πρέπει να υπολογισθεί η ισχύς εκπομπής του κεντρικού σταθμού έτσι ώστε, για όλους τους δέκτες, η ισχύς του σήματος που θα φτάνει σε αυτούς να είναι τουλάχιστον ίση με την Pmin. Η ισχύς του σήματος που φτάνει σε ένα δέκτη δίνεται από τη σχέση P=Ptrans/dis^2 όπου Ptrans η ισχύς με την οποία εκπέμπει ο σταθμός και dis η απόστασή του δέκτη από τον σταθμό εκπομπής. Να γραφεί το πρόγραμμα που να διαβάζει τις συντεταγμένες (xi,yi) των σημείων που είναι εγκατεστημένοι οι δέκτες και τη ελάχιστη ισχύ Pmin με την οποία πρέπει να φτάνει το σήμα σε αυτούς. Το πρόγραμμα να υπολογίζει και να εκτυπώνει τις συντεταγμένες της θέσης που θα εγκατασταθεί ο κεντρικός σταθμός εκπομπής καθώς και την ισχύ με την οποία πρέπει αυτός να εκπέμπει έτσι ώστε όλοι οι δέκτες να δέχονται το σήμα με ισχύ τουλάχιστον ίση με Pmin. Τέλος το πρόγραμμα να τυπώνει, για κάθε δέκτη, την τελική ισχύ του σήματος που θα φτάνει σε αυτόν αφού υπολογισθεί η τελική ισχύς με την οποία θα πρέπει να εκπέμπει ο κεντρικός σταθμός. Σημείωση: Οι συντεταγμένες των σημείων ορίζονται ως προς ένα τοπικό σύστημα καρτεσιανών συντεταγμένων Για τον αριθμό των σημείων να ορισθεί μια μέγιστη δυνατή τιμή. Ο πραγματικός αριθμός να διαβάζεται από το πληκτρολόγιο και να γίνεται έλεγχος αν αυτός ξεπερνά τη μέγιστη τιμή. Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Σαλτιμπάγκος on April 14, 2012, 14:03:06 pm καθώς και την ισχύ με την οποία πρέπει αυτός να εκπέμπει έτσι ώστε όλοι οι δέκτες να δέχονται το σήμα με ισχύ τουλάχιστον ίση με Pmin. πρέπει να χρησιμοποιήσουμε τον τύπο που δίνεται κ να λύσουμε ως προς Ptrans κ όπου P βάζω Pmin?? . Τέλος το πρόγραμμα να τυπώνει, για κάθε δέκτη, την τελική ισχύ του σήματος που θα φτάνει σε αυτόν αφού υπολογισθεί η τελική ισχύς με την οποία θα πρέπει να εκπέμπει ο κεντρικός σταθμός. Σε τι διαφέρει αυτό από το προηγούμενο ερώτημα;;; Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Exomag on April 14, 2012, 15:09:04 pm καθώς και την ισχύ με την οποία πρέπει αυτός να εκπέμπει έτσι ώστε όλοι οι δέκτες να δέχονται το σήμα με ισχύ τουλάχιστον ίση με Pmin. πρέπει να χρησιμοποιήσουμε τον τύπο που δίνεται κ να λύσουμε ως προς Ptrans κ όπου P βάζω Pmin??Ναι Τέλος το πρόγραμμα να τυπώνει, για κάθε δέκτη, την τελική ισχύ του σήματος που θα φτάνει σε αυτόν αφού υπολογισθεί η τελική ισχύς με την οποία θα πρέπει να εκπέμπει ο κεντρικός σταθμός. Σε τι διαφέρει αυτό από το προηγούμενο ερώτημα;;;Το προηγούμενο ερώτημα ζητάει να τυπώσεις την ισχύ με την οποία πρέπει να εκπέμπει ο κεντρικός σταθμός. Αυτό το ερώτημα ζητάει να τυπώσεις την ισχύ που θα "φθάνει" σε κάθε δέκτη, την οποία θα βρεις για κάθε δέκτη ξεχωριστά μέσω του τύπου P=P(trans)/dis^2 Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: kofski17 on April 14, 2012, 15:13:23 pm μάγκες
καθώς και την ισχύ με την οποία πρέπει αυτός να εκπέμπει έτσι ώστε όλοι οι δέκτες να δέχονται το σήμα με ισχύ τουλάχιστον ίση με Pmin. πρέπει να χρησιμοποιήσουμε τον τύπο που δίνεται κ να λύσουμε ως προς Ptrans κ όπου P βάζω Pmin?? Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Exomag on April 14, 2012, 15:16:07 pm μάγκες καθώς και την ισχύ με την οποία πρέπει αυτός να εκπέμπει έτσι ώστε όλοι οι δέκτες να δέχονται το σήμα με ισχύ τουλάχιστον ίση με Pmin. πρέπει να χρησιμοποιήσουμε τον τύπο που δίνεται κ να λύσουμε ως προς Ptrans κ όπου P βάζω Pmin?? Ναι... Θα πρέπει να βρεις ποιός δέκτης έχει την μέγιστη απόσταση από τον πομπό, και αυτού την απόσταση να αντικαταστίσεις στον τύπο P=P(trans)/dis^2, προκειμένου να βρεις την ισχύ με την οποία θα πρέπει να εκπέμπει ο πομπός... Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Σαλτιμπάγκος on April 14, 2012, 21:59:01 pm οκ, θενκ γιου!!! :)
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Niobe on April 16, 2012, 19:06:17 pm Για τον αριθμό των σημείων να ορισθεί μια μέγιστη δυνατή τιμή. Ο πραγματικός αριθμός να διαβάζεται από το πληκτρολόγιο και να γίνεται έλεγχος αν αυτός ξεπερνά τη μέγιστη τιμή. Βασικα εχει πει malloc?? και αν οχι ενας χριστιανος(η και οχι) να εξηγησει... (π.σ. νιωθω τη φαση με το define αλλα αν πχ ειναι 10 το μεγιστο για τα σημεια και εγω δωσω 8 πως θα κανω δεσμευση ??) Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Nerevar on April 16, 2012, 19:10:14 pm Για τον αριθμό των σημείων να ορισθεί μια μέγιστη δυνατή τιμή. Ο πραγματικός αριθμός να διαβάζεται από το πληκτρολόγιο και να γίνεται έλεγχος αν αυτός ξεπερνά τη μέγιστη τιμή. Βασικα εχει πει malloc?? και αν οχι ενας χριστιανος(η και οχι) να εξηγησει... (π.σ. νιωθω τη φαση με το define αλλα αν πχ ειναι 10 το μεγιστο για τα σημεια και εγω δωσω 8 πως θα κανω δεσμευση ??) Mπορει καποιος να ανεβασει μεχρι που εχει φτασει στις σημειωσεις του ο κορτεσης? Ευχαριστω. Έχει κάνει μέχρι και το 5ο κεφάλαιο (Πίνακες)... Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 16, 2012, 19:11:57 pm απλα θα ζητησεις απο τον χρηστη των αριθμο n των σημειων που πρεπει να ειναι μεχρι πχ 50 (το ελεχεις αυτο με ενα do while) και κανεις τις επαναληψεις σου μεχρι n (εννοειται πως τον πινακα τον δηλωνεις 50αρη)
υγ δεν μας εχει πει malloc ακομη Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: NoName on April 20, 2012, 17:16:59 pm Το πρόγραμμα να υπολογίζει και να εκτυπώνει τις συντεταγμένες της θέσης που θα εγκατασταθεί ο κεντρικός σταθμός εκπομπής καθώς και την ισχύ με την οποία πρέπει αυτός να εκπέμπει έτσι ώστε όλοι οι δέκτες να δέχονται το σήμα με ισχύ τουλάχιστον ίση με Pmin. Τέλος το πρόγραμμα να τυπώνει, για κάθε δέκτη, την τελική ισχύ του σήματος που θα φτάνει σε αυτόν αφού υπολογισθεί η τελική ισχύς με την οποία θα πρέπει να εκπέμπει ο κεντρικός σταθμός. Σημείωση: Οι συντεταγμένες των σημείων ορίζονται ως προς ένα τοπικό σύστημα καρτεσιανών συντεταγμένων Για τον αριθμό των σημείων να ορισθεί μια μέγιστη δυνατή τιμή. Ο πραγματικός αριθμός να διαβάζεται από το πληκτρολόγιο και να γίνεται έλεγχος αν αυτός ξεπερνά τη μέγιστη τιμή. Ως τελικη ισχυς που εκπεμπει ο σταθμος οριζω την ελαχιστη δυνατη με βαση τον τυπο? Και τον αριθμο των σημειων τον επιλεγουμε ετσι αυθαιρετα? Ο,τι θελουμε δλδ? Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Σαλτιμπάγκος on April 20, 2012, 17:55:37 pm Ως τελικη ισχυς που εκπεμπει ο σταθμος οριζω την ελαχιστη δυνατη με βαση τον τυπο? Και τον αριθμο των σημειων τον επιλεγουμε ετσι αυθαιρετα? Ο,τι θελουμε δλδ? -Ναι, βρισκεις πρωτα το Pmin κ χρησιμοποιεις αυτο για να βρεις την ισχυ που λαμβανουν οι δεκτες. -Ο χρηστης πρεπει να επιλεξει τα σημεια κ ναι ειναι αυθαιρετα. Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: NoName on April 20, 2012, 18:06:04 pm Ευχαριστω πολυ!! :)
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: nastia on April 20, 2012, 18:17:19 pm ρε παιδια εκει που ζηταει να βρεις το x και y του κεντρικου σταθμου..εχει κανεις καμια ιδεα πς θα αποθηκευσω τα i και j απο τα distance_max 1 και 2?
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 20, 2012, 19:17:18 pm ρε παιδια εκει που ζηταει να βρεις το x και y του κεντρικου σταθμου..εχει κανεις καμια ιδεα πς θα αποθηκευσω τα i και j απο τα distance_max 1 και 2? μπορει να μην εχω καταλαβει καλα την ερωτηση σου αλλα γιατι βρισκεις 2 distance max ( βασικα πως γινεται να εχεις 2 max );------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ρε παιδια να ρωτησω κατι: για να βρουμε το Ptrans πολλαπλασιαζουμε το Pmin που εχουμε διαβασει (με το μισο της αποστασης των σημειων στο μεσο των οποιων βρισκεται ο σταθμος)^2 ή πρεπει να βρω ξανα ποιο σημειο ειναι πιο μακρια απο το σταθμο [εννοω αφου εχω βρει τα (x,y) του σταθμου]; το λεω αυτο γιατι για μερικα παραδειγματα το 1ο λειτουργησε απλα δεν ξερω αν ειναι εντελως σωστο και ισχυει γενικα :???: Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 20, 2012, 19:52:52 pm Θα πρέπει να βρεις τη μέγιστη απόσταση ενός δέκτη από το σταθμό. Υπάρχουν περιπτώσεις που η μέγιστη απόσταση μεταξύ 2 σημείων δεν συνεπάγεται και μέγιστη απόσταση των 2 αυτών σημείων από το σταθμό.
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 20, 2012, 22:12:10 pm ok thanks απλα ρωτησα μηπως ηταν σωστο και γλυτωνα μια επαναληψη :P
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 21, 2012, 22:01:37 pm ok thanks απλα ρωτησα μηπως ηταν σωστο και γλυτωνα μια επαναληψη :P :)-------------------------------------- Εμένα με απασχόλησε το τι πρέπει να κάνουμε αν βρούμε για παράδειγμα τρία σημεία Α,Β,Γ με πχ (ΑΒ)=(ΑΓ). Δηλαδή αν πάρουμε το πρώτο από αυτά τα ζεύγη σημείων και στήσουμε το σταθμό στο μέσο τους, θα είναι απολύτως σωστό; Μια καλή ιδέα θα ήταν να στήνουμε το σταθμό στο κέντρο βάρους του τριγώνου (ή τετραγώνου κλπ) που θα προέκυπτε από αυτά τα σημεία... Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Infinite Loop on April 22, 2012, 10:15:28 am ok thanks απλα ρωτησα μηπως ηταν σωστο και γλυτωνα μια επαναληψη :P :)-------------------------------------- Εμένα με απασχόλησε το τι πρέπει να κάνουμε αν βρούμε για παράδειγμα τρία σημεία Α,Β,Γ με πχ (ΑΒ)=(ΑΓ). Δηλαδή αν πάρουμε το πρώτο από αυτά τα ζεύγη σημείων και στήσουμε το σταθμό στο μέσο τους, θα είναι απολύτως σωστό; Μια καλή ιδέα θα ήταν να στήνουμε το σταθμό στο κέντρο βάρους του τριγώνου (ή τετραγώνου κλπ) που θα προέκυπτε από αυτά τα σημεία... Συμβουλη απο μενα: μην περιπλεκεις το προγραμμα που θα στησεις χωρις λογο. Ειναι πολυ καλο που εχεις αυτη την τελειομανια (οπως κι εγω ;) ) αλλα εφοσον δεν σου το εχει διευκρινισει στην εκφωνηση, δεν αξιζει τον κοπο να γραψεις 10-20-50 γραμμες παραπανω και να ρισκαρεις τυχον για να συμπεριλαβεις αυτη την περιπτωση. Οχι τιποτα αλλο, αλλα ειναι δευτερη εργασια διαολε. Και στην τελικη, αααν (λεεεμε τωρα) σου πει κατι στην προφορικη εξεταση ο σενιορ Κορτεσης, πες του οτι δεν το διευκρινισε :P. Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Luffy on April 22, 2012, 17:36:10 pm Το Ptrans δεν πρεπει να το δινει ο χρηστης ?
Και επισης, πως μπορω να ελεγξω ποιο ζευγαρι εχει τη μεγαλυτερη αποσταση ? Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 22, 2012, 18:03:25 pm Το Ptrans δεν πρεπει να το δινει ο χρηστης ? Και επισης, πως μπορω να ελεγξω ποιο ζευγαρι εχει τη μεγαλυτερη αποσταση ? 1) Θα διαβάσεις ένα Pmin και μέσω αυτού και της απόστασης του δέκτη που βρίσκεται πιο μακριά από τους υπόλοιπους από το σταθμό θα βρεις το Ptrans. 2) Θα παίρνεις ζευγάρια συντεταγμένων και θα ελέγχεις την απόστασή τους. Αν αυτή ξεπερνά το dmax (τη μέγιστη απόσταση η οποία αρχικοποιείται ως 0) τότε βάζεις την απόστασή τους ως dmax και παίρνεις τις συντεταγμένες του μέσου των δύο αυτών σημείων και τις σώζεις σε 2 μεταβλητές xtrans και ytrans. Διάβασε τις συντεταγμένες όλων των σημείων σε έναν πίνακα(ας πούμε coor[N][2]) και μετά μπες σε μία επανάληψη της μορφής Code: for(i=0;i<n-1;i++){ Υ.Γ. Καλό θα ήταν να ορίσεις μια συνάρτηση η οποία να σου βρίσκει την απόσταση δύο σημείων, γιατί θα τη χρειαστείς κάμποσες φορές. Εγώ την όρισα έτσι(θα χρειαστεί να συμπεριλάβεις και τη βιβλιοθήκη math.h): Code: float dis(float x1, float y1, float x2, float y2){ Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Γρια on April 23, 2012, 14:29:07 pm Οι συντεταγμενες μπορει να ειναι κ αρνητικες,ετσι?
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 23, 2012, 14:42:53 pm Οι συντεταγμενες μπορει να ειναι κ αρνητικες,ετσι? ναι αλλα εσενα για πιο λογο σε ενδιαφερει; Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: alepou1 on April 23, 2012, 15:33:21 pm οταν παω να το τρεξω μου βγαζει λαθος στο συμβολο "^".μπορει καποιος να μου πει πως θα κανω την ριζα στον τυπο της αποστασης;γιατι την ειχα "^(1/2)".υπαρχει καποια ετοιμη συναρτηση;
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: princess_of_the_dawn on April 23, 2012, 15:35:59 pm αν θυμάμαι καλά είναι sqrt() όπου στην παρένθεση βάζεις την υπόρριζη ποσότητα..είναι στην math.h
άάάάάάν θυμάμαι καλά.... Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: alepou1 on April 23, 2012, 15:39:08 pm νομιζα ειναι το τετραγωνο αυτο που λες.αν οχι ποιο ειναι το τετραγωνο;ευχαριστω παντως
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: princess_of_the_dawn on April 23, 2012, 15:41:26 pm στο τετράγωνο απλά πολλαπλασιάζεις δύο φορές,πχ. b*b
sqrt=square root ή κτ τέτοιο ;) Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 23, 2012, 15:43:56 pm στο τετράγωνο απλά πολλαπλασιάζεις δύο φορές,πχ. b*b +1 αλλιως αν βαριεσαι να το κανεις αυτο θα πρεπει να γραψεις εσυ μια συναρτηση που να το κανει αυτο (για τετραγωνα και κυβους απ'ότι καταλαβαινεις δεν πολυχρειαζεται αυτο και δε συμφερει) αν θυμάμαι καλά είναι sqrt() όπου στην παρένθεση βάζεις την υπόρριζη ποσότητα..είναι στην math.h +1άάάάάάν θυμάμαι καλά.... Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: alepou1 on April 23, 2012, 15:53:52 pm αν θυμάμαι καλά είναι sqrt() όπου στην παρένθεση βάζεις την υπόρριζη ποσότητα..είναι στην math.h το βρηκα εχεις δικιο ριζα ειναι αυτοάάάάάάν θυμάμαι καλά.... Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Niobe on April 23, 2012, 16:37:25 pm απλα την "υποριζη" ποσοτητα και την τιμη που θα επιστρεψει η sqrt πρεπει να ειναι double νομιζω
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 23, 2012, 16:45:13 pm απλα την "υποριζη" ποσοτητα και την τιμη που θα επιστρεψει η sqrt πρεπει να ειναι double νομιζω εγω τα εχω δηλωσει float και μια χαρα μου τρεχει το προγραμμα :???: :-\ Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Niobe on April 23, 2012, 16:59:41 pm απλα την "υποριζη" ποσοτητα και την τιμη που θα επιστρεψει η sqrt πρεπει να ειναι double νομιζω εγω τα εχω δηλωσει float και μια χαρα μου τρεχει το προγραμμα :???: :-\ καλα βασικα αμα τρεχει οκ :D Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 23, 2012, 19:41:41 pm Ρε παιδιά, ο τελεστής ^ στη C ΔΕΝ είναι ύψωση σε δύναμη.
Ο τύπος της απόστασης με τα δεδομένα της C θα γίνει έτσι: sqrt(pow(x1-x2,2) + pow(y1-y2,2)) Συναρτήσεις: pow(x,y): Υπολογισμός του x^y. sqrt(x): Τετραγωνική ρίζα του x. Από τη βιβλιοθήκη math.h Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Luffy on April 23, 2012, 23:32:43 pm Το Ptrans δεν πρεπει να το δινει ο χρηστης ? Και επισης, πως μπορω να ελεγξω ποιο ζευγαρι εχει τη μεγαλυτερη αποσταση ? 1) Θα διαβάσεις ένα Pmin και μέσω αυτού και της απόστασης του δέκτη που βρίσκεται πιο μακριά από τους υπόλοιπους από το σταθμό θα βρεις το Ptrans. 2) Θα παίρνεις ζευγάρια συντεταγμένων και θα ελέγχεις την απόστασή τους. Αν αυτή ξεπερνά το dmax (τη μέγιστη απόσταση η οποία αρχικοποιείται ως 0) τότε βάζεις την απόστασή τους ως dmax και παίρνεις τις συντεταγμένες του μέσου των δύο αυτών σημείων και τις σώζεις σε 2 μεταβλητές xtrans και ytrans. Διάβασε τις συντεταγμένες όλων των σημείων σε έναν πίνακα(ας πούμε coor[N][2]) και μετά μπες σε μία επανάληψη της μορφής Code: for(i=0;i<n-1;i++){ Δεκτον. Με αυτο τον τροπο ομως , ελεγχεις την αποσταση του 1ου σημειου με το 2ο, του 2ου με το 3ο και παει... Σωστα? Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 23, 2012, 23:38:42 pm Προσπάθησε να τρέξεις το πρόγραμμα μόνος σου για να καταλάβεις τη λειτουργία του παραδείγματος.
Στην αρχή το i παίρνει την τιμή 0 και ξεκινάει ο εμφωλευμένος βρόχος. Έπειτα το j παίρνει την τιμή i + 1 = 1 άρα πρώτα ελέγχουμε το ζεύγος (0,1). Μετά το j παίρνει την τιμή 2 και ελέγχεις το ζεύγος (0,2) κτλπ μέχρι να ελέγξεις και το ζεύγος (0, n-1). Μετά βγαίνεις από τον εμφωλευμένο βρόχο και πας στον εξωτερικό και έτσι το i γίνεται 1 και έτσι ελέγχεις τα ζεύγη (1,1), (1,2) κτλπ. Όπως καταλαβαίνεις, δεν χρειάζεται να ελεγξεις το ζεύγος πχ (2,1) αφού είναι το ίδιο με το (1,2) κτλπ Δοκίμασε αυτό το πρόγραμμα για να πειστείς Code: #include <stdio.h> Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Utrion on April 24, 2012, 11:34:29 am Επίσης μια μικρή παρατήρηση ειναι το d δεν πρέπει να γίνεται μικρότερο του 1 γιατι τότε το σήμα που λαμβάνουν οι σταθμοι σε απόσταση μικρότερη του 1 ειναι μεγαλύτερο του εκπεμπόμενου :o (άρα καλή μια μετατροπή του απο m σε cm ...)
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 25, 2012, 13:22:32 pm Επίσης μια μικρή παρατήρηση ειναι το d δεν πρέπει να γίνεται μικρότερο του 1 γιατι τότε το σήμα που λαμβάνουν οι σταθμοι σε απόσταση μικρότερη του 1 ειναι μεγαλύτερο του εκπεμπόμενου :o (άρα καλή μια μετατροπή του απο m σε cm ...) Δεν νομίζω ότι χρειάζεται. Με αυτόν τον τύπο είναι λογικό να βγαίνει κάτι τέτοιο... Είναι μια άσκηση προγραμματισμού και όχι φυσικής. Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Utrion on April 25, 2012, 19:06:13 pm Επίσης μια μικρή παρατήρηση ειναι το d δεν πρέπει να γίνεται μικρότερο του 1 γιατι τότε το σήμα που λαμβάνουν οι σταθμοι σε απόσταση μικρότερη του 1 ειναι μεγαλύτερο του εκπεμπόμενου :o (άρα καλή μια μετατροπή του απο m σε cm ...) Δεν νομίζω ότι χρειάζεται. Με αυτόν τον τύπο είναι λογικό να βγαίνει κάτι τέτοιο... Είναι μια άσκηση προγραμματισμού και όχι φυσικής. Ναι δεν χρειάζεται με αυτή την έννοια απλά σαν αυτο-τσεκάρισμα του προγράμματος. Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: reservoir dog on April 26, 2012, 16:54:47 pm Λοιπόν θα ήθελα να μου λύσετε αν μπορείτε τις εξής απορίες. Η ελάχιστη ισχύς Pmin είναι η ίδια για κάθε δέκτη ή αλλάζει για τον καθένα? Δηλαδή χρειάζεται να διαβάσουμε μία Pmin στο πρόγραμμα ή μία για κάθε δέκτη ξεχωριστά? Επισης για την εύρεση των δύο σημείων με την μικρότερη μεταξύ τους απόσταση θεωρείτε πως πρέπει να χρησιμοποιηθεί συνάρτηση ή ένας απλός βρόχος?
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 26, 2012, 18:50:10 pm 1) Το Pmin είναι ένα και το διαβάζεις στην αρχή.
2) Θα χρησιμοποιήσεις σίγουρα έναν βρόχο για να περάσεις από όλα τα σημεία που θα σου δώσει ο χρήστης(είτε χρησιμοποιήσεις συνάρτηση, είτε όχι). Μπορείς απλά να ορίσεις μια συνάρτηση που θα σου βρίσκει την απόσταση 2 σημείων(όχι τη μικρότερη/μεγαλύτερη, απλώς θα δίνεις 2 σημεία και θα σου βρίσκει την απόστασή τους) γιατί θα τη χρειαστείς 3 φορές. Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: skipper on April 26, 2012, 22:41:58 pm Παιδια o πινακας συντεταγμενων θα οριστει ως s[N][2] (οπου Ν η μεγιστη δυνατη τιμη των σημειων, ορισμενη με define) η ως s[n][2];
(οπου n ο αριθμος των σημειων που δινει ο χρηστης απο το πληκτρολογιο) Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 26, 2012, 22:45:16 pm των αριθμο των σημειων τον δινει ο χρηστης απλα εδυ του βαζεις με ενα do while ενα ανωτερο οριο πχ 50 και δηλωνεις τον πινακα s[50][2]
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: skipper on April 26, 2012, 22:51:54 pm Και οταν ο χρηστης δωσει εναν αριθμο π.χ. 30 δεν υπαρχει προβλημα με τις υπολοιπες θεσεις του πινακα που μενουν κενες;
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 26, 2012, 23:04:11 pm οχι δεν ξερω ακριβως πως λειτουργει αυτο απλα νομιζω η μνημη παει και βαζει εκει "σκουπιδια" (για να το αποφυγουμε κανονικα αυτο θα επρεπε να εχουμε μαθει τη malloc ωστε να μπορουμε να κανουμε δυναμικη δεσμευση μνημης)
υγ στις επαναληψεις και σε οτι αλλο κανεις που θα χρειαστεις το n (αριθμος στοιχειων) θα βαζεις το n και οχι το μεγιστο αριθμο που εχεις θεωρησει εσυ Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: skipper on April 26, 2012, 23:15:36 pm Οκ για τις επαναληψεις ξερω απλα με τον πινακα δεν ειμαι σιγουρος τι παιζει με τις απροσδιοριστες θεσεις. :-\ Thanks anyway!
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 26, 2012, 23:21:41 pm Οι απροσδιόριστες θέσεις συνήθως περιέχουν και αυτές κάποιες τιμές. Αυτές οι τιμές είναι υπολείμματα από άλλες διαδικασίες. Οι θέσεις μνήμης που δεσμεύονται όμως, δεν χρησιμοποιούνται από άλλο πρόγραμμα.
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Δον on April 26, 2012, 23:56:42 pm AAAAAAAAA
κάθε χρόνο τα ίδια βάζει αυτός ο Κορτέσης? ΠΟΤΕ ΘΑ ΜΕΓΑΛΩΣΕΙ ΕΠΙΤΕΛΟΥΣ????? :D :D :D Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Ναταλία on April 26, 2012, 23:57:25 pm ποτε Δημητρη! τα ιδια και τα ιδια :P
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Δον on April 26, 2012, 23:58:16 pm Ναταλία , σταμάτα να τρολάρεις τα μικρά παιδιά.
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: A.N. on April 27, 2012, 01:04:50 am Παιδια o πινακας συντεταγμενων θα οριστει ως s[N][2] (οπου Ν η μεγιστη δυνατη τιμη των σημειων) το 2 τι ακριβως δειχνει???
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 27, 2012, 01:08:24 am στηλες
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: A.N. on April 27, 2012, 01:11:00 am στηλες ναι αυτο το καταλαβα εννοω γιατι βαζουμε 2 στηλες. Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 27, 2012, 01:11:39 am Παιδια o πινακας συντεταγμενων θα οριστει ως s[N][2] (οπου Ν η μεγιστη δυνατη τιμη των σημειων) το 2 τι ακριβως δειχνει??? Ορίζεις έναν πίνακα 2 διαστάσεων. Σκέψου ότι έχεις το πολύ Ν σημεία, τα οποία έχουν ένα ζεύγος συντεταγμένων(πρώτη στήλη τετμημένη, δεύτερη στήλη τεταγμένη). Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: A.N. on April 27, 2012, 01:13:32 am Παιδια o πινακας συντεταγμενων θα οριστει ως s[N][2] (οπου Ν η μεγιστη δυνατη τιμη των σημειων) το 2 τι ακριβως δειχνει??? Ορίζεις έναν πίνακα 2 διαστάσεων. Σκέψου ότι έχεις το πολύ Ν σημεία, τα οποία έχουν ένα ζεύγος συντεταγμένων(πρώτη στήλη τετμημένη, δεύτερη στήλη τεταγμένη). thanks!!! :) Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Σαλτιμπάγκος on April 27, 2012, 06:16:20 am Kαι αν ο χρηστης βαλει μια τιμη μεγαλυτερη του 50 ,δλδ ξεπερναει το οριο που θετουμε τοτε το προγραμμα τερματίζει ή πρεπει να ξαναβαλει αλλη τιμη εντος των οριων΄;;;;
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 27, 2012, 08:25:11 am Kαι αν ο χρηστης βαλει μια τιμη μεγαλυτερη του 50 ,δλδ ξεπερναει το οριο που θετουμε τοτε το προγραμμα τερματίζει ή πρεπει να ξαναβαλει αλλη τιμη εντος των οριων΄;;;; αν δεν εχεις χρησιμοποιησει do while τοτε θα σου βγαλει error και θα σου κλεισει αλλιως θα κανει συνεχεια επαναληψη μεχρι n<=50 Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 27, 2012, 11:53:05 am Kαι αν ο χρηστης βαλει μια τιμη μεγαλυτερη του 50 ,δλδ ξεπερναει το οριο που θετουμε τοτε το προγραμμα τερματίζει ή πρεπει να ξαναβαλει αλλη τιμη εντος των οριων΄;;;; Αν δεν έχεις βάλει επαναληπτικό έλεγχο, τότε το πρόγραμμα θα συμπεριφέρεται σαν ο πίνακας να είχε παραπάνω στοιχεία από 50, το οποίο θα οδηγήσει σε εσφαλμένα αποτελέσματα και πολλές φορές στο κρέμασμα του προγράμματος. Να ξέρεις ότι η C δεν θα κάνει κάποιον έλεγχο αν εσύ προσπαθήσεις να προσπελάσεις στοιχείο στη θέση πχ 65. Αν θες να αποφύγεις τέτοια προβλήματα (για τις ανάγκες της άσκσησης είναι περιττό) μπορείς να κάνεις το ακόλουθο: Code: do{ Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Σαλτιμπάγκος on April 27, 2012, 13:12:47 pm κατι τετοιο θα ηταν λαθος;;;
Code: bool check; Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: nastia on April 27, 2012, 22:18:28 pm AAAAAAAAA κάθε χρόνο τα ίδια βάζει αυτός ο Κορτέσης? ΠΟΤΕ ΘΑ ΜΕΓΑΛΩΣΕΙ ΕΠΙΤΕΛΟΥΣ????? :D :D :D Εσυ ρε Μητσο τι πεταγεσαι και μς spammareis το topic??? Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: nastia on April 27, 2012, 22:19:57 pm ρε παιδια εκει που ζηταει να βρεις το x και y του κεντρικου σταθμου..εχει κανεις καμια ιδεα πς θα αποθηκευσω τα i και j απο τα distance_max 1 και 2? μπορει να μην εχω καταλαβει καλα την ερωτηση σου αλλα γιατι βρισκεις 2 distance max ( βασικα πως γινεται να εχεις 2 max );------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ρε παιδια να ρωτησω κατι: για να βρουμε το Ptrans πολλαπλασιαζουμε το Pmin που εχουμε διαβασει (με το μισο της αποστασης των σημειων στο μεσο των οποιων βρισκεται ο σταθμος)^2 ή πρεπει να βρω ξανα ποιο σημειο ειναι πιο μακρια απο το σταθμο [εννοω αφου εχω βρει τα (x,y) του σταθμου]; το λεω αυτο γιατι για μερικα παραδειγματα το 1ο λειτουργησε απλα δεν ξερω αν ειναι εντελως σωστο και ισχυει γενικα :???: βσκ οτι να'ναι ειχα κτλβ! :P τλκ το βρηκα! thanks anyway! Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Σαλτιμπάγκος on April 28, 2012, 21:08:58 pm Οταν μου βγαζει τα αποτελεσματα επειδη ειναι τυπου double, βγαζει πολλα δεκαδικα ψηφια (πχ P=5,00000). Πως μπορω να μειωσω τον αριθμο των μηδενικων;;;
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Infinite Loop on April 28, 2012, 21:30:22 pm Οταν μου βγαζει τα αποτελεσματα επειδη ειναι τυπου double, βγαζει πολλα δεκαδικα ψηφια (πχ P=5,00000). Πως μπορω να μειωσω τον αριθμο των μηδενικων;;; Αν θυμαμαι καλα, printf("%.3f", x) αν θες να τυπωσεις 3 δεκαδικα. Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 28, 2012, 21:38:22 pm Οταν μου βγαζει τα αποτελεσματα επειδη ειναι τυπου double, βγαζει πολλα δεκαδικα ψηφια (πχ P=5,00000). Πως μπορω να μειωσω τον αριθμο των μηδενικων;;; Αν θυμαμαι καλα, printf("%.3f", x) αν θες να τυπωσεις 3 δεκαδικα. Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: heavy melon on April 29, 2012, 01:32:50 am Στο σημείο όπου ψάχνουμε τις συντεταγμένες του κεντρικού σταθμού
τα maxA, maxB που έχω βρει μετά από λούπες, δείχνουν στους 2 δέκτες που απέχουν την μεγαλύτερη απόσταση μεταξύ τους. Code: for (i...) σε αυτές τις εντολές με προειδοποιεί ότι οι δείκτες των πινάκων δεν είναι ακέραιοι (όπως τους έχω δηλώσει) What am i missing? Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 29, 2012, 12:36:01 pm Στο σημείο όπου ψάχνουμε τις συντεταγμένες του κεντρικού σταθμού Θα ήταν καλό αν μπορείς να στείλεις όλον τον κώδικα για να δω το λάθος.τα maxA, maxB που έχω βρει μετά από λούπες, δείχνουν στους 2 δέκτες που απέχουν την μεγαλύτερη απόσταση μεταξύ τους. Code: for (i...) σε αυτές τις εντολές με προειδοποιεί ότι οι δείκτες των πινάκων δεν είναι ακέραιοι (όπως τους έχω δηλώσει) What am i missing? Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: SPS on April 29, 2012, 16:07:57 pm Παιδιά ο έλεγχος για το n,πως μπορεί να γίνει?Κάτι είδα για do while αλλά η do while θα τρεξει μια φορα τουλαχιστον ανεξαρτητα απο το n.Δε δημιουργει πρόβλημα αυτό?
EDIT: c0ndemn3d μηπως μπορεις να εξηγησεις λιγο?Το Ν ειναι ο μεγιστος αριθμος σημειων που δεχομαστε εμεις?Και γιατι το n πρεπει να ειναι μικροτερο απο 2? Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 29, 2012, 16:13:59 pm do{
scanf("%d",&n); }while(n>=N || n<2); Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 29, 2012, 16:20:51 pm do{ scanf("%d",&n); }while(n>=N && n<2); νομιζω πρεπει να ειναι n>=N || n<2 Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 29, 2012, 16:30:13 pm Σωστό. Βιασύνη μου.
------------- Το Ν το δίνουμε εμείς (το παίρνουμε ως δεδομένο της εκφώνησης). Και σκέφτομαι και βάζω το n να παίρνει τιμή τουλάχιστον 2, ώστε να υπάρχει τουλάχιστον ένα ζεύγος σημείων το οποίο θα ελέγξουμε. Αλλιώς δεν θα χαμε πληροφορία για το που θα στήσουμε το σταθμό. Το n δεν πρέπει να ναι μικρότερο του 2, αλλά μεγαλύτερο. Η επανάληψη θα επαναλαμβάνεται αν πάρεις τιμή μικρότερη του 2. Δοκίμασε το σε ένα παράδειγμα. Έτσι οι τιμές που παίρνεις είναι στο διάστημα [2,Ν](φυσικοί). Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: SPS on April 29, 2012, 16:38:04 pm Ευχαριστω πολύ c0ndemn3d και Jim D. Ace.Με μπερδεψε πολυ το && αλλα μετα ξεμπλοκαρα ;D
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 29, 2012, 16:41:29 pm Τραγικό μου λάθος.
Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Jim D. Ace on April 29, 2012, 16:43:03 pm Τραγικό μου λάθος. μην ανησυχεις c0ndemn3d γι'αυτο ειμαι εγω εδω ;D ;D ;D Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: c0ndemn3d on April 29, 2012, 17:05:17 pm Τραγικό μου λάθος. μην ανησυχεις c0ndemn3d γι'αυτο ειμαι εγω εδω ;D ;D ;D Title: Re: [Δομημένος Πρ.] Εργασία Β Post by: Exomag on April 29, 2012, 17:55:53 pm |