Sunday, 7 April 2024

Python Coding challenge - Day 169 | What is the output of the following Python Code?

 

Code: 

def sum(num):
    if num == 1:
        return 1
    return num + sum(num-1)
print(sum(4))

Solution and Explanantion: 

This is a recursive Python function named sum. It calculates the sum of integers from 1 to a given number (num). Let's break it down:

def sum(num)::

This line defines a function named sum that takes one argument, num.

if num == 1::

This is a base case for the recursion. It checks if the input num is equal to 1.

return 1:

If num is indeed 1, it returns 1. This is the base case of the recursion where the sum of integers from 1 to 1 is 1.

return num + sum(num-1):

If num is not equal to 1, it returns the sum of num and the result of calling sum recursively with num-1. This line adds the current value of num to the sum of all integers from 1 to num-1.

print(sum(4)):

This line calls the sum function with the argument 4, meaning it will calculate the sum of integers from 1 to 4.

Let's trace how this works with sum(4):

sum(4) calls sum(3)

sum(3) calls sum(2)

sum(2) calls sum(1)

sum(1) returns 1 (base case)

sum(2) returns 2 + 1 = 3

sum(3) returns 3 + 3 = 6

sum(4) returns 4 + 6 = 10

So, print(sum(4)) will output 10.

0 Comments:

Post a Comment

Popular Posts

Categories

100 Python Programs for Beginner (53) AI (34) Android (24) AngularJS (1) Assembly Language (2) aws (17) Azure (7) BI (10) book (4) Books (173) C (77) C# (12) C++ (82) Course (67) Coursera (226) Cybersecurity (24) data management (11) Data Science (128) Data Strucures (8) Deep Learning (20) Django (14) Downloads (3) edx (2) Engineering (14) Excel (13) Factorial (1) Finance (6) flask (3) flutter (1) FPL (17) Google (34) Hadoop (3) HTML&CSS (47) IBM (25) IoT (1) IS (25) Java (93) Leet Code (4) Machine Learning (59) Meta (22) MICHIGAN (5) microsoft (4) Nvidia (3) Pandas (4) PHP (20) Projects (29) Python (932) Python Coding Challenge (363) Python Quiz (24) Python Tips (2) Questions (2) R (70) React (6) Scripting (1) security (3) Selenium Webdriver (3) Software (17) SQL (42) UX Research (1) web application (8) Web development (2) web scraping (2)

Followers

Person climbing a staircase. Learn Data Science from Scratch: online program with 21 courses