redalert19882000
Νεοφερμένος
Ναι έχετε δίκιο σε αυτά που είπατε...
Thats true...Kαι όσο για τις γνώσεις μου πάνω στον προγραμματισμό απλά θα σας δώσω αυτό το συγκεκριμένω quote
I know that I am intelligent, because I know that I know nothing.
Ακόμα δεν γνωρίζω τίποτα...
Cya
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Σε αυτά που είπες έχεις δίκιο, αλλά και πάλι ερχόμαστε στα προηγούμενα
@Eruyomo
Δε μπορώ να σου δώσω το συγκεκριμένο link, ακόμα κι αν κάνεις εγγραφή στην παραπάνω ιστοσελίδα θα πρέπει να λύσεις κάποια άλλα προβλήματα προκειμένουν να ξεκλειδώσεις αυτό το πρόβλημα...
Δε μπορώ να καταλάβω τι σε κάνει να πιστεύεις ότι το πρόβλημα δεν λύνεται έτσι. Πάρε ένα φύλο χαρτί και ζωγράφισε τα κυβάκια και προσπάθησε να πετύχεις το μέγιστο ύψος. Ύστερα δοκίμασε τον αλγόριθμο που δίνω και δες αν το έχω σωστα
Όχι το hellenico δεν αξιολογεί ψευδοκώδικα, αξιολογεί μόνο αλγόριθμους σε C/C++,Pascal. Εγώ απλά έκανα την μετατροπή, για να μην δώσω εδώ C πρόγραμμα..
Αν θες όντως την εκφώνηση της άσκησης δεν έχεις παρα να μου στείλεις ένα pm, όπως επίσης και την λύση της άσκησης αυτής σε C.
Στο hellenico όλα τα προγράμματα που φιάχνεις διαβάζουν από αρχείο κάποια δεδομένα όχι με scanf... Όταν εσύ ανεβάζεις το προγράμμα σου το πρόγραμμα που έχουν φιάξει στο ελέγχουν με 10 διαφορετικά αρχεία την ίδια ακριβώς ώρα.
Όντως έχουμ βγει εντελώς off-topic...Όποιος ενδιαφέρεται ή έχει απορίες ή έχει "να μου την πει" ας τα πούμε με pm ή έστω με κανένα instant messaging
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Το ανέφερα ήδη ότι το πρόβλημα αυτό δεν έχει σχέσης με πανελλίνιες, είναι εκτός, το ξέρω. Για κάποιον όμως που έχει καταβάλει την φιλοσοφία του προγραμματισμού είναι καλό να εξασκηθεί και πάνω σε αυτό το πρόβλημα. Μια παραπάνω άσκηση δεν έβλαψε ποτέ κανένα...
Όσο για τις οικονομικές γνώσεις φυσικά και αποτελέι ειρωνία, αλλά σίγουρα θα συμφνωνήσεις ότι το 80% τον ασκήσεων που υπάρχουν στο βιβλίο και στα βοηθητικά έχουν να κάνουν με χρεώσεις,επιδόματα,επιτόκια κτλ. Κατανοώ τον προβληματισμό όλων εδώ, προσωπικά όμως την άσκηση αυτή την έβαλα για να ξεφύγουμε, όσοι θέλουμε, απο την καθημερινή ρουτίνα των ασκήσεων αυτών. Ίσως όμως να έχετε και δίκιο στο ότι η άσκηση αυτή είναι αρκετά δύσκολη για το πνεύμα τον εξετάσεων. Τότε οκ πάω πάσο.
@Eruyomo
Η άσκηση αυτή όπως είχα αναφέρει σχετικά βρίσκεσαι σε μια ιστολίδα στο hellenico και πιο συγκεκριμένα εδώ -> https://www.hellenico.gr/
Είναι μια ιστοσελίδα στην οποία υπάρχουν πολλά προβλήματα για τον μαθητή και το πιο σπουδαίο είναι ότι τα προβλήματα ελέγχονται αυτόματα απο κατάλληλο πρόγραμμα. Θέλω να καταλήξω στο ότι το πρόβλημα αυτό το ανέβασα και αξιολογήθηκε με 10 διαφορετικές μετρήσεις στις οποίες τα αποτέλεσματα ήταν 100% επιτυχίας. Τώρα να το έχουν λύσει λάθος 3-4 άτομα που έχουν αναλάβει αυτή την εργασία το βρίσκω σχεδόν παράλογο.
Και τέλος όσο για την επίδοση του αλγορίθμου, φυσικά καλός προγραμματιστής είναι αυτός που ξέρει να φιάχνει σωστό κώδικα και τηρεί όλους τυπικούς άγραφους κανόνες προγραμματισού(οι οποιοι παρεπτιπτόντως είναι πολλοί).
Αν μιλούσατε και οι 2 γενικα για την απόδοση αλγορίθμου συμφωνώ και απαυξάνω, αν μιλήσατε όμως για την απόδηση του αλγόριθμου που πόσταρα προηγουμένως, ακόμα και με 100000 κύβους ολοκληρώνεται σε 0 σεκοντς.(Γραμμένο σε C και με βάση τις αξιολογήσεις του hellenico)...
Τέλος, η απόδοση ενός αλγόριθμου επιμένω πως δεν είναι κάτι που πρέπει να έχουν στο μιαλό τους οι μαθητές αυτή την στιγμή. Για να μπορέσεις να βελτιστποιήσης με όλη την σημασία της λέξης, ένα αλγόριθμο θα πρέπει να μπεις και στο κλίμα φιλοσοφίας του προγραμματισμού που δυστυχώς δε το έχουν οι περισσότεροι.(Εννοώ για την 3η λυκείου)...
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Είναι Ν (1<=Ν<=100000) και Κ (1<=Κ<=1000).
Έπειτα, το 1x1x1 στην εκφώνηση προϊδεάζει για τριδιάστατο χώρο (οπου θα μπορείς να ανέβεις σκάλες τόσο κινούμενος στο (x,y) όσο και στο (z,y).
Τέλος, ακόμα και για 2Δ χώρο, μπορείς να αποδείξεις οτι η λύση σου είναι σωστή; (οτι δίνει το μέγιστο ύψος
Με βάση τα παραδείγματα που έχουν δωθεί στην εικόνα μπορείς να καταλάβεις τι ακριβώς χρειάζεται το πρόβλημα
Υστερα, για να έχει νόημα το πρόβλημα, θα πρεπε να υπάρχει και κάποιο άνω φράγμα στην απόδοση. Πχ δεν είναι το ίδιο καλές μια λύση που λύνει το πρόβλημα σε Θ(N) βήματα και μια που το λύνει σε Θ(2^Ν).
Προφανώς και ισχύει αυτό που λες. Αλλά η απόδοση ενος αλγόριθμου ειδικά σε αυτή την τάξη είναι κάτι που δεν μας καίει τόσο πολύ. Ας λύσουμε το πρόβλημα σωστά και βλέπουμε
Φιλικά
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Φίλε μου, επειδή έχεις ένα απαξιωτικό υφάκι απέναντι στους συμμαθητές σου και το μάθημα, κι επειδή εσύ φαίνεται να κατέχεις άριστα τον προγραμματισμό να σου βάλω κι εγώ μια άσκηση ανάλογη του επιπέδου σου, που πρόκειται για "ΠΡΑΓΜΑΤΙΚΟ προγραμματισμό", κι όχι για κλεμμένα προγραμματάκια επιπέδου ολυμπιάδας που φτιάχνουν σκαλίτσες που "νομίζεις ότι λέγονται προγραμματισμός":
Σε καλώ λοιπόν να φτιάξεις ένα compiler για τη γλώσσα alpha: Περισσότερες πληροφορίες και πλήρης εκφώνηση εδώ https://www.csd.uoc.gr/~hy340/assignments.html
Προς όλους τους υπόλοιπους: Μήν χάνετε τον χρόνο σας (από αυτό που στην 3η Λυκείου δεν έχετε) να ασχολείστε με σκαλίτσες. Είναι εκτός κλίματος εξετάσεων ΠΑΝΤΕΛΩΣ. :nono: Αν πάλι σας περισσεύει τόσος χρόνος, γιατί όχι να ασχοληθείτε και με τον compiler που στέλνω εγώ
Καλησπέρα... Δεν έχω κανένα απαξιωτικό υφάκι και λάθος μου αν αυτό δείχνω. Προς τους συμμαθητές μου κανένα προβλημα και πότε δεν νομίζω να ανέφερα κάτι τέτοιο. Πρόβλημα έχω με το μάθημα αυτό, μπορεί να μην φταίει και κανένας, όμως προσωπικά θέλω να ξεφύγω απο τις ασκήσεις που γίνονται γι αυτό και πρότεινα αυτή...
Δεν νομίζω να διαφωνείτε οτι το μάθημα αυτό στηρίζεται πιο πολύ σε οικονομικές γνώσεις παρά σε προγραμματισμό. Τουλάχιστον μέχρι κάποιο σημείο ναι... Αυτό σίγουρα ισχύει. Όπως και να έχει όμως η άσκηση αυτή μπορεί να μην είναι εύκολη, μπορεί να μην είναι βατή με τις εξετάσεις, είναι όμως μια καλή άσκηση και τα παιδιά μπαίνουν στο πραγματικό κλίμα του τι σημαίνει προγραμματισμός. Προσωπικά αν ξέρεις να λύνεις μια τέτοια άσκηση τότε είναι σχεδόν σίγουρο πως και οι εξετάσεις θα είναι γελοίες. Αν υπάρχει βέβαια και η απαιτούμενη προσοχή και ωριμότητα...
Το συγκεκριμένο πρόβλημα δεν είναι επιπέδου ολυμπιάδας σε καμία περίπτωση. Δεν νομίζω ότι είναι κάτι το απίστευο. Η εκφώνηση λέει πολύ πιο πολλά σε σχέση με τον κώδικα που πρέπει να γράψεις...
Όχι κ.teacher () δεν είπα ότι είμαι ο τέλειος, ο super duper ouaou αλλά κάποιες παραπάνω γνώσεις τις έχω μιας και ασχολούμε χρόνια με τον προγραμματισμό. Compiler δεν μπορώ να φτιάξω, απαιτεί πολύ διάβασμα και δεν νομίζω ότι είανι κάτι που θα με βοηθήσει...
Αφού θεωρείται ότι το παραπάνω πρόβλημα δεν είανι προγραμματισμός τότε σίγουρα συμφωνείτε σε αυτό που είπα και το οποίο σχολιάσατε... Πέρα όμως από αυτό, μια χαρά προγραμματισμός λέγεται. Δεν είναι προχωρημένος όμωςπου "νομίζεις ότι λέγονται προγραμματισμός"
Και τέλος, το χειρότερο πραμα για μένα και νομίζω ότι θα συμφωνήσουμε σε αυτό είναι πως πολλοί καθηγητές δεν ξέρουν να λύνουν τέτοια ήδους προβλήματα. Προσωπικά μου φαίνεται εντελώς γελείο κάποιος να ονομάζει τον ευατό του προγραμματιστή ενώ δεν έχει γνώσεις σε καμία γλώσσα προγραμματισμού, γνωρίζει μόνο ψευδοκώδικα. Εγώ αυτό τον άνθρωπο μόνο προγραμματιστή δε το θεωρώ. Η αρχική μου εισαγωγή πήγαινε σε μια συγκεκριμένη και δεν αφορά το όλο πλήθος...
Ίσως οι αντιλήψεις μου να είναι αντίθετες απο αυτό που υποστηρίζουν μερικοί, αλλά χαίρομαι γιατί τις είπα μια προς μια. Ας μην χαλάσουμε όμως το Thread με τα offtopics και τα flames... Ας μην την προσπαθήσει κανείς την άσκηση, ούτε θα στεναχωρηθώ ούτε τίποτα.
Εδώ είναι η λύση της ασκήσης, όποιος θέλει να την προσπαθήσει ας μη το δει...
Αλγόριθμος σκάλα
Διάβασε Ν,Κ
c[1] <- Ν
Για i από 2 μέχρι Ν
c[i] <- 0
Τέλος_επανάληψης
skales <- 1
Όσο (c[1]-c[2]) > Κ επανάλαβε
Για i από 1 μέχρι skales
Αν ((c[i]-c[i+1]) > Κ) τότε
c[i] <- c[i] - 1
c[i+1] <- c[i+1] + 1
τέλος_αν
Τέλος_επανάληψης
Αν c[skales] > 0 τότε skales <- skales + 1
Τέλος_επανάληψης
Εμφάνισε c[1]
Τέλος σκάλα
Δν νομίζω ότι είναι κάτ το εξωπραγματικό...
Αυτά απο μένα
φιλικά
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Οι ασκήσεις αυτές απευθύνονται και σε καθηγητές. Τις έχω λύσει με 100% βαθμό επιτυχίας μόνος. Οι ασκήσεις είναι οι παρακάτω. Copyrighted Hellenico(Αλλαγές απο μένα)
Σου έχουν δωθεί Ν κυβοι 1x1x1 τους οποίους θες να τους στοιβάξεις με τέτοιο τρόπο έτσι ώστε να δημιουργήσεις μια σκάλα. Στόχος σου είναι να χρησιμοποιήσεις αυτή τη σκάλα για να φτάσεις ένα συγκεκριμένο ύψος. Πρέπει να φτιάξεις τη σκάλα με τέτοιο τρόπο ώστε να μη χρειαστεί πηδώντας από τη μία σκάλα στην άλλη να ανέβεις ύψος μεγαλύτερο από Κ κύβους.
Έστω Η(Ν,Κ) το μέγιστο ύψος που μπορείς να ανέβεις χρησιμοποιώντας Ν κύβους αν μπορείς να ανεβαίνεις το πολύ Κ κύβους τη φορά. Η παρακάτω εικόνα δείχνει τη λύση για μικρές τιμές του Ν και του Κ.
Καλείσαι να φτίαξεις έναν αλγόριθμο που θα υπολογίζει το Η(Ν,Κ).
Ο αλγόριθμος θα διαβάζει τα Ν,Κ και θα τυπώνει το ζητούμενο.
Υ.Γ Δεκτή κάθε λυση γραμμένη σε C/C++,Pascal και ψευδοκώδικα.
Το πρόγραμμα αυτό είανι το μόνο που αρμόζει για τις συγκεκριμένες γνώσεις που έχουν τα παιδιά μέχρι στιγμής.
Έτσι να αποκτήσει λίγο ενδιαφέρον.
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Ναι οντως γιατι ομως?
αφου το ιδιο πραγμα δεν ειναι?Βασικα το 0.4.....που εβαλες εσυ απο που το σκεφτικες?
Το 0,4343 και αν θες πιο συγκεκριμένα το 0.43429448214944710584096959691715 είναι ο λογάριθμος του e με βάση το 10!
Αυτο που εσύ σκέφτηκες είναι σωστό και ισχύει μια χαρά η ιδιότητα. Προφανώς όμως αφου χρησιμοποιείς A_M και κάνεις διαίρεση τους λογαρίθμους χάνεις τιμές τις οποίες δεν μπορείς να ξέρεις προς τα που να τις στρογγυλοποιήσεις. Και γω τώρα το σκέφτηκα αυτό...
Τώρα θα μου πεις και γω χάνω τιμές αφού κάνω το ίδιο πράγμα. Ναι συμφωνώ απλά είναι θέμα τύχης λολ. Απλά έγω έβαλα μια επανάληψη μέχρι το 100000 και μου τα τύπωσε όλα κανονικά. Αλλά κανείς δε ξέρει τι γίνεται για μεγαλύτερα νούμερα.
Απλά, μπορώ να σου πω πως ασχοληθήκαμε και πολύ με αυτήν, η οποία στο κάτω κάτω είναι μια χαζή άσκηση και 100% δεν υπάρχει βέλτιστη λύση.
Υ.Γ χάθηκε να έχει μια strlen() η ψευδογλώσσα να κάνουμε την δουλειά μας ρε αδερφέ:p
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Ναι σωστη ειναι η αλλη απλα εγω την εγραυα πιο απλα για να μην πιανει τοσο πολυ ,με τον τυπο τις αλλαγης βασης
ΠΨ<--Α_Μ(ΛΟΓ(Α_Μ(χ))/ΛΟΓ(10))+1
-----------------------------------------
Αν μας πεις και την αρχικη τιμη του i...
Την λύση αυτή τη σκέφτηκα και εγώ αλλά δυστυχώς υπάρχουν λανθασμένα αποτελέσματα. Δοκίμασε να βάλεις το 1000, θα σου βγαλει ότι έχει 3 ψηφία και οχι 4. Το ίδιο συμβαίνει και για κι άλλα νούμερα.
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
@ ptsiotakis !
ahahahahaha. Όχι ήμουν όντως άρρωστος Αυρίο θα έρθω κανονικά! Την παρασκευή νομίζω θα γράφω βιολογία. Έλεοσ...
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Στο post εδώ https://ischool.gr/showpost.php?p=726760&postcount=823 άλλαξε την γραμμή
Όσο i <= 5 και stop = 1 επανάλαβε
se
Όσο i <= 200 και stop = 1 επανάλαβε
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Το λογ() δεν ειναι με βάση το 10 αλλά με βάση το e. Τουλάχιστον έτσι είναι στην γλώσσα, είναι ο φυσικός λογάριθμος.
Αν ήταν με βάση του 10 θα ήταν α_μ(λογ(α_μ(χ))) + 1
Όμως υπάρχει μια ιδιότητα που λέει ότι ο λογάριθμος του χ με βάση το e είναι ίσος με τον λογάριθμο του χ με βάση το 10 δια τον λογάριθμο του e με βάση το 10... Τρέχα γύρευε.
Ο λογάριθμος του e με βάση το 10 είναι περίπου 0,4343 (Στρογγυλοποιήμενος στο 4ο δεκαδικό ψηφίο)
Άρα τελικά θα έχεις αυτό...
πλήθος ← Α_Μ(λογ(Α_Μ(χ)) * 0.4343) + 1
Άθλια άσκηση. No comments
Y.Γ Επειδή έχουμε στρογγυλοποιήσει το log(e) με βαση το 10 ενδεχομένως να υπάρξουν λανθασμένα αποτελέσματα στα πολύ ακραία νούμερα... Αν θες να είσαι απόλυτα σωστή δοκίμασε αυτό ΠΛΗΘΟΣ_ΨΗΦΙΩΝ ← Α_Μ(λογ(Α_Μ(Χ)) * 0.43429448214944710584096959691715) + 1 Αν φτάσει στο τετράδιο σου βέβαια... Αλήθεια, υπάρχει άλλη λύση?? Υπάρχει υπολογισμός του log(x) με βάση το 10 στην ψευδογλώσσα? Εγώ πάντως δε το βρίσκω. Πάντως και αυτό είναι απολύτος σωστό
Έλεος μ αρέσει που σας είπε και χωρίς δ.επανάληψης... Δηλαδή τώρα για να καταλάβω αυτή άσκηση δοκιμάζει τον μαθητή πάνω σε τι??
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Αλγόριθμος αριθμοί
i ← 1
stop ← 1
Όσο i <= 5 και stop = 1 επανάλαβε
Διάβασε αριθμός
Αν αριθμός <= Α_Μ(αριθμός) τότε
p[i] ← αριθμός
αλλιώς
p[i] ← αριθμός
stop ← 0
τέλος_αν
i ← i + 1
τέλος_επανάληψης
i ← i - 1
μεσσαίο ← Α_Μ(i/2)
Για o από 1 μέχρι i
Αν o <> μεσσαίο τότε new[o] ← p[o]
τέλος_επανάληψης
Τέλος αριθμοί
Δεν είμαι όμως απόλυτα σίγουρος.
1) Ως πραγματικό αριθμό θεωρώ τους δεκαδικούς. Όμως και ο 4,00 θεωρείται δεκαδικός και δεν υπάρχει περίπτωση να το αναγνώρισεις με την γλώωσα (ptsiotaki PP)
2) Δεν αναφέρει αν εκεί που θα σταματάει θα το βάζει μέσα στον πίνακα ή όχι το στοιχείο του πραγματικού αριθμού... Tέλος πάντων εγώ το καταχωρώ
Ας το δει και κάποιος άλλος όμως...
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
S← 1
Για i από 1 μέχρι 63
S ← S +2 ^ i
Τέλος_Επανάληψης
Εκτύπωσε S
Τέλος skaki
Γεωμετρική πρόοδος είναι
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Πιστέψε με είχα άπειρους φίλους που νόμιζαν αυτό το πράμα και ο βαθμός στις εξετάσεις τους ήταν γύρο στο 13-15 μέσος όρος...
Ο προγραμματισμός δεν έχει καμία απολύτος σχέση με τον χειρισμό του υπολογιστή.
Αυτά για ότι αφορά το μάθημα και για τους μαθητές που δεν είναι 3η λυκείου ακόμα...
Αν δεν πας φροντιστήριο και δεν προσέχεις ούτε στο σχολείο μην περιμένεις να γράψεις. Όσο και καλός να είσαι, όσο κι αν έχεις διαβάσει είναι κάποια πράγματα που αν δεν στα πουν δε μπορείς να τα ξέρεις. (Οκ υπάρχουν φυσικά και εξαιρέσεις)...
Τέλος το μάθημα είναι τέτοιο που σε μερικούς κάνει να το μισούν. Για μένα παράδειγμα μου την δίνει που το δίνουμε σε χαρτί χωρίς παράλληλα να μπορούμε να το ελέγξουμε.
Έχω κάνει άπειρα λάθη και συνεχίζω να κάνω λάθη στους αλγόριθμους που φιάχνω και αυτό γιατί έχω συνηθίσει να τρέχω πάντα εναν αλγόριθμο προτού τον δώσω κάπου...
Πάντως προγραμματισμός, χαρτί είναι εντελώς 2 άκυρες λέξεις μετάξυ τους.
Δηλαδή δε μπορώ να καταλάβω πραγματικά. Ωραία έκανες συναντικό λάθος, τι έγινε δηλαδή???? Υπάρχει ποτέ περίπτωση να φιάξεις έναν πραγματικό αλγόριθμο να το δώσεις κάπου και να μην μπορεί να δουλέψει? Όχι... Ακόμα και στην περίπτωση του λογικού λάθους αν το παρεις χαμπαρι θα το διορθωσεις. Το μάθημα αυτό το οποίο στην κυριολέξιά είναι πανέμορφο, το έχουν κάνει μην πω πως...
Συμπέρασμα: Επειδή είσαι 2α λυκείου, πρόσεξε την επιλογή που θα κάνεις, το μάθημα ειναι δύσκολο και απετεί πολύ προσοχή. Τα "μαθηματικά" προβλήματα είναι τόσο απλά που σε "Αφήνουν" στην κυριολεξία να κάνεις λάθος. Ναι, στο σχολείο πρέπει να προσέχεις όπως επίσης θα σου πρότεινα να πας και φροντιστιρίο. Τα πράγματα είναι δύσκολα όπως είπα αν δεν έχεις καμία επαφή, και μέχρι να μπεις στο κλίμα του αλγόριθμου,προγραμματισμού θα σου πάρει κάποιους μήνες.
Υ.Γ Ίσως είπα λίγο παραπάνω απ όσα έπρεπε αλλά δεν άντεξα;p
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
-----------------------------------------
Βαριόμουν τρελά σήμερα(ναι ναι και να διαβάσω) οπότε έκανα μια υλοποίηση του QuickSort αλγόριθμου σε γλώσσα με διαδικασία... Ο αλγόριθμος αυτός αξίζει να σημειωθεί πως είναι ΠΟΛΛΕΣ φορές ταχύτερος απο κάθε άλλου ήδους αλγόριθμο(Bubble,Insertion etc). Στην καλύτερη περίπτωση κάνει nlogn (όπου n η ποσότητα των αριθμών που έχουμε να κάνουμε ταξινόμηση) αντιμεταθέσεις... Η bubble κάνει n^2 που σημαίνει ότι ειναι τρελά χρονοβόρα. Βέβαια αυτό δε λέει κάτι, στις πανελλήνιες μας νοιάζει να είναι σωστό το πρόβλημα και όχι γρήγορα... Αλλά πιστεύω αν κάνετε κάτι τέτοιο(αν πέσει κάποιο πρόβλημα με ταξινόμηση) και γράψετε αυτό θα ... πάθει πλάκα ο διορθωτής p
ΠΡΟΓΡΑΜΜΑ ταξινόμηση
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: a[10], i
ΑΡΧΗ
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10
ΔΙΑΒΑΣΕ a
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΚΑΛΕΣΕ quicksort(a, 1, 10)
ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ 10
ΓΡΑΨΕ a
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ
ΔΙΑΔΙΚΑΣΙΑ quicksort(a, m, n)
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: m, n, a[10], k, temp, key, i, j
ΑΡΧΗ
ΑΝ (m < n) ΤΟΤΕ
k <- (m + n) DIV 2
temp <- a[m]
a[m] <- a[k]
a[k] <- temp
key <- a[m]
i <- m + 1
j <- n
ΟΣΟ i <= j ΕΠΑΝΑΛΑΒΕ
ΟΣΟ ((i <= n) ΚΑΙ (a <= key)) ΕΠΑΝΑΛΑΒΕ
i <- i + 1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΟΣΟ ((j >= m) ΚΑΙ (a[j] > key)) ΕΠΑΝΑΛΑΒΕ
j <- j - 1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΑΝ i < j ΤΟΤΕ
temp <- a
a <- a[j]
a[j] <- temp
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
temp <- a[m]
a[m] <- a[j]
a[j] <- temp
ΚΑΛΕΣΕ quicksort(a, m, j - 1)
ΚΑΛΕΣΕ quicksort(a, j + 1, n)
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΔΙΑΔΙΚΑΣΙΑΣ
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Ορίστε και το σχετικό link -> https://el.wikipedia.org/wiki/Πρώτος_αριθμός
Πέρα απο τις άσκοπες διαιρέσεις που γίνονται για κάποιους αριθμούς που είπα παραπάνω ο αλγόριθμος είναι σωστός(Αν υλοποιηθεί και η εξαίρεση του 1)
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
redalert19882000
Νεοφερμένος
Διάβασε αριθμός
! θα "κατέβω" από το αριθμός-1 προς το 2.
! Αν συναντήσω έστω και ΕΝΑΝ διαιρέτη σταματώ την επανάληψη
! ΔΕΝ πρόκειται για πρώτο αριθμό
είναι ← αληθής ! έστω οτι είναι πρώτος
i ← αριθμός - 1
Όσο i >= 2 και είναι = αληθής επανάλαβε
! όσο δεν τέλειωσα το ψάξιμο και
! δεν έχω αποφανθεί οτι δεν είναι πρώτος
Αν (αριθμός mod i = 0) τότε
είναι ← ψευδής
! βρήκα διαιρέτη,άρα ΔΕΝ είναι πρώτος
Τέλος_αν
i ← i - 1
Τέλος_επανάληψης
Αν (είναι = ψευδής) τότε
Εμφάνισε "Δεν είναι πρώτος"
Αλλιώς
Εμφάνισε "Είναι πρώτος"
Τέλος_αν
Τσέκαρέ το στο https://www.pseudoglossa.gr/
πρώτοι είναι το 1, 2, 3, 5, 7, 11, 13...
Δε θέλω λαμπάδα ούτε κάτι άλλο, μου αρκεί να γράψεις καλά...
-----------------------------------------
Αυτή είναι μια από τις ασκήσεις που μπορεί να αναδύξει την ομορφιά του μαθήματός μας....
Αν δεν κανω λαθος ο αριθμος 1 δεν θεωρειτε πρωτος... Οι πρωτοι ξεκινανε απο το 2 και μετα.
Ωστόσο, θα ήθελα να αναφέρω ότι πρέπει να αρχίσουμε τις διαιρέσεις απο αριθμό DIV 2. Για παράδειγμα αν έχουμε τον αριθμό 50, δεν χρειαζετε να τον διαιρεούμε με τους αριθμούς (49,48,47 κτλ .. 26) αφού ουσιαστικά αυτά ποτε δεν προκειτε να ισχυσουν. Αρα ο αλγόριθμος θα επρεπε να γινει καλυτερα ετσι: (Προς θεου δεν ειπα οτι ειναι λαθος):
Αλγόριθμος protoi
ΔΙΑΒΑΣΕ αριθμός
ΑΝ αριθμός = 1 ΤΟΤΕ
είναι ← ΨΕΥΔΗΣ
ΑΛΛΙΩΣ
είναι ← ΑΛΗΘΗΣ
ΤΕΛΟΣ_ΑΝ
i ← αριθμός DIV 2
ΟΣΟ i >= 2 ΚΑΙ είναι = ΑΛΗΘΗΣ ΕΠΑΝΑΛΑΒΕ
ΑΝ (αριθμός MOD i = 0) ΤΟΤΕ
είναι ← ΨΕΥΔΗΣ
ΤΕΛΟΣ_ΑΝ
i ← i - 1
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΑΝ (είναι = ΨΕΥΔΗΣ) ΤΟΤΕ
Εμφάνισε "Δεν είναι πρώτος"
ΑΛΛΙΩΣ
Εμφάνισε "Είναι πρώτος"
ΤΕΛΟΣ_ΑΝ
Τέλος protoi
Thanks
Σημείωση: Το μήνυμα αυτό γράφτηκε 14 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
-
Το forum μας χρησιμοποιεί cookies για να βελτιστοποιήσει την εμπειρία σας.
Συνεχίζοντας την περιήγησή σας, συναινείτε στη χρήση cookies στον περιηγητή σας.