Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
61 lines (56 sloc) 2.61 KB
''' επέκταση από το http://pythonies.mysch.gr/chapters/guess.pdf
Εδώ θα προστεθεί η εκφώνηση (όταν παγιωθεί) ώστε το πρόγραμμα
να είναι αυτοτελές.
'''
import random
def readNumber(a,b):
""" ζητάει από το χρήστη έναν αριθμό
μεταξύ των a και b και τον επιστρέφει.
a, b: όρια για τον αριθμό (δεν ελέγχονται)
"""
# εμφάνιση προτροπής και ανάγνωση αριθμού
print("Μάντεψε τον αριθμό:", a , "-", b)
num = int(input())
# επιστροφή αριθμού
return num
# οι μεταβλητές low και high είναι τα όρια
# ανάμεσα στα οποία βρίσκεται ο μυστικός αριθμός
low = 1
high = 32
# δημιουργία τυχαίου μυστικού αριθμού
secret = random.randint(low,high)
# ο μυστικός αριθμός δεν έχει εντοπιστεί
found = False
# ορισμός μέγιστου πλήθους προσπαθειών
tries = 4
# επανάληψη: τερματίζεται όταν
# βρεθεί ο αριθμός ή εξαντληθούν οι προσπάθειες
while not found and tries > 1:
# εμφάνιση και μείωση προσπαθειών
print("Απομένουν", tries, "προσπάθειες.")
tries = tries - 1
# επιλογή αριθμού από το χρήστη
number = readNumber(low,high)
# έλεγχος αριθμού και εμφάνιση μηνύματος
if number > secret:
print("Λάθος. Είναι μικρότερος.")
high = number - 1
elif number < secret:
print("Λάθος. Είναι μεγαλύτερος.")
low = number + 1
else:
print("Σωστά!")
# ο μυστικός αριθμός εντοπίστηκε
found = True
# μετά την επανάληψη
# εμφάνιση μηνύματος αν δεν έχει βρεθεί ο αριθμός.
if not found:
# εμφάνιση και μείωση προσπαθειών
print("Απομένει μια προσπάθεια!")
# επιλογή αριθμού από το χρήστη
number = readNumber(low,high)
# έλεγχος αριθμού και εμφάνιση μηνύματος
if number == secret:
print("Σωστά, το βρήκες την τελευταία στιγμή!")
else:
print("Λυπάμαι, ο μυστικός αριθμός ήταν ο", secret)