Fibonacci Series Python में — code, output और dry run
Problem statement
यह program Fibonacci Series को step by step हल करता है। पहले input और expected output समझें, फिर छोटी values पर algorithm चलाकर verify करें।Approach 1: simple loop
Start with the clearest algorithm. Read the input, initialise the answer, and use a for or while loop to process one small piece at a time.
n = 5
answer = 1
for value in range(1, n + 1):
answer = answer * value
print(answer)
# Output: 120This version is deliberately explicit: every update is visible, which makes it useful while learning and while debugging a wrong output.
Approach 2: reusable function
Put the logic in a function so it can be tested with several inputs. A function also makes the boundary rules obvious and keeps input/output separate from computation.
def solve(n):
result = 1
for value in range(1, n + 1):
result *= value
return result
print(solve(5))
# Output: 120Test normal values, the smallest valid value, and an invalid value. Returning a value is easier to reuse than printing inside the algorithm.
Approach 3: Pythonic alternative
Python often has a compact alternative, but use it only after understanding the loop. For example, a built-in, a generator expression, or tuple unpacking can reduce bookkeeping. Keep the compact form readable and explain its assumptions.
# Compact style: the operation is still the same idea
values = [1, 2, 3, 4, 5]
result = 1
for value in values:
result *= value
print(result)
# Output: 120Compare outputs between implementations. If they disagree, inspect the intermediate values instead of guessing.
Dry run
मान लीजिए input 5 है। हर iteration के बाद accumulator की value लिखें और देखें कि loop सही सीमा पर रुकता है। पहले smallest case और फिर सामान्य case से तुलना करें। इस तरह intermediate state देखकर गलती जल्दी मिलती है।Common errors
- गलत range: Python में stop value शामिल नहीं होती।
- Base case या initial value भूल जाना।
- String और integer को बिना सोचें मिलाना।
- Loop के अंदर extra print करके output बिगाड़ना।
- Zero, one और edge cases test न करना।
Practice on PyDebug
Concept समझने के बाद इन free problems को browser में solve करें: