yolobot Δημοσ. 15 Ιανουαρίου 2017 Share Δημοσ. 15 Ιανουαρίου 2017 εφτιαξα τον παρακατω κωδικα και θα ηθελα να μου πειτε αν μπορειτε πως να τον εφτιαχνα καλυτερα για να μην κανω τοσες If ωστε να ηταμ μικροτερος ο κωδικας και να εκανα τις συγκρισεις a = int(input(u"Δωσε α: ")) b = int(input(u"Δωσε β: ")) c = int(input(u"Δωσε γ: ")) if ( a == b ): print "Line 1 - a is equal to b" else: print "Line 1 - a is not equal to b" if ( a != b ): print "Line 2 - a is not equal to b" else: print "Line 2 - a is equal to b" if ( a <> b ): print "Line 3 - a is not equal to b" else: print "Line 3 - a is equal to b" if ( a < b ): print "Line 4 - a is less than b" else: print "Line 4 - a is not less than b" if ( a > b ): print "Line 5 - a is greater than b" else: print "Line 5 - a is not greater than b" Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Moderators Kercyn Δημοσ. 15 Ιανουαρίου 2017 Moderators Share Δημοσ. 15 Ιανουαρίου 2017 Τι ακριβώς προσπαθείς να κάνεις εδώ; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
yolobot Δημοσ. 15 Ιανουαρίου 2017 Μέλος Share Δημοσ. 15 Ιανουαρίου 2017 να ζητησω απο τον χρηστη 3 αριθμους και να τους συγκρινω μετα Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
KiriosD Δημοσ. 15 Ιανουαρίου 2017 Share Δημοσ. 15 Ιανουαρίου 2017 πιστεύω εφόσον έχεις τόσα μέτρα σύγκρισης είναι αναγκαίο να έχεις τα if, μπορείς να αποφύγεις το print των υπολοίπων όμως βάζοντας το όλο σε μία while (?) έτσι θα αποφύγεις τα else Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
yolobot Δημοσ. 15 Ιανουαρίου 2017 Μέλος Share Δημοσ. 15 Ιανουαρίου 2017 με μια συνασρτηση θα μπορουσε να βγει πιο γρηγορα γινεται? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Moderators Kercyn Δημοσ. 15 Ιανουαρίου 2017 Moderators Share Δημοσ. 15 Ιανουαρίου 2017 Μπορείς να τους ταξινομήσεις και μετά να πάρεις ποιος είναι μεγαλύτερος κλπ. Έτσι όπως το έχεις τώρα, αν πούμε ότι ο α είναι μεγαλύτερος του β, θα πάρεις αυτό στην κονσόλα: Line 1 - a is not equal to b Line 2 - a is not equal to b Line 3 - a is not equal to b Line 4 - a is not less than b Line 5 - a is greater than b Αυτό είναι που θες; πιστεύω εφόσον έχεις τόσα μέτρα σύγκρισης είναι αναγκαίο να έχεις τα if, μπορείς να αποφύγεις το print των υπολοίπων όμως βάζοντας το όλο σε μία while (?) έτσι θα αποφύγεις τα else Τι θα κάνει η while; 1 Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
KiriosD Δημοσ. 15 Ιανουαρίου 2017 Share Δημοσ. 15 Ιανουαρίου 2017 και ο γ; πηγαδι; Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
yolobot Δημοσ. 15 Ιανουαρίου 2017 Μέλος Share Δημοσ. 15 Ιανουαρίου 2017 αυτο που θελω ειναι να δωσει ο χρηστης 3 αριθμους και να τους συγκρινω ποιος ειναι μεγαλυτερος μεσαιος και μικροτερος και ο γ; πηγαδι; τον ξεχασα μαλλον Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Moderators Kercyn Δημοσ. 15 Ιανουαρίου 2017 Moderators Share Δημοσ. 15 Ιανουαρίου 2017 Ωραία, διάβασε τρεις αριθμούς σ' έναν πίνακα, ταξινόμησε τον πίνακα και εκτύπωσε τα στοιχεία του. 1 Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
yolobot Δημοσ. 15 Ιανουαρίου 2017 Μέλος Share Δημοσ. 15 Ιανουαρίου 2017 θελω να τα δινει ο χρηστης οχι να τα εχω σε ενα πινακα Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Moderators Kercyn Δημοσ. 15 Ιανουαρίου 2017 Moderators Share Δημοσ. 15 Ιανουαρίου 2017 Ο χρήστης θα τους δίνει και θα τους βάζεις σε πίνακα αντί σε τρεις ξεχωριστές μεταβλητές. Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
yolobot Δημοσ. 15 Ιανουαρίου 2017 Μέλος Share Δημοσ. 15 Ιανουαρίου 2017 εκανα αυτο μπορει να εχει μερικα συντακιτκα αλλα σαν σκεψη ειναι σωστο νομιζω.αυτο με τους πινακες δεν καταλαβαινα πως ηθελες να το κανεις μπορεις να μοπυ δωσεις την λυση σου να δω τι εννοουσες? a = int(input(u"Δωσε α: ")) b = int(input(u"Δωσε β: ")) c = int(input(u"Δωσε γ: ")) fisrt=a; if (b>=fist ): first=b second=b else: second=b; if (c>=fist ): third=second second=first fisrt=c; if (c>=second): third=second second=c else: c=third print "first,second,third" Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
k33theod Δημοσ. 15 Ιανουαρίου 2017 Share Δημοσ. 15 Ιανουαρίου 2017 (επεξεργασμένο) Με ταξινόμηση νομίζω και εγώ γίνεται πιο εύκολα σε python 3 Όχι πίνακας αλλά dict SORRY Ο κώδικας είναι λάθος το κοιτάω και επανέρχομαι def compare(): a = int(input("Δωσε α: ")) b = int(input("Δωσε β: ")) c = int(input("Δωσε γ: ")) lejiko={i:k for i,k in zip('αβγ',(a,b,c))} return '<='.join(n[1] for i in range(len(sorted(zip(lejiko.values(), lejiko.keys()))))) Σωστό Επεξ/σία 15 Ιανουαρίου 2017 από k33theod Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
yolobot Δημοσ. 15 Ιανουαρίου 2017 Μέλος Share Δημοσ. 15 Ιανουαρίου 2017 Με ταξινόμηση νομίζω και εγώ γίνεται πιο εύκολα σε python 3 Όχι πίνακας αλλά dict def compare(): a = int(input("Δωσε α: ")) b = int(input("Δωσε β: ")) c = int(input("Δωσε γ: ")) lejiko={i:k for i,k in zip((a,b,c),('αβγ'))} return '<='.join(lejiko[i] for i in sorted(lejiko.keys())) μπορεις να μου εξηγησεις τι κανει το zip και το join? Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
k33theod Δημοσ. 15 Ιανουαρίου 2017 Share Δημοσ. 15 Ιανουαρίου 2017 (επεξεργασμένο) Ο παραπάνω κώδικας είναι λάθος εδώ είναι ο σωστός def compare(): a = int(input("Δωσε α: ")) b = int(input("Δωσε β: ")) c = int(input("Δωσε γ: ")) lejiko={i:k for i,k in zip('αβγ',(a,b,c))} n=sorted(zip(lejiko.values(), lejiko.keys())) return '<='.join(n[i][1] for i in range(len(n))) To zip δεν έχει σχέση με το ζιπάρισμα αλλά με το φερμουάρ δες καλύτερα μόνος σου τι κάνει. Το λέω γιατί θα χάσω κάτι και δεν θα καλύψω το θέμα Αν σου πω δηλαδή ότι επιστρέφει ένα iter από πολλά iter αφού εξαντλήσει το μικρότερο πιστέυω δεν θα καταλάβεις και πολλά. με παράδειγμα >>> list(zip((1,2,3),(4,5,6))) [(1, 4), (2, 5), (3, 6)] >>> n=zip((1,2,3),(4,5,6)) >>> n <zip object at 0x00000250BB567E88> το join δες το και αυτό παράδειγμα >>> ':'.join('καλημέρα') 'κ:α:λ:η:μ:έ:ρ:α' Επεξ/σία 16 Ιανουαρίου 2017 από k33theod Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα