Ασκήσεις και παραδειγματα Python

...περί ασύγχρονων μαθημάτων

Ασκήσεις και παραδειγματα Python

Δημοσίευσηαπό AngelBreath » 16 Οκτ 2009, 09:47

Επειδή ειμαι της αποψης οτι για να μάθεις να προγραμματίζεις θέλει εξασκηση,θα ελεγα με βαση τα μαθήματα, τωρα που έχει ωριμάσει η κατασταση, να βαλουμε πιό πολλές ασκήσεις και παραδείγματα. Εχω μία αρκετά μεγάλη βιβλιογραφία για Python (άλλο που δεν τα χω διαβασει ακόμα) με μερικές πολυ ωραιες ασκήσεις και παραδείγματα (αγγλικά). Αν θελουν και άλλοι μπορω να μεταφρασω-παραλλαξω μερικές για να εχουμε πιο πολύ τροφη για σκέψη. Απλα δεν ξερω που να τις βάλω ή που να τις δωσω και φυσικα αν υπάρχει ενδιαφέρον.

Αν δεν υπάρχει ενδιαφέρον, για να μήν παει τζαμπα το post ενα πολυ ωραιο μέρος με προκλητικες ασκήσεις (αρκει να ξερεις μαθηματικα καλα) και ασχέτως γλωσσας προγραμματισμου ειναι το http://projecteuler.net/ . Δειτε το νομιζω πως αξίζει.
AngelBreath
babeTUX
babeTUX
 
Δημοσιεύσεις: 46
Εγγραφή: 05 Νοέμ 2008, 23:29
Εκτύπωση

Re: Ασκήσεις και παραδειγματα Python

Δημοσίευσηαπό sean » 16 Οκτ 2009, 23:55

δεν ξερω αν υπαρχει ενδιαφερον η που να τις βαλεις αλλα αν θες να τις δωσεις καπου εγω ενδιαφερομαι :mrgreen:
piragelos.deviantart.com
* life is not measured by the number of breaths we take, but by the moments that take our breath away


Γνώσεις ⇛ Linux: Μέτριο | Προγραμματισμός: Ναι | Αγγλικά: Τέλεια
Λειτουργικό ⇛ Ubuntu 10.04 (32bit) ΕΛ
Άβαταρ μέλους
sean
punkTUX
punkTUX
 
Δημοσιεύσεις: 279
Εγγραφή: 15 Αύγ 2009, 14:46
Τοποθεσία: πλανητης γη...
Εκτύπωση

Re: Ασκήσεις και παραδειγματα Python

Δημοσίευσηαπό sokoban4ever » 17 Οκτ 2009, 06:03

@AngelBreath
Βεβαίως και είναι ενδιαφέρον
για το projecteuler μάλιστα υπάρχουν αυτά στο site της Python και σε ένα άλλο
Solutions to the first 40 problems in functional Python
http://pyeuler.wikidot.com/
και

http://wiki.python.org/moin/ProblemSets ... onalPython
(Αξίζει να παίξει κανείς με αυτά :thumbup: )
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση

Re: Ασκήσεις και παραδειγματα Python

Δημοσίευσηαπό AngelBreath » 17 Οκτ 2009, 10:07

Εγώ βαζω εδω ασκήσεις (οσες προλαβαίνω κάθε φορά) και οι συντονιστές ας τις μετακινήσουν οπου νομίζουν καλύτερα...:)



ΑΡΧΑΡΙΟΙ (print, μεταβλητές, )

1) Δημιουργείστε ενα δικό σας συντακτικό λάθος βάζοντας την αγαπημένη σας γεύση παγωτού στον διερμηνευτή της Python. Μετά διορθώστε το λάθος σας και καντε μια δήλωση που θα τυπώνει στην οθόνη το όνομα του αγαπημένου σας παγωτού.

2)Γράψτε και αποθηκεύστε ένα πρόγραμμα που τυπώνει το όνομά σας και περιμένει από τον χρήστη να πατήσει το Enter για να τερματιστεί.Μετα εκτελέστε το πρόγραμμα με διπλό κλίκ στο εικονίδιο του.

3)Γράψτε 'ενα πρόγραμμα που τυπώνει (εμφανίζει στην οθόνη) το αγαπημένο σας ρητό. Θα πρέπει να αναφέρει στην επόμενη σειρά ποιος το είπε.(Tip:Χρησιμοποιείστε δύο δηλώσεις print)

4)Δημιουργείστε μια λίστα με μεταβλητές σωστές και λάθος. Περιγράψτε γιατί η κάθε μια ειναι σωστή ή λάθος. Μετά δημιουργείστε μια λίστα με "καλές" και "κακές" μεταβλητές. Εξηγήστε γιατί η κάθε μια είναι καλή ή κακή επιλογή για όνομα μεταβλητής.

5)Γράψτε ένα πρόγραμμα που θα ζητάει απο τον χρήστη να δώσει τα δύο αγαπημένα του φαγητά.Το πρόγραμμα θα πρέπει να εμφανίζει στην οθόνη το όνομα ενός νέου φαγητού ενώνοντας τα δύο αρχικά φαγητά.

6) Γράψτε ένα πρόγραμμα φιλοδωρήματος. Ο χρήστης θα πρέπει να δινει το ποσό του λογαριασμού στο εστιατόριο και το πρόγραμμα να τυπώνει στην οθόνη δυο ποσά: Ενα με 15% και ένα με 20% φιλοδώρημα.

7)Γράψτε ένα πρόγραμμα πωλήσεων αυτοκινήτου όπου ο χρήστης θα δίνει την βασική τιμή του αυτοκινήτου. Το πρόγραμμα θα πρέπει να προσθέτει μια σειρά από επιβαρύνσεις οπως φόρο, άδεια, προμήθεια, πινακίδες. Κάντε τον φόρο και την προμήθεια ποσοστό της βασικής τιμής, ενώ άδεια και πινακίδες θα είναι μια σταθερή τιμή. Print (στην οθόνη) την συνολική αξία του αυτοκινήτου.

ΑΡΧΑΡΙΟΙ (χρήση random)

1)Γράψτε ένα πρόγραμμα με μπισκότα της τύχης. (Ξερετε, εκείνα τα κινέζικα μπισκότα που έχουν τυχερό μήνυμα..:) ) Το προγραμμα κάθε φορά που τρέχει θα πρέπει να τυπώνει (στην οθόνη) ΤΥΧΑΙΑ ένα απο τα πέντε μοναδικά μηνύματα.

2)Γράψτε ένα πρόγραμμα που θα περιστρέφει ένα νόμισμα 100 φορές και σας λέει πόσες φορές έτυχε κορώνα και πόσες γράμματα.

3) Αλλάξτε το παιχνίδι με το να βρείς τον αριθμό (το λινκ του μαθήματος το δίνω στο τέλος της εκφώνησης) ωστε ο χρήστης να έχει συγκεκριμένο αριθμό μαντεψιών. Αν ο χρήστης αποτύχει να μαντέψει τον αριθμό το πρόγραμμα θα πρέπει να τυπώνει το κατάλληλο μήνυμα.
ΤΟ ΠΑΙΧΝΙΔΙ ΕΙΝΑΙ ΤΟ ΠΡΩΤΟ ΠΑΡΑΔΕΙΓΜΑ
http://www.swaroopch.com/notes/Python_e ... E%AE%CF%82

4)Μία μεγαλύτερη πρόκληση: Γράψτε τον ψευδοκώδικα (την περιγραφή ) ενος προγράμματος οπου στο παιχνιδι με το να μαντέψεις τον αριθμό, ο χρήστης και ο υπολογιστής αλλάζουν θέσεις.Ο χρήστης διαλέγει ενα αριθμό απο το 1 εως το 100 και ο υπολογιστής πρέπει να το βρεί. Πριν ξεκινήσετε σκεφτείτε τον τρόπο με τον οποίο μαντεύετε. Αν όλα παν καλά προσπαθείστε να γράψετε τον κώδικα για το παιχνίδι.

ΜΕΤΡΙΟ ΕΠΙΠΕΔΟ (text, lists, if,random)

1)Φτιάξτε ένα πρόγραμμα που να τυπώνει μια λίστα απο λέξεις σε τυχαία σειρά. Το πρόγραμμα θα πρέπει να τυπώνει όλες τις λέξεις της λίστας και να μην επαναλαμβάνει καμμία.

2)Γράψτε ένα πρόγραμμα δημιουργίας χαρακτήρα για ένα role-playing παιχνίδι. Ο παικτης θα εχει στην διάθεση του 30 πόντους να ξοδέψει σε 4 χαρακτηριστικά: Δύναμη, Υγεία, Ευελιξία και Εξυπνάδα.(αν θέλετε αγγλικά Strenght, Health, widsom,Dexterity). Ο παίκτης θα πρέπει να μπορεί να ξοδέψει πόντους σε οποιο χαρακτηριστικό θέλει και θα πρέπει να μπορεί να παρει ποντους απο ενα χαρακτηριστικό και να τους βάλει πισω στους διαθέσιμους πόντους.
Τελευταία επεξεργασία από AngelBreath και 20 Οκτ 2009, 11:48, έχει επεξεργασθεί 1 φορά/ες συνολικά
AngelBreath
babeTUX
babeTUX
 
Δημοσιεύσεις: 46
Εγγραφή: 05 Νοέμ 2008, 23:29
Εκτύπωση

Re: Ασκήσεις και παραδειγματα Python

Δημοσίευσηαπό da_perama1 » 18 Οκτ 2009, 19:29

Δύο παραδείγματα προγραμμάτων σε python που δείχνουν τις δυνατότητας της γλώσσας. Είναι απαντήσεις στο πρόβλημα.
Αυτό έγραψα εγώ.
Κώδικας: Επιλογή όλων
s=0
for i in range(1,101):
   s += i**2
# 5050 = 1+2+3+...+100 με τη μέθοδο του Pascal (50*100)+50
print (str( ( 5050**2 ) - s ))


Αυτό βρήκα στο σχετικό forum.
Κώδικας: Επιλογή όλων
print (str(sum(y for y in range(101))**2 - sum(x**2 for x in range(101))))


Από χρόνο εκτέλεσης είναι ακριβώς ο ίδιος. Υπάρχει λόγος να τα συμπυκνώνει τόσο πολύ κανείς ; πέρα από την κομψότητα του κώδικα ;
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.04 precise 64bit (el_GR.UTF-8), Ubuntu 3.0.0-17-generic
3 Intel Core i5 CPU 650 3.20GHz ‖ RAM 7783 MiB ‖ Intel DH55TC -
4 Intel Core Processor Integrated Graphics Controller [8086:0042] (rev 02)
5 eth0: Intel 82578DC Gigabit Network Connection [8086:10f0] (rev 06)
da_perama1
punkTUX
punkTUX
 
Δημοσιεύσεις: 289
Εγγραφή: 11 Νοέμ 2008, 20:35
Τοποθεσία: Κέρκυρα
Εκτύπωση

Re: Ασκήσεις και παραδειγματα Python

Δημοσίευσηαπό sokoban4ever » 19 Οκτ 2009, 10:01

@da_perama1
Ο κώδικας είναι με generator expressions http://www.python.org/dev/peps/pep-0289/
είναι μία πάρα πολύ γρήγορη τεχνική δημιουργίας iterator γιατί καταναλώνει εξαιρετικά λιγότερη μνήμη σε σχέση
με list comprehensions .
δεν το υπολογίζει μια φορά όλο στην μνήμη αλλά σε κάθε iteration
δες το Spoiler
Spoiler: show
πχ
Κώδικας: Επιλογή όλων
>>> list_comprehension = [ x for x in xrange(999999)]
>>> list_comprehension.__sizeof__() # δίνει το μέγεθος του αντικειμένου στην μνήμη σε bytes
8697440
>>> list_comprehension.__sizeof__() / 1024.0 / 1024.0
8.294525146484375

Μιλάμε περίπου 8.3 Megabytes στην μνήμη :shock:


ενώ με generator expressions
πχ
Κώδικας: Επιλογή όλων
>>> generator_expr  = ( i for i in xrange(999999))
>>> generator_expr.__sizeof__()
48


Μιλάμε για μόνο 48 bytes στην μνήμη :thumbup:



Σύγκριση


Κώδικας: Επιλογή όλων
>>> list_comprehension.__sizeof__()/ generator_expr.__sizeof__()
181196


Για το παράδειγμα μιλάμε για 181196 φορές εξοικονόμηση χώρου στην μνήμη...


;)
Πράγμα που επηρεάζει και τον χρόνο εκτέλεσης ενός προγράμματος
Πέρα λοιπόν από την κομψότητα του κώδικα είναι και για
την βελτιστοποίηση του προγράμματος

με λίγα λόγια ...
Python Rules :thumbup:
:D
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση

Re: Ασκήσεις και παραδειγματα Python

Δημοσίευσηαπό AngelBreath » 20 Οκτ 2009, 11:50

Εχω αλλες 200 ασκήσεις, αλλα θέλω ενθάρυνση...lol...να συνεχίσω..????
AngelBreath
babeTUX
babeTUX
 
Δημοσιεύσεις: 46
Εγγραφή: 05 Νοέμ 2008, 23:29
Εκτύπωση

Re: Ασκήσεις και παραδειγματα Python

Δημοσίευσηαπό da_perama1 » 20 Οκτ 2009, 12:14

Το συζητάς ; όσο μπορείς δίνε υλικό. Εκτός από τους συνήθεις ύποπτους που παρακολουθούμε τα σχετικά με την python είναι και παρακαταθήκη για το μέλλον.
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 13.04 precise 64bit (el_GR.UTF-8), Ubuntu 3.0.0-17-generic
3 Intel Core i5 CPU 650 3.20GHz ‖ RAM 7783 MiB ‖ Intel DH55TC -
4 Intel Core Processor Integrated Graphics Controller [8086:0042] (rev 02)
5 eth0: Intel 82578DC Gigabit Network Connection [8086:10f0] (rev 06)
da_perama1
punkTUX
punkTUX
 
Δημοσιεύσεις: 289
Εγγραφή: 11 Νοέμ 2008, 20:35
Τοποθεσία: Κέρκυρα
Εκτύπωση

Re: Ασκήσεις και παραδειγματα Python

Δημοσίευσηαπό christinastella » 20 Μαρ 2013, 19:53

Καλησπερα σας... Σπουδαζω στο πανεπιστημιο Πατρων και εχω ενα μαθημα επιλογης στο οποιο ασχολουμαστε με Python. Ο καθηγητης μας εχει βαλει μια ασκηση και επειδη δυσκολευομαι λιγο μηπως θα μπορουσε καποιος να με βοηθησει??? Η ασκηση ειναι η εξης


Τροποποιήστε τον κώδικα seg.py έτσι ώστε να υπάρχουν δυο "ελκυστικές" περιοχές, μια για το κάθε χρώμα, μέσα στο τετράγωνο (που θα τις καθορίσετε, όπου κι όπως θέλετε: τετράγωνο, κύκο ή κλπ.) έτσι ώστε ούτε κάθε κόμβος με μια δεδομένη πιθανότητα (παράμετρος της προσομοίωσης) να μετακινείται "σχετικά" κοντά στην αντίστοιχη ελκυστική περιοχή που έχει.

Παράδοση Τετάρτη 27/3 (1 μμ). Ευχαριστω προκαταβοληκα
christinastella
babeTUX
babeTUX
 
Δημοσιεύσεις: 2
Εγγραφή: 20 Μαρ 2013, 19:48
Εκτύπωση

Re: Ασκήσεις και παραδειγματα Python

Δημοσίευσηαπό Ilias95 » 20 Μαρ 2013, 21:15

Ποιος είναι ο κώδικας του seg.py;
Τι έχεις κάνει μέχρι τώρα και τι προβλήματα αντιμετωπίζεις;
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

Επόμενο

  • ΣΧΕΤΙΚΑ ΘΕΜΑΤΑ
    ΑΠΑΝΤΗΣΕΙΣ
    ΠΡΟΒΟΛΕΣ
    ΣΥΓΓΡΑΦΕΑΣ

Επιστροφή στο Γενική Συζήτηση Μαθημάτων - Προτάσεις