Question

    What will be the output of the following code snippet demonstrating abstraction in Python?

    from abc import ABC, abstractmethod

    class Shape(ABC):

        @abstractmethod

        def area(self):

            pass

    class Circle(Shape):

        def __init__(self, radius):

            self.radius = radius

        def area(self):

            return 3.14 * self.radius * self.radius

    circle = Circle(5)

    print(circle.area())

    A 3.14 Correct Answer Incorrect Answer
    B 31.4 Correct Answer Incorrect Answer
    C 78.5 Correct Answer Incorrect Answer
    D 25 Correct Answer Incorrect Answer
    E TypeError Correct Answer Incorrect Answer

    Solution

    In the given code snippet, an abstract base class Shape is defined with an abstract method area. The Circle class inherits from Shape and implements the area method, which calculates the area of a circle using the formula πr2\pi r^2πr2. When the Circle instance with a radius of 5 is created, calling circle.area() computes the area as 3.14×5×5=78.53.14 \times 5 \times 5 = 78.53.14×5×5=78.5. Therefore, the output is 78.5. Why Other Options Are Wrong: A) 3.14: This option is incorrect because it only represents the value of π, not the computed area. B) 31.4: This option is incorrect as it suggests a miscalculation of the area, possibly interpreting it as π multiplied by the radius. D) 25: This option is incorrect because it reflects the square of the radius (5), not the area. E) TypeError: This option is incorrect because there is no type error; the code correctly implements abstraction and executes without issues.

    Practice Next

    Relevant for Exams: