Programming DSA using Python Nptel Week 1 Assignment Answers

These are Programming Data Structures and Algorithms using Python Week 1 Nptel Assignment Answers. All courses answers available here at Progiez.


Programming Data Structures and Algorithms using Python Week 1

Programming Data Structures and Algorithms using Python Week 1 (July-Dec 2025)


Question 1. What is the value of g(728) for the function below?

def g(y):
    b = 0
    while y >= 3:
        (y,b) = (y/3,b+1)
    return(b)

a) 5
b) 6
c) 7
d) 8

View Answers


Question 2. What is f(90)-f(89), given the definition of f below?

def f(n):
    s = 0
    for i in range(2,n):
        if n%i == 0 and i%2 == 1:
            s = s+1
    return(s)

a) 0
b) 1
c) 2
d) 3

View Answers


Question 3. Consider the following function h.

def h(n):
    s = True
    for i in range(1,n+1):
        if i*i == n:
            s = False
    return(s)

The function h(n) given above returns False for a positive number n if and only if:

a) n is an odd number.
b) n is a prime number.
c) n is a perfect square.
d) n is a composite number.

View Answers


Question 4. Consider the following function foo.

def foo(m):
    if m == 0:
      return(0)
    else:
      return(m+foo(m-1))

Which of the following is correct?

a) The function always terminates with foo(n) = factorial of n
b) The function always terminates with foo(n) = n(n+1)/2
c) The function terminates for non­negative n with foo(n) = factorial of n
d) The function terminates for non­negative n with foo(n) = n(n+1)/2

View Answers


Programming Data Structures and Algorithms using Python Week 1 (Jan-Apr 2025)

Course Link: Click Here


Que. 1) What is the value of f(8538) for the function below?

def f(x):
    d = 0
    y = 1
    while y <= x:
        d = d + 1
        y = y * 3
    return d

View Answer


Que. 2) What is h(61) - h(60), given the definition of h below?

def h(n):
    s = 0
    for i in range(1, n + 1):
        if n % i > 0:
            s = s + 1
    return s

View Answer


Que. 3) For what integer value n would g(87, n) return 12?

def g(m, n):
    res = 0
    while m >= n:
        res = res + 1
        m = m - n
    return res

View Answer


Que. 4) Consider the following function mys:

def mys(m):
    if m == 1:
        return 1
    else:
        return m * mys(m - 1)

Which of the following is correct, assuming we always pass an integer argument to mys?
A) The function always terminates with mys(n) = factorial of n
B) The function always terminates with mys(n) = 1 + 2 + ... + n
C) The function terminates for non-negative n with mys(n) = factorial of n
D) The function terminates for positive n with mys(n) = factorial of n

View Answer


Programming Data Structures and Algorithms using Python Week 1 (July-Dec 2024)

Course Link: Click Here

For answers or latest updates join our telegram channel: Click here to join

These are Programming Data Structures and Algorithms using Python Week 1 Nptel Assignment 1 Answers


Q1. What does h(27993) return for the following function definition?
def h(x):
(d,n) = (1,0)
while d <= x:
(d,n) = (d*3,n+1)
return(n)

Answer:10


Q2.What is g(60) – g(48), given the definition of g below?
def g(n):
s=0
for i in range(2,n):
if n%i == 0:
s = s+1
return(s)

Answer: 2


For answers or latest updates join our telegram channel: Click here to join

These are Programming Data Structures and Algorithms using Python Week 1 Nptel Assignment 1 Answers


Q3. Consider the following function f.
def f(n):
s=0
for i in range(1,n+1):
if n//i == i and n%i == 0:
s = 1
return(s%2 == 1)
The function f(n) given above returns True for a positive number n if and only if:

n is an odd number.
n is a prime number.
n is a perfect square.
n is a composite number.

Answer: n is a perfect square


Q4. Consider the following function foo.
def foo(m):
if m == 0:
return(0)
else:
return(m+foo(m-1))
Which of the following is correct?

The function always terminates with foo(n) = factorial of n
The function always terminates with foo(n) = n(n+1)/2
The function terminates for non­negative n with foo(n) = factorial of n
The function terminates for non­negative n with foo(n) = n(n+1)/2

Answer: The function terminates for non­negative n with foo(n) = n(n+1)/2


For answers or latest updates join our telegram channel: Click here to join

These are Programming Data Structures and Algorithms using Python Week 1 Nptel Assignment 1 Answers

Programming, Data Structures and Algorithms using Python NPTEL All weeks: Click Here

More Nptel Courses: https://progiez.com/nptel-assignment-answers


These are Programming Data Structures and Algorithms using Python Week 1 Nptel Assignment 1 Answers