silenoz66 Δημοσ. 27 Νοεμβρίου 2020 Δημοσ. 27 Νοεμβρίου 2020 (επεξεργασμένο) ΠΟΣΤ deleted . Διαβάστε το σεντόνι παρακάτω! Επεξ/σία 28 Νοεμβρίου 2020 από silenoz66
pmav99 Δημοσ. 27 Νοεμβρίου 2020 Δημοσ. 27 Νοεμβρίου 2020 google: python + itertools + combinations 1 1
silenoz66 Δημοσ. 27 Νοεμβρίου 2020 Μέλος Δημοσ. 27 Νοεμβρίου 2020 4 λεπτά πριν, pmav99 είπε google: python + itertools + combinations Το έχει πάρει το μάτι μου το συσγκεκριμένο αλλά δεν έχω βρεί τρόπο αν το αξιοποιησω ακόμη. Τoo much information για μία μέρα.
tsofras Δημοσ. 27 Νοεμβρίου 2020 Δημοσ. 27 Νοεμβρίου 2020 1 ώρα πριν, silenoz66 είπε Καλησπέρα σε όλους, θα προσπαθήσω να αναλύσω το πρόβλημα μου όσο πιο σύντομα γίνεται χωρίς έξτρα πληροφορίες για να μην χαθούμε. ΤΟ συγκεκριμένο πρόβλημα αφορά την διπλωματική μου .(Ειμαι μηχανολόγος μηχανικός και δεν είμαι expert στον προγραμματισμό) Η Ιδεα όσον αφορά το κομμάτι που έχω πρόβλημα: *Εχουμε user input πόσους stations έχουμε * Καθε station έχει 3 μεταβλητές (το ονομα δες μας ενδιαφέρει) έστω q i j * Οι μεταβλητές παίρνουν διάφορετικές τιμές ανάλογα το user input και ανάλογα τον σταθμό , όσον αφορά το q και το i, *Το j παίρνει τις τιμές 0, 1, 2 ΜΟΝΟ Τι θέλουμε να κάνουμε : Για κάθε διαφορετική τιμή στις μεταβλητές του κάθε σταθμού , να βρούμε ΟΛΟΥΣ τους δυνατούς συνδιασμούς του συνολοικού συτήματος και σε κάθε έναν απο αυτόν θα τρέχω μια function που θα κοιτάει αν μου κάνει ή οχι και μετά θα την κανω save κάπου αλλού(θα το αναλύσω παρακάτω) Οσον αφορά το order που ΠΡΕΠΕΙ να είναι συγκεκριμένο για να το δείτε πως είναι: ( έστω οτι οι τιμές παίρνουν μόνο τιμες απο το 0 εως το 2 (για ευκολία)) 000 000 000 000 (1ος συνδιασμος- καθε 3αδα αντιπροσωπεύει εναν station και κάθε αριθμος της τριάδας μια μεταβλητή , Aρα 4 τριαδες= 4 stations ) 000 000 000 001 000 000 000 002 000 000 000 010 000 000 000 011 000 000 000 012 000 000 000 020 κοκ Σαν πρώτη ιδέα είναι να φτιάξω εναν 2D πίνακα (3χ Ν) οπου Ν=stations και αν έχω εκει μέσα τις 3αδες των αριθμων και να τις πειραζω με την σειρα που και σε δευτερο χρόνο τις αποθηκεύω σε 3d πινακα (3 x N x i ). Αν ήξερα εξ αρχής πόσες 3αδες θα είχα μπορώ να το κάνω με πολλές for loops η μία μέσα στην άλλη. Αλλά τώρα απο την στιμγή που έχω user input που καθορίζει το πόσες είναι.. Εχω ΧΑΘΕΙ τελείως...θα σπάσει το κεφάλι μου αλήθεια.. Είχα ξεκινήσει να το κάνω στην C++ (ήταν η μόνη γλώσσα που ήξερα να γράφω κάποιο κώδικα) και τώρα που κάνω κάποια curses στην Python είδα ότι είναι για πολλούς και διάφορους λόγους πιο έυκολο να το κάνω στην python. Δεν ξέρω αν θα σε βοηθήσει το σχόλιο μου αλλά το καλύτερο όπλο του προγραμματιστή είναι το χαρτί. Άσε στην άκρη την γλώσσα και πιάσε το χαρτί να καταγράψεις τον αλγόριθμο , όχι σε ψευδοκώδικα αλλά σε απλή γλώσσα Αν το καταφέρεις τότε θα είναι εύκολη η λύση σε όποια γλώσσα θέλεις Κάνε μία προσπάθεια αν θες και γράψε μας να δούμε Υ.γ. δεν στο λέω γιατί έχω βίτσια , 15 χρόνια μετά εγώ βγάζω χαρτί όταν κολλάω και θέλω να βάλω την σκέψη μου σε μία σειρά Ακόμη και την λύση αν δεν βρεις , θα καταλάβεις που έχεις πρόβλημα Δείχνει και από την περιγραφή ότι είναι λίγο μπερδεμένα αυτά που γράφεις , στο χαρτί θα τα ξεμπερδεψεις 1
silenoz66 Δημοσ. 27 Νοεμβρίου 2020 Μέλος Δημοσ. 27 Νοεμβρίου 2020 1 ώρα πριν, tsofras είπε Δεν ξέρω αν θα σε βοηθήσει το σχόλιο μου αλλά το καλύτερο όπλο του προγραμματιστή είναι το χαρτί. Άσε στην άκρη την γλώσσα και πιάσε το χαρτί να καταγράψεις τον αλγόριθμο , όχι σε ψευδοκώδικα αλλά σε απλή γλώσσα Αν το καταφέρεις τότε θα είναι εύκολη η λύση σε όποια γλώσσα θέλεις Κάνε μία προσπάθεια αν θες και γράψε μας να δούμε Υ.γ. δεν στο λέω γιατί έχω βίτσια , 15 χρόνια μετά εγώ βγάζω χαρτί όταν κολλάω και θέλω να βάλω την σκέψη μου σε μία σειρά Ακόμη και την λύση αν δεν βρεις , θα καταλάβεις που έχεις πρόβλημα Δείχνει και από την περιγραφή ότι είναι λίγο μπερδεμένα αυτά που γράφεις , στο χαρτί θα τα ξεμπερδεψεις Εχεις πολυ δίκαιο σε ότι γράφεις και σε ευχαριστώ. Προφανώς και εγώ πριν ξεκινήσω να το προγραμματίζω έκατσα και τα έγραψα όλα σε χαρτί. Εγώ η αλήθεια είναι ότι ξέρω τι θέλω να κάνω , (τώρα αν το εξήγησα άσχημα είναι άλλο θέμα). Απλα όταν έχεις πολυ μικρή εμπειρία σε προγραμματισμό είναι φυσικό και επόμενο να ακολουθείς λάθος διαδρομές/λύσεις. Θα ήθελα να έχω καλύτερες γνώσεις πάνω σε looping/indexes και σε iritate σε listes κτλ κτλ Αν έχει όρεξη κάποιος να ασχοληθεί να με βοηθήσει εννοείται μπορώ να σας ξανα γράψω εκ νέου το πρόβλημα πιο αναλυτικά και κατανοητά. 1
tsofras Δημοσ. 27 Νοεμβρίου 2020 Δημοσ. 27 Νοεμβρίου 2020 30 λεπτά πριν, silenoz66 είπε Εχεις πολυ δίκαιο σε ότι γράφεις και σε ευχαριστώ. Προφανώς και εγώ πριν ξεκινήσω να το προγραμματίζω έκατσα και τα έγραψα όλα σε χαρτί. Εγώ η αλήθεια είναι ότι ξέρω τι θέλω να κάνω , (τώρα αν το εξήγησα άσχημα είναι άλλο θέμα). Απλα όταν έχεις πολυ μικρή εμπειρία σε προγραμματισμό είναι φυσικό και επόμενο να ακολουθείς λάθος διαδρομές/λύσεις. Θα ήθελα να έχω καλύτερες γνώσεις πάνω σε looping/indexes και σε iritate σε listes κτλ κτλ Αν έχει όρεξη κάποιος να ασχοληθεί να με βοηθήσει εννοείται μπορώ να σας ξανα γράψω εκ νέου το πρόβλημα πιο αναλυτικά και κατανοητά. Για να σου γράφουμε έχουμε όρεξη να βοηθήσουμε , ειδικά αν βλέπουμε κάποιον που πραγματικά θέλει να μάθει και δεν θέλει απλά μία λύση έτοιμη στο πιάτο. Εγώ προσωπικά δεν ξέρω καν python αλλά ευχαρίστως να βοηθήσω αν μπορώ ή κάποιος άλλος με το αλγοριθμικό κομμάτι Οπότε πάρε χαρτί και πές μας τι έχεις κάνει, αν σου είναι εύκολο να μας γράψεις και το πρόβλημα κάπως καλύτερα για να το καταλάβουμε και εμείς 1
silenoz66 Δημοσ. 27 Νοεμβρίου 2020 Μέλος Δημοσ. 27 Νοεμβρίου 2020 Λοιπόν έχουμε και λέμε: Εχουμε ένα σύστημα απο σταθμούς (σκέψου τους σαν μονάδες (εργοστάσια, αποθήκες, retailers κλτ)). Αυτό το σύστημα έχει πολλούς παραμέτρους οι οποιοι περιγράφουν το σύστημα : Οι παράμετροι για το κάθε ύπο-συστημα(ας τους πούμε stations) είναι: 1) quantity_order = (το μέγεθος της παραγγελίας που περιμένουμε) 0 : αν δν περιμένουμε or # του quantity που περιμένουμε 2) inventory_level=(πόσο απόθεμα έχουμε στον σταθμό αυτό) 0¨αν δν έχουμε or # το απόθεμα που έχουμε 3) order_status= 0 : αν δν περιμένουμε order , 1: αν περιμένουμε order και βρίσκεται σε 1η φάση , 2: αν περιμένουμε order και βρίσκεται σε 2η φάση Στo συνολικό σύστημα για να περιγράψουμε 1 μοναδική κατάσταση αρκεί να περιγράψουμε το τι συμβαίνει σε κάθε υποσύστημα.: Δηλαδή ο 1s station έχει #quantity #inventory #order_status, ο 2os station έχει #quantity #inventory #order_status κ.ο.κ. Εμεις την κάθε κατάσταση της δίνουμε ένα ''ονομα'' δλδη: 002 100 020 για να καταλάβουμε σε ποιά κατάσταση είμαστε.. τι είναι αυτά τα νούμερα πολυ απλο: η κάθε τριάδα αριθμών αντιπροσοπέυει και έναν station και το κάθε νούμερο την μία απο τις 3 μεταβλητές τους (1o νούμερο quantity_order, 2o νούμερο inventory_level , 3ο νούμερο order_status) Αρα στο απλό παράδειγμα με 2 station, μια τυχαία κατάσταση 001 012 σημαίνει: στον πρώτο station: quantity=0 inventory=0 order status=1, στον δευτερο station: quanity=0 inventory=1 order_status=2. Οπως καταλβαίνουμε ένα τέτοιο σύστημα με τόσες πολλές μεταβλητές έχει ΑΠΕΙΡΟΥΣ δυνατούς συνδιασμούς. ΟΜΩΣ δεν είναι όλοι εφικτοί στην πραγματικότητα. Στην μαρκοβιανή ανάλυση αφτού του συστήματος λοιπόν υπάρχει ένας γνωστός πίνακας (Πινακας μετάβασης κατάστασης) , o οποίος μας λέει με τι ρυθμό πάς απο μία κατάσταση σε μια άλλη. Εγώ καλούμαι λοιπόν να φτίαξω ένα πρόγραμμα το οποίο θα κατασκεύαζει αυτό τον πίνακα ανάλογα με την είσοδο το user . Ο οποίος θα μας δίνει για αρχή πόσους σταθμούς θέλει να έχει και μετέπειτα διάφορες μεταβλητές απαραίτητες. Αρά η τελική δομή για αυτό είναι ένας πίνακας μεγέθους n x n όπου n= οι συνολικές εφικτές καταστάσεις Η φώτο είναι ένα ενδικτικό παράδειγμα του τελικού πίνακα που θέλω να φτιάξω (ξέρω ξέρω γιατί εδώ κάποιοι αριθμοι αντι για 3αδα είναι 2 ή και 1 καποιες φορές(είναι για συντομία)) Αρα για να το κάνουμε πιο απλό το πρόβλημα το χωρίζω στα εξής υπο-προβλήματα: 1) Δημιουργία αλγόριθμου που κάνει generate όλους τους δυνατούς συνδιασμούς(ΕΔΩ ΕΧΩ ΚΑΙ ΤΟ ΠΡΟΒΛΗΜΑ!) 2) Ελεγχος κάθε μίας απο αυτές αν είναι εφικτές (Αυτό δεν μου έιναι καθόλου δύσκολο, έχω σχεδόν ετοιμη function στην c++) 3) Αν η κατάταση αυτή είναι εφικτή αποθήκευση της σε 3D πίνακα (3 x stations x states) 4) Δημιουργία πίνακα nxn με όλες τις εφικτές καταστάσεις 5) Γέμισμα nxn πίνακα (αυτός στην φωτό πχ) νομίζω θα τα καταφέρω εδώ (μην σας απασχολεί πως πάμε απο μία κατάσταση σε μία αλλη) Αρα το μέγιστο πρόβλημα μου είναι στο 1) υπο-πρόβλημα , πώς θα κάνω έναν αλγόριθμο που θα κάνει generate όλους τους δυνατούς συνδιασμούς και μάλιστα με την σειρά που το θέλω, η οποία είναι αυξηση των αριθμών απο τα δεξιά προς τα αριστερά και κάθε φορά που αυξάνουμε έναν αριμό στα δεξιά μας, ξανα λουπάρουμε ολου΄ς τους αριθμούς δεξιά. Παράδειγμα 000 001 002 010 011 012 020 021 022 100 101 102 110 κ.ο.κ. Το ξέρω κούρασα είναι πολλά αυτά που έχω να κάνω και εγώ έχω κουραστεί πραγματικά στην σκέψη και μόνο. Αν κάποιος κατάφερε και το διάβασε όλο και κατάλαβε μέσες άκρες τοτε Η Ρ Ω Α Σ !!!! 1
marios28 Δημοσ. 27 Νοεμβρίου 2020 Δημοσ. 27 Νοεμβρίου 2020 (επεξεργασμένο) 1 ώρα πριν, silenoz66 είπε .... πώς θα κάνω έναν αλγόριθμο που θα κάνει generate όλους τους δυνατούς συνδιασμούς και μάλιστα με την σειρά που το θέλω, η οποία είναι αυξηση των αριθμών απο τα δεξιά προς τα αριστερά και κάθε φορά που αυξάνουμε έναν αριμό στα δεξιά μας, ξανα λουπάρουμε ολου΄ς τους αριθμούς δεξιά. Παράδειγμα 000 001 002 010 011 012 020 021 022 100 101 102 110 κ.ο.κ. Σχετικά με αυτό που ζητάς στο παράδειγμα... Βρίσκεις τον maximum (αν υπάρχει τέτοιος) στον δεκαδικό (3 * 3 * 3.... όσα ψηφία έχεις).. Μέχρι να φτάσεις στον maximum --> (σε κάθε επανάληψη) τυπώνεις τον αριθμό (ή κάνεις ό,τι θες εσύ) αφού τον μετατρέπεις στο τριαδικό. Ψάξε για μια κατάλληλη function ή φτιάξε τη δική σου στη γλώσσα της επιλογής σου: Ternary number system or Base 3 numbers Επεξ/σία 27 Νοεμβρίου 2020 από marios28 1
virxen75 Δημοσ. 28 Νοεμβρίου 2020 Δημοσ. 28 Νοεμβρίου 2020 (επεξεργασμένο) σε Python3 https://trinket.io/python3/4e720679ec quantity_order = 3 inventory_level=3 order_status= 3 for i in range(quantity_order): for j in range(inventory_level): for g in range(order_status): print(i,j,g) Επεξ/σία 28 Νοεμβρίου 2020 από virxen75 1
tsofras Δημοσ. 28 Νοεμβρίου 2020 Δημοσ. 28 Νοεμβρίου 2020 4 ώρες πριν, silenoz66 είπε Λοιπόν έχουμε και λέμε: Εχουμε ένα σύστημα απο σταθμούς (σκέψου τους σαν μονάδες (εργοστάσια, αποθήκες, retailers κλτ)). Αυτό το σύστημα έχει πολλούς παραμέτρους οι οποιοι περιγράφουν το σύστημα : Οι παράμετροι για το κάθε ύπο-συστημα(ας τους πούμε stations) είναι: 1) quantity_order = (το μέγεθος της παραγγελίας που περιμένουμε) 0 : αν δν περιμένουμε or # του quantity που περιμένουμε 2) inventory_level=(πόσο απόθεμα έχουμε στον σταθμό αυτό) 0¨αν δν έχουμε or # το απόθεμα που έχουμε 3) order_status= 0 : αν δν περιμένουμε order , 1: αν περιμένουμε order και βρίσκεται σε 1η φάση , 2: αν περιμένουμε order και βρίσκεται σε 2η φάση Στo συνολικό σύστημα για να περιγράψουμε 1 μοναδική κατάσταση αρκεί να περιγράψουμε το τι συμβαίνει σε κάθε υποσύστημα.: Δηλαδή ο 1s station έχει #quantity #inventory #order_status, ο 2os station έχει #quantity #inventory #order_status κ.ο.κ. Εμεις την κάθε κατάσταση της δίνουμε ένα ''ονομα'' δλδη: 002 100 020 για να καταλάβουμε σε ποιά κατάσταση είμαστε.. τι είναι αυτά τα νούμερα πολυ απλο: η κάθε τριάδα αριθμών αντιπροσοπέυει και έναν station και το κάθε νούμερο την μία απο τις 3 μεταβλητές τους (1o νούμερο quantity_order, 2o νούμερο inventory_level , 3ο νούμερο order_status) Αρα στο απλό παράδειγμα με 2 station, μια τυχαία κατάσταση 001 012 σημαίνει: στον πρώτο station: quantity=0 inventory=0 order status=1, στον δευτερο station: quanity=0 inventory=1 order_status=2. Οπως καταλβαίνουμε ένα τέτοιο σύστημα με τόσες πολλές μεταβλητές έχει ΑΠΕΙΡΟΥΣ δυνατούς συνδιασμούς. ΟΜΩΣ δεν είναι όλοι εφικτοί στην πραγματικότητα. Στην μαρκοβιανή ανάλυση αφτού του συστήματος λοιπόν υπάρχει ένας γνωστός πίνακας (Πινακας μετάβασης κατάστασης) , o οποίος μας λέει με τι ρυθμό πάς απο μία κατάσταση σε μια άλλη. Εγώ καλούμαι λοιπόν να φτίαξω ένα πρόγραμμα το οποίο θα κατασκεύαζει αυτό τον πίνακα ανάλογα με την είσοδο το user . Ο οποίος θα μας δίνει για αρχή πόσους σταθμούς θέλει να έχει και μετέπειτα διάφορες μεταβλητές απαραίτητες. Αρά η τελική δομή για αυτό είναι ένας πίνακας μεγέθους n x n όπου n= οι συνολικές εφικτές καταστάσεις Η φώτο είναι ένα ενδικτικό παράδειγμα του τελικού πίνακα που θέλω να φτιάξω (ξέρω ξέρω γιατί εδώ κάποιοι αριθμοι αντι για 3αδα είναι 2 ή και 1 καποιες φορές(είναι για συντομία)) Αρα για να το κάνουμε πιο απλό το πρόβλημα το χωρίζω στα εξής υπο-προβλήματα: 1) Δημιουργία αλγόριθμου που κάνει generate όλους τους δυνατούς συνδιασμούς(ΕΔΩ ΕΧΩ ΚΑΙ ΤΟ ΠΡΟΒΛΗΜΑ!) 2) Ελεγχος κάθε μίας απο αυτές αν είναι εφικτές (Αυτό δεν μου έιναι καθόλου δύσκολο, έχω σχεδόν ετοιμη function στην c++) 3) Αν η κατάταση αυτή είναι εφικτή αποθήκευση της σε 3D πίνακα (3 x stations x states) 4) Δημιουργία πίνακα nxn με όλες τις εφικτές καταστάσεις 5) Γέμισμα nxn πίνακα (αυτός στην φωτό πχ) νομίζω θα τα καταφέρω εδώ (μην σας απασχολεί πως πάμε απο μία κατάσταση σε μία αλλη) Αρα το μέγιστο πρόβλημα μου είναι στο 1) υπο-πρόβλημα , πώς θα κάνω έναν αλγόριθμο που θα κάνει generate όλους τους δυνατούς συνδιασμούς και μάλιστα με την σειρά που το θέλω, η οποία είναι αυξηση των αριθμών απο τα δεξιά προς τα αριστερά και κάθε φορά που αυξάνουμε έναν αριμό στα δεξιά μας, ξανα λουπάρουμε ολου΄ς τους αριθμούς δεξιά. Παράδειγμα 000 001 002 010 011 012 020 021 022 100 101 102 110 κ.ο.κ. Το ξέρω κούρασα είναι πολλά αυτά που έχω να κάνω και εγώ έχω κουραστεί πραγματικά στην σκέψη και μόνο. Αν κάποιος κατάφερε και το διάβασε όλο και κατάλαβε μέσες άκρες τοτε Η Ρ Ω Α Σ !!!! Είδες πόσο ωραία και κατανοητά είναι τώρα ? Ωραίος TS, εγώ θα σε πήγαινα χεράκι χεράκι αλλά σου έγραψαν την λύση σε Python για το κομμάτι που σε μπερδευε , υπόψιν ότι η range μετράει από 0 μέχρι n-1 οπότε το range (3) είναι ουσιαστικά 0,1,2 Αν το κατάλαβες από την λύση τότε οκ, αν όχι πες να το εξηγήσουμε 1
marios28 Δημοσ. 28 Νοεμβρίου 2020 Δημοσ. 28 Νοεμβρίου 2020 6 ώρες πριν, tsofras είπε Είδες πόσο ωραία και κατανοητά είναι τώρα ? Ωραίος TS, εγώ θα σε πήγαινα χεράκι χεράκι αλλά σου έγραψαν την λύση σε Python για το κομμάτι που σε μπερδευε , υπόψιν ότι η range μετράει από 0 μέχρι n-1 οπότε το range (3) είναι ουσιαστικά 0,1,2 Αν το κατάλαβες από την λύση τότε οκ, αν όχι πες να το εξηγήσουμε Αν έχω καταλάβει καλά, δε ζητάει αυτό που δόθηκε παραπάνω στην Python. Αυτό (για τις for), από ό,τι έγραψε αρχικά το ήξερε. O αριθμός δηλαδή δεν τερματίζει στον 222, αλλά ο μέγιστος εξαρτάται από τον χρήστη. Δηλαδή αν δοθούν 4 σταθμοί από το χρήστη τότε ο μέγιστος θα είναι ο 222222222222. Θέλει να τυπώνονται δηλαδή (έτσι ώστε να παίρνει σε κάθε επανάληψη το output και να το εισάγει σε τρίτη μέθοδο) όλα οι ενδιάμεσοι αριθμοί. Αυτό κατάλαβα εγώ. Του έγραψα τι να κάνει παραπάνω. 1
silenoz66 Δημοσ. 28 Νοεμβρίου 2020 Μέλος Δημοσ. 28 Νοεμβρίου 2020 Καλημέρα σε όλους και σας ευχαριστώ πολύ για τις απαντήσεις!! 8 ώρες πριν, virxen75 είπε σε Python3 https://trinket.io/python3/4e720679ec quantity_order = 3 inventory_level=3 order_status= 3 for i in range(quantity_order): for j in range(inventory_level): for g in range(order_status): print(i,j,g) Δυστυχώς αυτό κάνει αυτό που θέλουμε, αλλά για μόνο μια 3αδα αριθμών! Aρα ο user θα εισάγει πόσες 3αδες θα έχουμε με λίγα λόγια. και ΑΚΟΜΗ πιο σημαντικό ο ΚΑΘΕ ΑΡΙΘΜΟΣ απο αυτούς δεν έχει range(3) o καθένας αριθμός απο τις τριάδες θα έχει ΔΙΚΟ του range (πάλι απο τις εισόδους του user), ΜΟΝΟ ο 3ος αριθμος απο την τριάδα πάει μεχρι 2. 51 λεπτά πριν, marios28 είπε Αν έχω καταλάβει καλά, δε ζητάει αυτό που δόθηκε παραπάνω στην Python. Αυτό (για τις for), από ό,τι έγραψε αρχικά το ήξερε. O αριθμός δηλαδή δεν τερματίζει στον 222, αλλά ο μέγιστος εξαρτάται από τον χρήστη. Δηλαδή αν δοθούν 4 σταθμοί από το χρήστη τότε ο μέγιστος θα είναι ο 222222222222. Θέλει να τυπώνονται δηλαδή (έτσι ώστε να παίρνει σε κάθε επανάληψη το output και να το εισάγει σε τρίτη μέθοδο) όλα οι ενδιάμεσοι αριθμοί. Αυτό κατάλαβα εγώ. Του έγραψα τι να κάνει παραπάνω. 7 ώρες πριν, tsofras είπε Μάριε θα ψάξω σήμερα αυτό που έγραψες όχι όμως οτι κατάλαβα και κάτι Xτες μιλούσα με έναν φίλο μου προγραμματιστή μπας και βοηθήσει κάτι μου πέταξε και αυτός ίσως βρίσκεται λύση με τους τριαδικούς αλλά δεν κάναμε κάτι επι αυτού. Αν πιστεύεις ότι αυτό που θέλω γίνεται έτσι όπως το είπες , θα δουλέψω αυτή την ιδέα σήμερα
marios28 Δημοσ. 28 Νοεμβρίου 2020 Δημοσ. 28 Νοεμβρίου 2020 (επεξεργασμένο) 4 ώρες πριν, silenoz66 είπε Μάριε θα ψάξω σήμερα αυτό που έγραψες όχι όμως οτι κατάλαβα και κάτι Xτες μιλούσα με έναν φίλο μου προγραμματιστή μπας και βοηθήσει κάτι μου πέταξε και αυτός ίσως βρίσκεται λύση με τους τριαδικούς αλλά δεν κάναμε κάτι επι αυτού. Αν πιστεύεις ότι αυτό που θέλω γίνεται έτσι όπως το είπες , θα δουλέψω αυτή την ιδέα σήμερα Αυτά που σου είπα παρακάτω σε σχεδόν έτοιμη λύση. Τα δουλεύεις λίγο στην γλώσσα που θες. Main() { [Ρωτάς τον χρήστη πόσους σταθμούς θέλει... Έστω ότι δίνει Ν] [Τον maximum τον βρίσκεις ως εξής] maximum = Math.Pow(3, 3*Ν); [εδώ θα χρησιμοποιήσεις μια αντίστοιχη συνάρτηση για να βρεις τον maximum.. 3*3*3....*3 ή θα φτιάξεις τη δική σου, αν δεν έχει η γλώσσα] for ( i = 0; i < maximum; i++) { Μετατροπή_Δεκαδικού_Σε_Τριαδικό(i); [Στο σημείο τυπώνεται ο τριαδικός αριθμός, ή μπορείς να δουλέψεις όπως θες την παρακάτω μέθοδο (μετατροπή σε τριαδικό).. π.χ. να σου επιστρέφεται string ή οποιουδήποτε τύπου είσοδο θες να στέλνεις στη συνάρτηση τη δική σου ] } } void Μετατροπή_Δεκαδικού_Σε_Τριαδικό(int N) { if (N == 0) [τύπωσε 0]; int x = N % 3; N /= 3; if (x < 0) N += 1; Μετατροπή_Δεκαδικού_Σε_Τριαδικό(N); [αναδρομικά σχηματίζεται ο αριθμός] if (x >= 0) [τύπωσε x] } Επεξ/σία 28 Νοεμβρίου 2020 από marios28 1
silenoz66 Δημοσ. 28 Νοεμβρίου 2020 Μέλος Δημοσ. 28 Νοεμβρίου 2020 Τέλειος!! Έχω βγει για ένα #6 τώρα , θα το δουλέψω με το που γυρίσω σπίτι!! Σε ευχαριστώ πολύ για την βοήθεια και τον χρόνο σου.
marios28 Δημοσ. 28 Νοεμβρίου 2020 Δημοσ. 28 Νοεμβρίου 2020 (επεξεργασμένο) Μία παρατήρηση. Ο maximum στο δικό σου δεν είναι ο N σ' αυτό που σου έγραψα. Στο διόρθωσα επάνω. Το N είναι όσα ψηφία έχεις. Δηλαδή αν έχεις 2 σταθμούς έχεις 6, αν δοθούν 3 σταθμοί έχεις 9 κ.ο.κ. Για να βρεις τον μέγιστο πρέπει να υψώσεις το 3 στο 3*αριθμό σταθμών. Αν έχω καταλάβει καλά τι ζητάς, θα σε καλύψουν τα παραπάνω. Επεξ/σία 28 Νοεμβρίου 2020 από marios28
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα