ಪ್ರಾಜೆಕ್ಟ್ 2: ಸಂಖ್ಯೆ ಊಹಿಸುವ ಆಟ (Number Guessing Game)
ಈ ಪ್ರಾಜೆಕ್ಟ್ನಲ್ಲಿ, ನಾವು ಒಂದು ಸರಳ ಆಟವನ್ನು ನಿರ್ಮಿಸುತ್ತೇವೆ. ಇದರಲ್ಲಿ ಕಂಪ್ಯೂಟರ್ 1 ರಿಂದ 100 ರ ನಡುವೆ ಒಂದು ಸಂಖ್ಯೆಯನ್ನು ಯಾದೃಚ್ಛಿಕವಾಗಿ (randomly) ಆಯ್ಕೆ ಮಾಡುತ್ತದೆ, ಮತ್ತು ಬಳಕೆದಾರರು ಆ ಸಂಖ್ಯೆಯನ್ನು ಊಹಿಸಬೇಕು. ಪ್ರತಿ ಊಹೆಯ ನಂತರ, ಕಂಪ್ಯೂಟರ್ "ತುಂಬಾ ಹೆಚ್ಚು" (Too high) ಅಥವಾ "ತುಂಬಾ ಕಡಿಮೆ" (Too low) ಎಂಬ ಸುಳಿವುಗಳನ್ನು ನೀಡುತ್ತದೆ.
ಕಲಿಕೆಯ ಪರಿಕಲ್ಪನೆಗಳು
randomಮಾಡ್ಯೂಲ್ ಬಳಕೆ (ವಿಶೇಷವಾಗಿrandom.randint())whileಲೂಪ್- ಬಳಕೆದಾರರಿಂದ ಇನ್ಪುಟ್ ಪಡೆಯುವುದು (
input()) - ಸ್ಟ್ರಿಂಗ್ನಿಂದ ಇಂಟಿಜರ್ಗೆ ಟೈಪ್ ಪರಿವರ್ತನೆ (
int()) if-elif-elseಕಂಡೀಶನಲ್ಗಳು
ಕೋಡ್
import random
def guessing_game():
"""ಕಂಪ್ಯೂಟರ್ ಆಯ್ಕೆ ಮಾಡಿದ ಸಂಖ್ಯೆಯನ್ನು ಊಹಿಸುವ ಆಟ."""
# 1 ರಿಂದ 100 ರ ನಡುವೆ ಒಂದು ಯಾದೃಚ್ಛಿಕ ಸಂಖ್ಯೆಯನ್ನು ಆಯ್ಕೆ ಮಾಡುವುದು
secret_number = random.randint(1, 100)
guess = 0
attempts = 0
print("ನಾನು 1 ರಿಂದ 100 ರ ನಡುವೆ ಒಂದು ಸಂಖ್ಯೆಯನ್ನು ಯೋಚಿಸಿದ್ದೇನೆ.")
print("ನೀವು ಅದನ್ನು ಊಹಿಸಬಲ್ಲಿರಾ?")
# ಬಳಕೆದಾರರು ಸರಿಯಾದ ಸಂಖ್ಯೆಯನ್ನು ಊಹಿಸುವವರೆಗೆ ಲೂಪ್ ಚಾಲನೆಯಲ್ಲಿರುತ್ತದೆ
while guess != secret_number:
try:
# ಬಳಕೆದಾರರಿಂದ ಊಹೆಯನ್ನು ಪಡೆಯುವುದು
guess_str = input("ನಿಮ್ಮ ಊಹೆಯನ್ನು ನಮೂದಿಸಿ: ")
guess = int(guess_str)
attempts += 1
# ಊಹೆಯನ್ನು ರಹಸ್ಯ ಸಂಖ್ಯೆಯೊಂದಿಗೆ ಹೋಲಿಸುವುದು
if guess < secret_number:
print("ತುಂಬಾ ಕಡಿಮೆ! (Too low!)")
elif guess > secret_number:
print("ತುಂಬಾ ಹೆಚ್ಚು! (Too high!)")
else:
print(f"ಅಭಿನಂದನೆಗಳು! ನೀವು ಸರಿಯಾಗಿ ಊಹಿಸಿದ್ದೀರಿ!")
print(f"ನೀವು {attempts} ಪ್ರಯತ್ನಗಳಲ್ಲಿ ಸಂಖ್ಯೆಯನ್ನು ಕಂಡುಕೊಂಡಿದ್ದೀರಿ.")
except ValueError:
print("ತಪ್ಪಾದ ಇನ್ಪುಟ್. ದಯವಿಟ್ಟು ಒಂದು ಸಂಖ್ಯೆಯನ್ನು ಮಾತ್ರ ನಮೂದಿಸಿ.")
if __name__ == "__main__":
guessing_game()
ವಿವರಣೆ
import random: ಯಾದೃಚ್ಛಿಕ ಸಂಖ್ಯೆಗಳನ್ನು ಉತ್ಪಾದಿಸಲು ಪೈಥಾನ್ನrandomಮಾಡ್ಯೂಲ್ ಅನ್ನು ನಾವು ಇಂಪೋರ್ಟ್ ಮಾಡಿಕೊಳ್ಳುತ್ತೇವೆ.random.randint(1, 100): ಈ ಫಂಕ್ಷನ್ 1 ಮತ್ತು 100 ರ ನಡುವೆ (ಎರಡೂ ಸೇರಿ) ಒಂದು ಯಾದೃಚ್ಛಿಕ ಪೂರ್ಣ ಸಂಖ್ಯೆಯನ್ನು ಆಯ್ಕೆ ಮಾಡುತ್ತದೆ. ಇದೇ ನಮ್ಮ "ರಹಸ್ಯ ಸಂಖ್ಯೆ".while guess != secret_number: ಈwhileಲೂಪ್ ಬಳಕೆದಾರರ ಊಹೆಯು ರಹಸ್ಯ ಸಂಖ್ಯೆಗೆ ಸಮನಾಗುವವರೆಗೆ ಚಾಲನೆಯಲ್ಲಿರುತ್ತದೆ.- ಇನ್ಪುಟ್ ಮತ್ತು ಟೈಪ್ ಪರಿವರ್ತನೆ:
input()ಬಳಸಿ ಬಳಕೆದಾರರ ಊಹೆಯನ್ನು ಸ್ಟ್ರಿಂಗ್ ಆಗಿ ಪಡೆಯುತ್ತೇವೆ. ನಂತರint()ಬಳಸಿ ಅದನ್ನು ಪೂರ್ಣ ಸಂಖ್ಯೆಯಾಗಿ ಪರಿವರ್ತಿಸುತ್ತೇವೆ. try-exceptಬ್ಲಾಕ್: ಬಳಕೆದಾರರು ಸಂಖ್ಯೆಯ ಬದಲು ಅಕ್ಷರಗಳನ್ನು ನಮೂದಿಸಿದರೆ,int()ಫಂಕ್ಷನ್ValueErrorಅನ್ನು ರೈಸ್ ಮಾಡುತ್ತದೆ. ನಮ್ಮ ಪ್ರೋಗ್ರಾಂ ಕ್ರ್ಯಾಶ್ ಆಗದಂತೆ ತಡೆಯಲು ನಾವು ಇದನ್ನುtry-exceptಬ್ಲಾಕ್ನಲ್ಲಿ ಹ್ಯಾಂಡಲ್ ಮಾಡುತ್ತೇವೆ.if-elif-else: ಈ ಬ್ಲಾಕ್ ಬಳಕೆದಾರರ ಊಹೆಯನ್ನು ರಹಸ್ಯ ಸಂಖ್ಯೆಯೊಂದಿಗೆ ಹೋಲಿಸುತ್ತದೆ.- ಊಹೆಯು ಕಡಿಮೆಯಿದ್ದರೆ, "ತುಂಬಾ ಕಡಿಮೆ" ಎಂದು ಪ್ರಿಂಟ್ ಮಾಡುತ್ತದೆ.
- ಊಹೆಯು ಹೆಚ್ಚಾಗಿದ್ದರೆ, "ತುಂಬಾ ಹೆಚ್ಚು" ಎಂದು ಪ್ರಿಂಟ್ ಮಾಡುತ್ತದೆ.
- ಊಹೆಯು ಸರಿಯಾಗಿದ್ದರೆ, ಅಭಿನಂದನಾ ಸಂದೇಶವನ್ನು ಪ್ರಿಂಟ್ ಮಾಡಿ, ಲೂಪ್ ಕೊನೆಗೊಳ್ಳುತ್ತದೆ.
attemptsವೇರಿಯೇಬಲ್: ಬಳಕೆದಾರರು ಎಷ್ಟು ಪ್ರಯತ್ನಗಳಲ್ಲಿ ಸಂಖ್ಯೆಯನ್ನು ಕಂಡುಕೊಂಡರು ಎಂಬುದನ್ನು ಎಣಿಸಲು ಈ ವೇರಿಯೇಬಲ್ ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ.