Home > Back-end >  printing output values together with some multiplication parameter
printing output values together with some multiplication parameter

Time:11-12

I tried write a code that the given numbers multiply by ten for each input, and then sum all of those values. If their summation is bigger than 100 it will stop. Furthermore I want to print the output as "Program ends because 10*3 10*1 10\*8 = 120, which is not less than 100" while the input parameters are 3,1,8 accordingly.

The code is works fine but the i couldnt figure out how to print as i mentioned before. Thanks

`

l=[]
k=[]

while True:
    n = int(input("Enter Number to calculate: "))
    p=n*10
    l.append(p)
    k.append(n)
    s= sum(l)
    h = "10*"
    if s>=100:
        for i in range(len(k)) :
             print("Program ends because" "{}".format(h) k[i])
        break

`

CodePudding user response:

You can construct the end message, then print it, like this:

l=[]
k=[]

while True:
    n = int(input("Enter Number to calculate: "))
    p=n*10
    l.append(p)
    k.append(n)
    s= sum(l)
    h = "10*"
    if s>=100:
        message = "Program ends because "
        for i in range(len(k)) :
            message  = h   str(k[i])   ' '*(i != len(k)-1)
        message  = ' = '   str(s)   " , which is not less than 100."
        print(message)
        break

# Program ends because 10*4 10*5 10*8 = 170 , which is not less than 100.

A more efficient way to deal with the ending (the message is built in one instruction, and the join method removes the need to deal with the final " "):

if s>=100:
    print("Program ends because "   ' '.join([ h   str(i) for i in k])   ' = '   str(s)   " , which is not less than 100.")
    break

CodePudding user response:

l=[]
k=[]
txt = "Program ends because "

while True:
    n = int(input("Enter Number to calculate: "))
    p=n*10
    l.append(p)
    k.append(n)
    s= sum(l)
    h = "10*"
    if s>=100:
        for i in range(len(k)) :
            if i == 0 :

                txt  = h str(k[i])

            else :

                txt  = " " h str(k[i])
        break

print(txt)

If you want try this codes. I made a new variable and I added entered number and sentence in it. In for loop if index == 0 I didn't add plus but if index != 0 I added plus to beginning.

  • Related