تمرین برنامه نویسی؛ با کدبزن!

منبع جامع سوالات و تمرینات برنامه نویسی

4
+1
+1
+1

آزمون ریاضی

Admin آسان 280/ دانلود 727 بازدید

برنامه ای بنویسید که بصورت تصادفی سوالات مختلف ریاضی چاپ کند و جواب کاربر را دریافت و بررسی کند

مثال:

2 + 1 = ?
input: 3
4 - 1 = ?
3 
فقط سوالات جمع و تفریق و ضرب و تقسیم ساده مجاز است
برنامه باید تا زمانی که کاربر انتخاب نکرده است، ادامه یابد
وقتی برنامه تمام شد، برنامه باید امتیاز کاربر را نمایش دهد (هر جواب درست +1 امتیاز و هر جواب اشتباه -1 امتیاز)

8 جواب

نمیتونم این تمرین رو حل کنم!
4
+1
+1
+1
import random
from colorama import Fore
a1 = 0     
b= ["+","-","*","/"]
while 1:
    print(Fore.BLUE+f"score : {a1}"+Fore.RESET)
    x = random.randint(1,100)
    y = random.randint(1,100)
    g = random.randint(0,3)
    print(f"{x} {b[g]} {y}")
    if g==0:
        d = x+y
        k = input("anser: ")
        if float(k)==d:
            a1 += 1
        if float(k)!=d:
            a1 -= 1
        if float(k)==0:
            break 
    if g==1:
        d = x-y
        k = input("anser: ")
        if float(k)==d:
            a1 += 1
        if float(k)!=d:
            a1 -= 1
        if float(k)==0:
            break 
    if g==2:
        d = x*y
        k = input("anser: ")
        if float(k)==d:
            a1 += 1
        if float(k)!=d:
            a1 -= 1
        if float(k)==0:
            break 
    if g==3:
        d = x/y
        if x%y==0:
            k = input("anser: ")
            if float(k)==d:
                a1 += 1
            if float(k)!=d:
                a1 -= 1
            if float(k)==0:
                break 
Hossein1122 دانلود Python
1
+1
import random
amtiyaz=0
while 1:
    print(f"score :{amtiyaz}")
    a=random.randint(1,100)
    b=random.randint(1,100)
    c=random.choice(['/','*','+','-'])
    print(a,c,b,'=',end='')
    ans=(input(''))
    if ans == 'f':
        break
    ans=float(ans)
    if c =="+" and a+b==ans:
        amtiyaz+=1
    elif c =="/" and '%.2f'%(a/b)=='%.2f'%(ans) or '%.2f'%(a/b)=='%.2f'%(ans+0.01):
        amtiyaz+=1  
    elif c =="-" and a-b==ans:
        amtiyaz+=1
    elif c =="*" and (a*b)==ans:
        amtiyaz+=1
    else:
        amtiyaz-=1
کاربر 1182 دانلود Python
1
+1
import random
jt = 0
jf = 0
emtiyaz = 0

while 1:
    
    a = random.randint(1,10)
    b = random.choice(['-','+','*','//'])
    c = random.randint(1,a)

    v = print(a,b,c,'=')
    
    vu = float(input('javab:'))
    
    jav = a + c
    jav2 = a - c
    jav3 = a * c
    jav4 = a // c
    
    if vu == jav:
        print('dorost')
        print('baraye khuruj vared konid: 111 ')
        print('-'*50)
        emtiyaz += 1
        jt += 1
    
    elif vu == jav2 :
        print('dorost')
        print('baraye khuruj vared konid: 111 ')
        print('-'*50)
        emtiyaz += 1
        jt += 1


    elif vu == jav3 :
        print('dorost')
        print('baraye khuruj vared konid: 111 ')
        print('-'*50)
        emtiyaz += 1
        jt += 1
    
    elif vu == jav4 :
        print('dorost')
        print('baraye khuruj vared konid: 111 ')
        print('-'*50)
        emtiyaz += 1
        jt += 1
    
    else:
        jf += 1
        print('!!nadorost!!')
        if b == '+' :
            if vu != jav :
                print( 'javab dorost:',jav)
                print('baraye khuruj vared konid: 111 ')
                print('-'*50)
    
        elif b == '-' :
            if vu != jav2:
                print( 'javab dorost:',jav2)
                print('baraye khuruj vared konid: 111 ')
                print('-'*50)

        elif b == '*':
            if vu != jav3:
                print( 'javab dorost:',jav3)
                print('baraye khuruj vared konid: 111 ')
                print('-'*50)
    
        elif b == '//' :
            if vu != jav4:
                print( 'javab dorost:',jav4)
                print('baraye khuruj vared konid: 111 ')
                print('-'*50)

        emtiyaz -= 1        

    if vu == 111 :
        print('-' * 50)
        print('az barname kharej shidid.')
        print()
        print('javab hye (dorost) :',jt,'  -   javab haye (nadorost) :',jf-1)
        print()
        print('emtiyaz kolie shoma:',emtiyaz+1)
        break
Rtmobin دانلود Python
1
+1
import random
functions = ['+', '-', 'x', '÷']
score = 0
while True:
    f = input('Do you want to continue ? y/n ')
    if f == 'n':
        print('GG, your score is %i' % score)
        break
    else:
        pass
    a = random.randint(0, 100)
    b = random.randint(0, 100)
    func = random.choice(functions)
    if func == '+':
        print(a, '+', b, '=', '?')
        answer = a+b
        inp = int(input('What is the answer ? '))
        if inp == answer:
            score += 1
            print('Bravo! your score is %i' % score)
        else:
            score -= 1
            print('Wrong')
    elif func == '-':
        print(a, '-', b, '=', '?')
        answer = int(a-b)
        inp = int(input('What is the answer ? '))
        if inp == answer:
            score += 1
            print('Bravo! your score is %i' % score)
        else:
            score -= 1
            print('Wrong')
    elif func == 'x':
        print(a, 'x', b, '=', '?')
        answer = int(a*b)
        inp = int(input('What is the answer ? '))
        if inp == answer:
            score += 1
            print('Bravo! your score is %i' % score)
        else:
            score -= 1
            print('Wrong')
    else:
        print(a, '÷', b, '=', '?')
        answer = (a/b)
        inp = float(input('What is the answer ? '))
        if inp == answer:
            score += 1
            print('Bravo! your score is %i' % score)
        else:
            score -= 1
            print('Wrong')
M3edixd دانلود Python
0
import random
def mark(h1):
    f1=["-","+","/","*"]
    return f1[h1]
error=0
correct=0
while True:
    a=random.randint(0,10)
    b=random.randint(0,10)
    m2=random.randint(0,3)
    m3=mark(m2)
    print(a,m3,b,"= ")
    ans1=int(input())
    if m3=="-":
        ans=a-b
    elif m3=="+":
        ans=a+b
    elif m3=="/":
        if b!=0:
            ans=a/b
        else:
            pass
    elif m3=="*":
        ans=a*b
    if ans1==ans:
        correct=correct+1
    elif ans1!=ans:
        error=error+1
    y=input("Do you want to continue : (y/n) ")
    if y=="n" : break
print ("correct = ",correct)
print ("error = " , error)
Mali110 دانلود Python

بخش امتیازدهی مطابق با سوال نیست. در انتها باید امتیاز نهایی نمایش داده بشه. نه تعداد درست و غلط ها Admin


0
import random
import operator
import time

score = 0
result = []
answer = []

now = time.time()
delay = 10

while True:
           a = random.randint(1,10)
           b = random.randint(1, 10)

           ops = {'+': operator.add(a,b),
           '-': operator.sub(a,b),
           '*': operator.mul(a,b),
           '/': operator.truediv(a,b)}

           random_ops = random.choice(list(ops.keys()))
           opr = ops[random_ops]
           result.append(opr)
           print(a, random_ops ,  b, '=' ,'?')
           ans = int(input('Answer:'))
           answer.append(ans)

           if ans == opr:
               score += 1else:
               score -= 1

           if time.time() > now + delay:
                    user_input = input("Enter 'exit' to quit the loop: ")
                    if user_input.lower() == 'exit':
                                break

time.sleep(1)
print("Loop has been exited.")

print('\n' f'Correct answer:{result}')
print(f'Your answer:{answer}')

print('\n' f'Your score is {score}')
F2030 دانلود Python
0
import random
list1 = ["a","b"]
quest = random.choice(list1)
if quest == "a":
    print("1+1=?")
    b =input("your answer?")
    if b == "2":
        print("+1")
    else:
        print("-1")
else:
    print("2+2=?")
    a= input("your answer?")
    if a == "4":
        print("+1")
    else:
        print("-1")
Negar دانلود Python
0
import random
list=['*','+','/','-']
score=0
print('write "10000" for finish the game\n\n')
while True :
    ans=uans=0
    num1=random.randint(1,10)
    num2=random.randint(1,10)
    amalgar=random.choice(list)
    if amalgar=='*' :
        ans=num1*num2
    elif amalgar=='+' :
        ans=num1+num2
    elif amalgar=="/" :
        ans=num1/num2
    elif amalgar=="-" :
        ans=num1-num2 
    uans=float(input("{} {} {} : ".format(num1,amalgar,num2)))
    if uans==10000 : 
        print('game finished , your score is {}.'.format(score))
        breakif uans==ans : 
        score+=1print('welldone , your score is {}.'.format(score))
    else :
        score-=1    
        print('wrong , answer is {} , your score is {}.'.format(ans,score))
Soheyl دانلود Python

ارسال جواب

# کداتو توی این بخش بنویس
# فرقی نمیکنه چه زبان برنامه نویسی باشه، همرو پشتیبانی میکنیم :)
# البته قبلش این سه خط رو پاک کن


  • تو جوابت میتونی از تصویر، کد، لینک به سایر صفحات و... استفاده کنی
  • لطفا جواب های تکراری ارسال نکن
  • جواب های ارسالی، پس از بررسی کوتاهی، ویرایش میشن و در سایت نمایش داده میشن
  • ارسال جواب حق مادی یا معنوی برای ارسال کننده ایجاد نمیکند و تمام حقوق برای سایت کدبزن محفوظ است

تمرینات مرتبط

تشخیص با استفاده از هوش مصنوعی
×
×
بستن