Αποστολέας Θέμα: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ  (Αναγνώστηκε 5908 φορές)

michael92

  • Νέος
  • *
  • Μηνύματα: 1
ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« στις: 22 Νοέ 2010, 05:45:33 μμ »
Καλησπέρα σας είμαι ο Μιχάλης και δίνω φέτος πανελλαδικές εξετάσεις.
Είπα να ξεκινήσω το πρώτο μου θέμα με μια δικιά μου ενδιαφέρουσα σημερινή άσκηση  :)

Να γραφεί Πρόγραμμα το οποίο θα δημιουργεί μια εικόνα RGB ΑΝΑΛΥΣΗΣ 1024 x 1024 pixels, με τον τρόπο που περιγράφεται παρακάτω:
1) Δημιουργία 3 δισδιάστατων πινάκων 1024x1024 pixels (R[1024,1024],G[1024,1024],B[1024,1024]) όπου σε κάθε κουτί του κάθε πίνακα θα αναγράφεται η τιμή του χρώματος κόκκινου, πράσινου και μπλε  (R[1024,1024],G[1024,1024],B[1024,1024]) αντίστοιχα με επιτρεπόμενα πεδία από 0 εώς 255. Να γίνει Έλεγχος επιτρεπόμενων τιμών.

2) Απόδοση θολούρας πρώτης τάξης κατά 10% σε πεδίο 9 pixel 3 x 3.
Κάθε Pixel παίρνει 10% χρώματος από τα 8 pixel που το περικυκλώνουν.
Έστω ότι στο πεδίου του R έχουμε τα εξείς χρώματα:
155 200 100
000 015 023
150 111 255
Τότε το κεντρικό χρώμα 015 θα επηρεαστεί κατά 10% από τον μέσο όρο των 8 γειτονικών του (ακέραια διαίρεση). Να εφαρμοστεί θολούρα σε κάθε pixel της εικόνας εκτός από την πρώτη και τελευταία γραμμή και στήλη.
Να αποθηκευτεί η θολούρα σε 3 πίνακες R_BLUR, G_BLUR και  B_BLUR.

3) Τέλος να μετατραπεί και να εμφανισθεί η τελική εικόνα σε έναν τελικό RGB[1024,1024] πίνακα μορφοποίηση 255255255 και σε μορφή αριθμού! Κατά σειρά R G B

Συννημένη η λύση μου  :)

Αν βρείτε κάποιο άλλο λάθος ενημερώστε με  :)
« Τελευταία τροποποίηση: 22 Νοέ 2010, 06:04:47 μμ από michael92 »

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3029
  • to Iterate is human to Recurse divine
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #1 στις: 22 Νοέ 2010, 08:50:05 μμ »
Αντί για το παρακάτω
Κώδικας: [Επιλογή]
ΑΡΧΗ ΕΠΑΝΑΛΗΨΗΣ
ΔΙΑΒΑΣΕ R
r<- false
ΓΙΑ k ΑΠΟ 0 ΜΕΧΡΙ 255
ΑΝ (R=k) ΤΟΤΕ
r<-true
TΕΛ_ΑΝ
ΤΕΛ_ΕΠ
ΜΕΧΡΙΣ ΟΤΟΥ (r=true)

καλύτερα έτσι
Κώδικας: [Επιλογή]
ΑΡΧΗ ΕΠΑΝΑΛΗΨΗΣ
ΔΙΑΒΑΣΕ R
ΜΕΧΡΙΣ ΟΤΟΥ (R>=0 ΚΑΙ R<=255)

τα υπόλοιπα δεν έχω χρόνο να τα δω, αλλά με μια πρώτη ματιά δεν φαίνεται κάτι κακό
πάντως αν σου αρέσουν αυτά προσπάθησε να φτιάξεις σε ΓΛΩΣΣΑ το παιχνίδι του Conway
http://ddi.cs.uni-potsdam.de/HyFISCH/Produzieren/lis_projekt/proj_gamelife/ConwayScientificAmerican.htm

είμαι σίγουρος ότι θα σου αρέσει
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3029
  • to Iterate is human to Recurse divine
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #2 στις: 22 Νοέ 2010, 09:25:57 μμ »
και μια και το θέμα έχει τον τίτλο δύσκολη άσκηση για πίνακες προτείνω μια άσκηση που θεωρώ αρκετά δύσκολη για όποιον έχει χρόνο.

Να γράψετε αλγόριθμο ο οποίος να δημιουργεί μια μαγική ακολουθία μήκους 7. Η μαγική ακολουθία είναι μια ακολουθία αριθμών στην οποία κάθε αριθμός είναι το πλήθος των εμφανίσεων του αριθμού-θέση στην οποία βρίσκεται. Για παράδειγμα η παρακάτω ακολουθία είναι μαγική ακολουθία μήκους 5
   Μ = [2, 1, 2, 0, 0]

διότι το 0 εμφανίζεται 2 φορές Μ[0]=2, το 1 1 φορά Μ[1]=1 το 2 2 φορές Μ[2]=2 τα 3,4 καμία

όπως καταλάβατε ξεκινάμε να μετράμε από το 0 και όχι από το 1.

Αν καταφέρετε και κάνετε το παραπάνω μπορείτε να σκεφτείτε πως θα μπορούσατε να γενικεύσετε για οποιοδήποτε μήκος ακολουθίας Ν? αν είναι εφικτό
« Τελευταία τροποποίηση: 23 Νοέ 2010, 09:43:52 μμ από evry »
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

soron80

  • Ομάδα διαγωνισμάτων 2011
  • *
  • Μηνύματα: 116
  • Back In Black
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #3 στις: 23 Νοέ 2010, 09:30:15 μμ »
και μια και το θέμα έχει τον τίτλο δύσκολη άσκηση για πίνακες προτείνω μια άσκηση που θεωρώ αρκετά δύσκολη για όποιον έχει χρόνο.

Να γράψετε αλγόριθμο ο οποίος να δημιουργεί μια μαγική ακολουθία μήκους 7. Η μαγική ακολουθία είναι μια ακολουθία αριθμών στην οποία κάθε αριθμός είναι το πλήθος των εμφανίσεων του αριθμού-θέση στην οποία βρίσκεται. Για παράδειγμα η παρακάτω ακολουθία είναι μαγική ακολουθία μήκους 5
   Μ = [2, 1, 2, 0, 0]

διότι το 0 εμφανίζεται 2 φορές Μ[0]=2, το 1 1 φορά Μ[1]=1 το 2 2 φορές Μ[2]=2 τα 4,5 καμία

όπως καταλάβατε ξεκινάμε να μετράμε από το 0 και όχι από το 1.

Αν καταφέρετε και κάνετε το παραπάνω μπορείτε να σκεφτείτε πως θα μπορούσατε να γενικεύσετε για οποιοδήποτε μήκος ακολουθίας Ν? αν είναι εφικτό

Μάλλον εννοείς 3,4 καμμία μιας και το 5 δεν μπορεί να είναι μέσα στη μαγική ακολουθία!
Τσισπαράς Βασίλης
Καθηγητής Πληροφορικής ΠΕ19

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3029
  • to Iterate is human to Recurse divine
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #4 στις: 23 Νοέ 2010, 09:43:19 μμ »
ναι έχεις δίκιο, μου ξέφυγε, θα το διορθώσω παραπάνω, ευχαριστώ
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

Πανάγος94

  • Βετεράνος
  • ****
  • Μηνύματα: 65
  • what doesn't kill you only makes you pissed off..
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #5 στις: 04 Μάρ 2012, 11:42:21 πμ »
το ότι το άθροισμα στο παράδειγμά σου βγαίνει 5 είναι τυχαίο ή όχι??

evry

  • Γενικός διαχειριστής
  • *****
  • Μηνύματα: 3029
  • to Iterate is human to Recurse divine
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #6 στις: 04 Μάρ 2012, 12:18:17 μμ »
αφού σε κάθε θέση έχεις το πλήθος των εμφανίσεων κάθε αριθμού, τότε το άθροισμα όλων αυτών των εμφανίσεων, θα είναι 5
το ότι το άθροισμα στο παράδειγμά σου βγαίνει 5 είναι τυχαίο ή όχι??
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

fof

  • Ομάδα Νέου Λυκείου
  • *
  • Μηνύματα: 291
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #7 στις: 09 Μάρ 2012, 03:44:41 μμ »
Πάρα πολύ ωραία άσκηση!!!!! ευχαριστούμε evry

lykos

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 143
  • Καλύτερα ταξιδάκια, παρά project
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #8 στις: 11 Μάρ 2012, 09:37:42 πμ »
Είχα καιρό να εξασκηθώ στην αριθμητική και μ' άρεσε. Στο συνημμένο έχω μια λύση για 7 αριθμούς. Λίγο "χαζή" αλλά δουλεύει. Για μεταβλητό πλήθος αριθών φαίνεται να είναι δύσκολο...

gthal

  • Ομάδα διαγωνισμάτων 2017
  • *
  • Μηνύματα: 879
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #9 στις: 13 Μάρ 2012, 01:52:04 πμ »
Τρομερή άσκηση !!!  Έφαγα κόλλημα  :laugh:
Μπράβο Ευριπίδη. Πώς μας διέφυγε αυτή πέρυσι ?
(Θα στείλω μια λύση σε ΠΜ)
Φιλικά,
Γιώργος Θαλασσινός

soc_h

  • Βετεράνος
  • ****
  • Μηνύματα: 62
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #10 στις: 06 Φεβ 2014, 08:55:00 πμ »
Το είχα διαβάσει σαν θέμα προγραμματισμού πριν καμιά 30αρια χρόνια (παιδί τότε). Δεν το είχα φτιάξει σαν πρόγραμμα, όμως το είχα λύσει και μου έχει μείνει από τότε.
Για 10 αριθμούς: 6, 2, 1, 0, 0, 0, 1, 0, 0, 0
Σωκράτης

programmer

  • Θαμώνας
  • ***
  • Μηνύματα: 44
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #11 στις: 07 Φεβ 2015, 08:27:37 μμ »
προγραμμα που ζηταει απο το χρηστη τους αρι8μους και επειτα τους βαζει σε μαγικο κουτι 7 αρι8μων.με απλες μετατροπες στο οριο του πινακα και στα αν και για φτιαχνουμε μαγικο κουτι με οποιο μηκος 8ελουμε.πχ αν θελω μαγικο κουτι 100 αρι8μων οπου 7 βαζω το 100 και οπου 6 το 99
« Τελευταία τροποποίηση: 08 Φεβ 2015, 05:48:51 πμ από programmer »

Κωστας τζιαννης

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 179
Απ: ΔΥΣΚΟΛΗ ΑΣΚΗΣΗ ΜΕ ΠΙΝΑΚΕΣ
« Απάντηση #12 στις: 27 Μάι 2018, 01:14:37 πμ »
και μια και το θέμα έχει τον τίτλο δύσκολη άσκηση για πίνακες προτείνω μια άσκηση που θεωρώ αρκετά δύσκολη για όποιον έχει χρόνο.

Να γράψετε αλγόριθμο ο οποίος να δημιουργεί μια μαγική ακολουθία μήκους 7. Η μαγική ακολουθία είναι μια ακολουθία αριθμών στην οποία κάθε αριθμός είναι το πλήθος των εμφανίσεων του αριθμού-θέση στην οποία βρίσκεται. Για παράδειγμα η παρακάτω ακολουθία είναι μαγική ακολουθία μήκους 5
   Μ = [2, 1, 2, 0, 0]

διότι το 0 εμφανίζεται 2 φορές Μ[0]=2, το 1 1 φορά Μ[1]=1 το 2 2 φορές Μ[2]=2 τα 3,4 καμία

όπως καταλάβατε ξεκινάμε να μετράμε από το 0 και όχι από το 1.

Αν καταφέρετε και κάνετε το παραπάνω μπορείτε να σκεφτείτε πως θα μπορούσατε να γενικεύσετε για οποιοδήποτε μήκος ακολουθίας Ν? αν είναι εφικτό

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