𝗣𝘆𝘁𝗵𝗼𝗻 𝗖𝗵𝗮𝗹𝗹𝗲𝗻𝗴𝗲𝘀
24 subscribers
2 photos
Download Telegram
𝗣𝘆𝘁𝗵𝗼𝗻 𝗖𝗵𝗮𝗹𝗹𝗲𝗻𝗴𝗲𝘀
Proj_17 برنامه‌ای بنویسید که بازی جنگجو را اجرا کند. در این بازی، کاربر یک بازیکن با نام و سطح انرژی است. در هر مرحله‌ی بازی می‌تواند به دشمن حمله کند که باعث کاهش انرژی خود و دشمن میشود و یا می‌تواند استراحت کند و انرژی‌اش افزایش دهد. همچنین در نوبت دشمن،…
import random 

class Warrior:
def __init__(self, name, energy=5):
self.name = name
self.energy = energy

def attack(self, enemy):
damage = 3
self.energy -= 3
enemy.energy -= damage
print(f" {self.name} attached {damage} to {enemy.name}")

def rest(self):
heal = 4
self.energy += heal
print(f"{self.name} rested and get {heal} energy!")

player = Warrior(input("enter your name: "), 5)
enemy = Warrior("enemy", 5)

print("a=attack, r=rest, q=quit")

while True:
print( {player.name}, ":" , {player.energy}, "," , {enemy.name} , ":", {enemy.energy})

choice = input("choose (a/r/q): ").lower()

if choice == "a":
if player.energy >= 3:
player.attack(enemy)
else:
print("not enough energy to attack!")
elif choice == "r":
player.rest()
elif choice == "q":
print("game over!")
break
else:
print("not found!")

if player.energy <= 0:
print(f"\n{player.name} lose!")
break
if enemy.energy <= 0:
print(f"\n{player.name} win!")
break

if enemy.energy > 3 and random.choice([True, False]):
enemy.attack(player)
else:
enemy.rest()
Proj_18

برنامه‌ای بنویسید که یک ماشین حافظه‌خوان بسازد. برنامه‌ای که بتواند لیستی از کلمات را به خاطر بسپارد و و بعدا از شما امتحان بگیرد! اعداد یا ‌کلمات به مدت چند ثانیه به نمایش در می‌آیند و کاربر باید عین آنها را بنویسد تا امتیاز بگیرد.


مفاهیم مورد نیاز:
#library #iteration #function

سطح:
#stage_2
👨‍💻2
𝗣𝘆𝘁𝗵𝗼𝗻 𝗖𝗵𝗮𝗹𝗹𝗲𝗻𝗴𝗲𝘀
Proj_18 برنامه‌ای بنویسید که یک ماشین حافظه‌خوان بسازد. برنامه‌ای که بتواند لیستی از کلمات را به خاطر بسپارد و و بعدا از شما امتحان بگیرد! اعداد یا ‌کلمات به مدت چند ثانیه به نمایش در می‌آیند و کاربر باید عین آنها را بنویسد تا امتیاز بگیرد. مفاهیم مورد…
import time
import os
import random

def memory_machine():
    words = ['apple', 'moon', 'star', 'book', 'tree', 'mirror', 'snow', 'television', 'sand', 'codes']
    selected_words = random.sample(words, 5)
   
    print("Memorize these words:")
    print(", ".join(selected_words))
   
    time.sleep(7)
   
    os.system('cls' if os.name == 'nt' else 'clear')
   
    user_input = input("Enter the words in order (separate with commas): ")
    user_words = [word.strip() for word in user_input.split(',')]
   
    score = 0
    for i in range(min(len(selected_words), len(user_words))):
        if selected_words[i] == user_words[i]:
            score += 1
   
    print(f"\nYour score: {score} out of {len(selected_words)}")
    print("Correct words:", ", ".join(selected_words))
    print("Your answer:", ", ".join(user_words))

if name == "main":
    print("=== Memory Machine ===")
    print("Try to remember all the words!")
    memory_machine()
Proj_19

برنامه‌ای بنویسید که رشته‌ای را از کاربر بگیرد و کاراکترهایی را از آن حذف کرده و در نهایت رشته جدید را برگرداند.

مثال: رشته "hello" را دریافت کرده و کاراکتر o را حذف می‌کند و در خروجی "hell" را برمی‌گرداند.


مفاهیم مورد نیاز:
#iteration

سطح:
#stage_1
Proj_20

برنامه‌ای بنویسید که بازی سنگ کاغد قیچی را با استفاده از تابع اجرا کند. در این بازی کامپیوتر از کاربر سنگ، کاغذ یا قیچی را می‌پرسد و در نوبت خود به طور رندوم یکی را انتخاب می‌کند. برنامه ۳ بار اجرا می‌شود و برنده و تعداد برد و باخت و یا برابری نشان داده می‌شود.


مفاهیم مورد نیاز:
#iteration #library #function

سطح:
#stage_1
👏2🤯1
𝗣𝘆𝘁𝗵𝗼𝗻 𝗖𝗵𝗮𝗹𝗹𝗲𝗻𝗴𝗲𝘀
Proj_20 برنامه‌ای بنویسید که بازی سنگ کاغد قیچی را با استفاده از تابع اجرا کند. در این بازی کامپیوتر از کاربر سنگ، کاغذ یا قیچی را می‌پرسد و در نوبت خود به طور رندوم یکی را انتخاب می‌کند. برنامه ۳ بار اجرا می‌شود و برنده و تعداد برد و باخت و یا برابری نشان…
import random

def play_game():
choices = ['rock', 'paper', 'scissors']
wins = 0

for round in range(3):
player = input(f"Round {round+1}: rock, paper or scissors? ").strip().lower()
computer = random.choice(choices)

print(f"Computer chose: {computer}")

if player == computer:
print("Tie!")
elif (player == 'rock' and computer == 'scissors') or \
(player == 'paper' and computer == 'rock') or \
(player == 'scissors' and computer == 'paper'):
print("You win!")
wins += 1
else:
print("Computer wins!")

print(f"\nYou won {wins} out of 3 rounds")

play_game()
3🤯2
Proj_21

برنامه‌ای بنویسید که رمز یک گاوصندوق را که از چهار عدد تشکیل شده است را پیدا کند و گاوصندوق را باز کند.
گاوصندوق محدودیتی در تلاش برای حدس زدن رمز ندارد و هرچند بار که خواستید میتوانید رمز امتحان کنید.


مفاهیم مورد نیاز:
#iteration

سطح:
#stage_1
2🤯2
Proj_22

برنامه‌ای بنویسید که با تابع یک رشته متنی را رمزگذاری کند. این تابع باید حرف به حرف رشته ورودی را بررسی کرده و هر حرف را با حرف بعدی در الفبا جایگزین کند. برای مثال، a به b، b به c و ... تبدیل شود. حروف بزرگ نیز باید به همین ترتیب تغییر کنند (مثلاً A به B). نکته مهم این است که حرف z باید به a و Z به A تبدیل شود. کاراکترهایی که حرف نیستند (مانند اعداد، علائم نگارشی، فاصله و ...) باید بدون تغییر باقی بمانند.

مثال: "Hi" را به "Ij" تبدیل می‌کند.


مفاهیم مورد نیاز:
#iteration #function

سطح:
#stage_1
🤯2
𝗣𝘆𝘁𝗵𝗼𝗻 𝗖𝗵𝗮𝗹𝗹𝗲𝗻𝗴𝗲𝘀
Proj_22 برنامه‌ای بنویسید که با تابع یک رشته متنی را رمزگذاری کند. این تابع باید حرف به حرف رشته ورودی را بررسی کرده و هر حرف را با حرف بعدی در الفبا جایگزین کند. برای مثال، a به b، b به c و ... تبدیل شود. حروف بزرگ نیز باید به همین ترتیب تغییر کنند (مثلاً…
def encrypt_string(text):
    encrypted_text = ""
    for char in text:
        if 'a' <= char <= 'y':
            encrypted_text += chr(ord(char) + 1)
        elif char == 'z':
            encrypted_text += 'a'
        elif 'A' <= char <= 'Y':
            encrypted_text += chr(ord(char) + 1)
        elif char == 'Z':
            encrypted_text += 'A'
        else:
            encrypted_text += char
    return encrypted_text
🤯2
Proj_23

برنامه‌ای بنویسید که با استفاده از تابع فاکتوریل عدد ورودی را حساب کند.

مثال: عدد 5 را کاربر وارد کرده و کامپیوتر بعد از محاسبه‌ی (1*2*3*4*5) عدد 120 را برمیگرداند.


مفاهیم مورد نیاز:
#function #iteration

سطح:
#stage_1
🤯2
𝗣𝘆𝘁𝗵𝗼𝗻 𝗖𝗵𝗮𝗹𝗹𝗲𝗻𝗴𝗲𝘀
Generator function تفاوت این تابع با توابع کلاسیک این است که در محاسبات خیلی طولانی و پیچیده زمان و مموری کمتری مصرف میکند. همچنین توابع کلاسیک یک مقدار برگردانده و سپس بسته میشوند ولی توابع generator میتوانند نامحدود بار صدا زده و کار انجام دهند. از لحاظ…
Proj_24

برنامه‌ای بنویسید که یک لیست از اعداد صحیح و یک عدد صحیح دریافت کند؛ سپس هر زیر مجموعه از لیست که مجموع اعدادش برابر با عدد صحیح ورودی باشد را چاپ کند.

مثال: کاربر یک لیست [1,3,5,-1] و عدد 4 را وارد میکند سپس دو لیست [1,3] و [5,-1] بر روی صفحه‌ی نمایش نشان داده میشود.


مفاهیم مورد نیاز:
#generator_function #iteration

سطح:
#stage_2
👌31🤯1💔1
𝗣𝘆𝘁𝗵𝗼𝗻 𝗖𝗵𝗮𝗹𝗹𝗲𝗻𝗴𝗲𝘀
Proj_24 برنامه‌ای بنویسید که یک لیست از اعداد صحیح و یک عدد صحیح دریافت کند؛ سپس هر زیر مجموعه از لیست که مجموع اعدادش برابر با عدد صحیح ورودی باشد را چاپ کند. مثال: کاربر یک لیست [1,3,5,-1] و عدد 4 را وارد میکند سپس دو لیست [1,3] و [5,-1] بر روی صفحه‌ی…
while True:
    try:
        my_list_str = input("Enter your numbers with space (e.g., 1 3 5 -1): ")
        my_list = [int(x) for x in my_list_str.split()]
        break
    except ValueError:
        print("Invalid input. Please enter numbers separated by spaces.")

while True:
    try:
        num = int(input("Enter your target sum: "))
        break
    except ValueError:
        print("Invalid input. Please enter an integer for the target sum.")

def Subcategory(numbers, target_sum):
    all_possible_subsets = []

    def generate_all_subsets(current_index, current_subset):
        if current_index == len(numbers):
            all_possible_subsets.append(list(current_subset))
            return

        current_subset.append(numbers[current_index])
        generate_all_subsets(current_index + 1, current_subset)
        current_subset.pop()

        generate_all_subsets(current_index + 1, current_subset)

    generate_all_subsets(0, [])

    found_any = False
    print(f"\nSearching for subsets in {numbers} that sum to {target_sum}:")

    for subset in all_possible_subsets:
        if sum(subset) == target_sum:
            print(subset)
            found_any = True

    if not found_any:
        print("No subsets found that sum to the target number.")

Subcategory(my_list, num)
🤯3🔥2