Jag har försökt fått mina variabler "u_lage" "u_skil" "u_diff" "i_till" till värden som fungerar i denna funktion.
Om jag gör int(input()) så kan jag inte använda mig av 0.0 värden, och använder jag float(input()) så funkar inte dessa i min beräkning konstigt nog!
Python 3.0 är det som gäller
def testa():
print(
'\n\n\n'
'Talföljder'
'\n'
)
# utgångsvärden
u_lage = float(input('Ange det första utgångsvärdet: '))
print(
'\n\nVälj skiljetecken\n'
'1) Addition\n'
'2) Substaration\n'
'3) Multiplikation\n'
)
u_skil = float(input('Vad ska skiljetecket vara: '))
u_diff = float(input('Ange värdet för differens: '))
# intervall
i_till = float(input('Vilket intervall: '))
i_till += 1
int(u_lage)
int(u_skil)
int(u_diff)
int(i_till)
# confirm
print(
'\n#####################\n'
'Du har valt följande:\n'
'Från talet', u_lage, 'ska det', '(', u_skil, ') med', u_diff,
'i intervallet', i_till - 1, '\n'
'\nStämmer detta? \n"j" = ja \n"n"= nej'
)
con = input('Välj: ')
if con == 'j':
print('Räknar...\n\n')
elif con == 'n':
print('Skickas tillbaka...\n\n')
return 0
# for loop
y = u_lage
for x in range(1, i_till):
if x < 10:
print('x=', x, ' y=', y)
else:
print('x=', x, 'y=', y)
if u_skil == '1':
y = y + u_diff
elif u_skil == '2':
y = y - u_diff
elif u_skil == '3':
y = y * u_diff
else:
import time
time.sleep(1)
print ('ERROR...')
time.sleep(1)
print ('Du kan bara välja angivna skiljetecken!')
time.sleep(1)
print ('Laddar nästa...\n\n\n')
time.sleep(3)
return 0
Jag vet inte om det kommer att lösa dina problem fullt ut, men jag ser omdelebart två problem.
1)
int(u_lage)
int(u_skil)
int(u_diff)
int(i_till)
Denna kod gör "ingenting". Variabelns värde koverteras till int, och sedan kastas värdet bort, och variabeln är oförändrad. Du måste tilldela variabeln det nya värdet för att det ska vara någon mening med det.
Eftersom u_skil inte kommer att vara en sträng utan ett nummer kommer de jämförelserna alltid att vara falska, och koden kommer alltid hamna i "else" oavsett värde på på u_skil. Ändra till if u_skil == 1: osv.
För övrigt, int är heltal (0, 1, 3, 42, -1337 osv) medan float även kan innehålla tal med decimaler. Du bör använda den typ som passar dina behov.
Sen kunde koden ha varit snyggare på olika sätt, men där har du nog de problem som gör att din kod inte funkar.
270 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849