Need help with a function that calls other functions.
 Need help with a function that calls other functions. skurrtboi Unladen Swallow Posts: 2 Threads: 1 Joined: Sep 2019 Reputation: 0 Sep-30-2019, 06:06 PM (This post was last modified: Sep-30-2019, 06:10 PM by ichabod801.) Im pretty new at programming, but atm im trying to make a function that takes two user inputs and use the input on previously made functions. I only need help with the last part (part 4). (BTW some of the words are in norwegian so here are some translated word to make it easier to understand if you need it): addisjon - addition, tall - number, subtraksjon - subtraction, divisjon - division, retur - return, verdi - value, tommer - inches, beregninger - calculations, Skriv inn - write. THANK YOU IN ADVICE! ```""" 1""" def addisjon (tall1, tall2): return tall1 + tall2 returverdi = addisjon (5, 5) assert addisjon (5,5)==10 assert addisjon (-10, -10)==-20 assert addisjon (-7, 10)==3 print (returverdi) """ 2 """ def subtraksjon (tall1, tall2): return tall1 - tall2 returverdi = subtraksjon (15, 6) assert subtraksjon (15,15)==-0 assert subtraksjon (-30, 20)==-50 assert subtraksjon (-20, -10)==-10 print (returverdi) def divisjon (tall1, tall2): return tall1 / tall2 returverdi = divisjon (50, 5) assert divisjon (30, 2)==15 assert divisjon (-50, 3)==-16.666666666666668 assert divisjon (-30, -6)==5 print (returverdi) """ 3 """ def tommerTilCm (antallTommer): assert antallTommer > 0 return antallTommer * (2.54) returverdi = tommerTilCm (12) print (returverdi), "Cm" """ 4 """ def skrivBeregninger(): a=input ("Skriv inn tall 1: ") b=input ("Skriv inn tall 2: ") for a and b in skrivBeregninger(): print (addisjon) print (subtraksjon) print (divisjon) print (skrivBeregninger()) ``` Reply ichabod801 Bunny Rabbit Posts: 4,231 Threads: 97 Joined: Sep 2016 Reputation: 273 Sep-30-2019, 06:16 PM Your last function is calling itself on line 48. This will go on forever, since there is nothing to stop the function between the start of the function and it calling itself. It's not sure what you are trying to do here. Do you want the last function to add, subtract, and divide a and b? If so, you don't need a loop, but you need to call those functions with a and b as parameters (just like you do in all of your test code). In the future, please describe the error you are having, including the full text of any error messages. It makes it much easier on our end. Craig "Ichabod" O'Brien - xenomind.com I wish you happiness. Recommended Tutorials: BBCode, functions, classes, text adventures Reply skurrtboi Unladen Swallow Posts: 2 Threads: 1 Joined: Sep 2019 Reputation: 0 Sep-30-2019, 06:53 PM I see. Im spesifically trying to not take parameters on this last part, but instead take two user inputs and run those two numbers through addition, subtraction and division and then print the outcome of each function. Sorry, first time posting here! Reply ichabod801 Bunny Rabbit Posts: 4,231 Threads: 97 Joined: Sep 2016 Reputation: 273 Sep-30-2019, 08:39 PM Okay, but you need to pass those two user inputs as parameters to the three math functions. Craig "Ichabod" O'Brien - xenomind.com I wish you happiness. Recommended Tutorials: BBCode, functions, classes, text adventures Reply stullis Minister of Silly Walks Posts: 439 Threads: 1 Joined: Sep 2018 Reputation: 61 Sep-30-2019, 09:28 PM As Ichabod stated, the functions need to have values for their arguments; there's no way around it. However, there are a couple addition items to change to accomplish your goal. Line 48 won't work. A for loop only works on objects with a __next__() method. This line will raise a NoneType error, most likely. For your desired outcome, you don't need a for loop at all; the variables "a" and "b" are already there. Lines 49 - 51 will print a memory location instead of the output of the functions. This is due to the functions being referenced but not called. To call them, parentheses are needed afterward along with their argument values. Line 52 will print "None" because skrivBeregninger() does not return a value. You may want to return all three functions in a tuple from skrivBeregninger(). ```def skrivBeregninger(): a=input ("Skriv inn tall 1: ") b=input ("Skriv inn tall 2: ") return (addisjon(a, b), subtraksjon(a, b), divisjon(a, b)) ``` Reply

 Possibly Related Threads… Thread Author Replies Views Last Post RuntimeError: Optimal parameters not found: Number of calls to function has reached m bntayfur 0 279 Aug-05-2020, 04:41 PM Last Post: bntayfur Run a timer when a functions starts to see how long the function takes to complete Pedroski55 2 393 Apr-19-2020, 06:28 AM Last Post: Pedroski55 creating a list of dictionaries from API calls AndrewEnglsh101 5 466 Apr-03-2020, 02:21 PM Last Post: AndrewEnglsh101 How to intercept python method calls? DineshBhat 0 513 Jul-15-2019, 03:46 AM Last Post: DineshBhat How to split a string containing function calls? Metalman488 4 987 Oct-27-2018, 06:50 PM Last Post: Metalman488 call a function from other functions ... evilcode1 2 962 Sep-05-2018, 09:07 AM Last Post: evilcode1 Testing function calls jenselme 1 906 Jul-25-2018, 10:33 AM Last Post: Larz60+ argument parser: to execute single function, and subsequent functions also raghu 10 2,240 Mar-12-2018, 06:57 AM Last Post: wavic Function to Continuasly monitor serial port and control other functions ricardons 10 3,414 Mar-04-2018, 10:34 PM Last Post: Larz60+ function state between calls Skaperen 5 2,028 Feb-08-2018, 02:20 AM Last Post: Skaperen

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020