DEV Community

Guru prasanna
Guru prasanna

Posted on

Python Day - 11 Looping-Examples and Tasks

Task:1

#Print Numbers
#Write a program to print numbers from 1 to 10 using a while loop.

def print_numbers(num):
    no=1
    while no<=num:
        print(no,end=' ')
        no+=1
print_numbers(10)

Enter fullscreen mode Exit fullscreen mode

Output:

1 2 3 4 5 6 7 8 9 10 
Enter fullscreen mode Exit fullscreen mode

Task:2

#Sum of N Numbers
#Write a program to calculate the sum of the first NN natural numbers using a while loop.

def nat_num(N):
    sum = 0
    natural_no = 1

    while natural_no <= N:
        sum += natural_no
        natural_no += 1
    return sum
N = int(input("Enter the no: "))
print(nat_num(N))
Enter fullscreen mode Exit fullscreen mode

Output:

Enter the no: 10
Sum of 10 natural numbers are 55

Enter fullscreen mode Exit fullscreen mode

Task:3

#Find even numbers between 1 to 50

def even_number(num):
    no=2
    while no<=num:
        print(no, end=" ")
        no+=2
num=int(input("Enter the number: "))
even_number(num)
Enter fullscreen mode Exit fullscreen mode

Output:

2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50
Enter fullscreen mode Exit fullscreen mode

Task:4

#Find odd numbers between 1 and NN

def odd_number(num):
    no=1
    while no<=num:
        print(no, end=" ")
        no+=2

num=int(input("Enter the number:"))
odd_number(num)

Enter fullscreen mode Exit fullscreen mode

Output:

Enter the number:15
1 3 5 7 9 11 13 15
Enter fullscreen mode Exit fullscreen mode

Task:5

#Multiplication table of number NN
#NN-2

no=1
while no<=10:
    print(f'{no}*2={no*2}')
    no+=1 
Enter fullscreen mode Exit fullscreen mode

Output:

1*2=2
2*2=4
3*2=6
4*2=8
5*2=10
6*2=12
7*2=14
8*2=16
9*2=18
10*2=20

Enter fullscreen mode Exit fullscreen mode

Factorial:

Write a program to calculate the factorial of a given number using a while loop.

Case-1

no = 1
factorial = 1

factorial = factorial * no #1
no = no+1 #2
factorial = factorial * no #2
no = no+1 #3
factorial = factorial * no #6
no = no+1 #4
factorial = factorial * no #24
no = no+1 #5
factorial = factorial * no #120
print(factorial)
Enter fullscreen mode Exit fullscreen mode

Case-2

def find_factorial(num):
    no=1
    factorial=1
    while no<=num:
        factorial=factorial*no
        no+=1
    return factorial

num=int(input("Enter the number:"))
print(find_factorial(num))
Enter fullscreen mode Exit fullscreen mode

For scenarios output will be same
Output:

Enter the number:5
120

Enter fullscreen mode Exit fullscreen mode

Sum of digits:
Find the sum of the digits of a given number (e.g., 123 → 1+2+3=61+2+3=6).

def sum_of_digits(num):
    sum=0
    while num>0:
        sum=sum+num%10
        num=num//10
    return sum
num=int(input("Enter the number:"))
print(sum_of_digits(num))
Enter fullscreen mode Exit fullscreen mode

Output:

Enter the number:123
6
Enter fullscreen mode Exit fullscreen mode

Count Digits

To count the number of digits in a given number (e.g., 12345 → 5 digits).

def count_of_digits(no):
    count=0
    while no>0:
        no=no//10
        count+=1
    return count
no=int(input("Enter the number:"))
print(count_of_digits(no))
Enter fullscreen mode Exit fullscreen mode

Output:

Enter the number:12345
5
Enter fullscreen mode Exit fullscreen mode

Reverse numbers
To reverse a number

def reverse_no(num):
    reverse = 0
    while num>0:
        reverse = (reverse*10) + num%10
        num = num//10
    return reverse


print(reverse_no(1234)) 
Enter fullscreen mode Exit fullscreen mode

Output:

Enter the number:12345
54321
Enter fullscreen mode Exit fullscreen mode

Check Palindrome

check if a given number is a palindrome (e.g., 121 → palindrome, 123 → not a palindrome).

def palindrome(num):
    count=0
    while num>0:
        count=count*10+num%10
        num=num//10
    return count
num=int(input("Enter the number:"))
result=palindrome(num)
if result==num:
    print("Palindrome")
else:
    print("Not palindrome")
Enter fullscreen mode Exit fullscreen mode

Output:

Enter the number:121
Palindrome
Enter the number:123
Not palindrome
Enter fullscreen mode Exit fullscreen mode

Find power

def find_power(base,power):
    result=1
    while power>=1:
        result=result*base
        power-=1
    return result
base=int(input("Enter the base number:"))
power=int(input("Enter the power number:"))
result=find_power(base,power)
print(result)
Enter fullscreen mode Exit fullscreen mode

Output:

Enter the base number:5
Enter the power number:2
25
Enter fullscreen mode Exit fullscreen mode

Armstrong Number

Image description

Example:

def count_of_digits(num):
    count=0
    while num>0:
        num=num//10
        count+=1
    return count

def find_power(base,power):
    result=1
    while power>=1:
        result=result*base
        power-=1
    return result

def find_armstrong(num):
    armstrong=0
    while num>0:
        rem=num%10
        result= find_power(rem,count)
        armstrong=armstrong+result
        num=num//10
    return armstrong


num=int(input("Enter the number:"))
count=count_of_digits(num)
armstrong_result=find_armstrong(num)

if armstrong_result==num:
    print("Armstrong")
else:
    print("Not armstrong")
Enter fullscreen mode Exit fullscreen mode

Output:

Enter the number:135
Not armstrong
Enter the number:153
Armstrong
Enter fullscreen mode Exit fullscreen mode

Top comments (0)