DEV Community

Cover image for Python tasks-3
G Gokul
G Gokul

Posted on

Python tasks-3

Task - Tenali Raman and the Palace Guards

Tenali Raman wishes to meet the King. Before reaching the royal court, he has to pass through many palace gates. A guard is posted at each gate.
Every guard demands a share of whatever reward Tenali Raman receives from the King. Tenali Raman agrees and promises:
"I will give you half of whatever reward I receive from the King."
All the guards allow him to enter. After meeting the King, Tenali Raman receives a reward of 1024 lashes.
Keeping his promise, Tenali Raman shares his reward with the guards. At each gate, he gives half of the lashes he still has to receive to the guard at that gate and proceeds to the next gate.
Write a program to determine:

  1. How many lashes each guard receives.
  2. How many Guards are there if Tenali Raman gets only one lash.

Flowchart:

tenali

Program:

guards = 0
lashes = 1024
while lashes > 1:
    lashes //= 2
    print(lashes)
    guards += 1
print('Guards Count is', guards)
Enter fullscreen mode Exit fullscreen mode

Output:

512
256
128
64
32
16
8
4
2
1
Guards Count is 10

Task - Thief, Police running program

Flowchart:

thief, police

Program:

police, thief = 0, 40
step = 0
while thief > police:
    police = police + 5
    thief = thief + 2
    step+=1
print(police)
print(step)
Enter fullscreen mode Exit fullscreen mode

Output:

70
14

Task - Two trains stop at regular intervals:

Train 1 stops at every 3rd station.
Train 2 stops at every 5th station.
Find:
The first common station where both trains stop.
The last common station where both trains stop.
All common stations where both trains stop.
Note: Total Number of Stations are unknown.

Flowchart:

n

Program:

station = 1
last_station = 0
first_station = True

while station <= 80:
    if station % 3 == 0 and station % 5 == 0:
        if first_station:
            print("First Station is:", station)
            first_station = False
        print(station)

        last_station = station

    station += 1

print("Last Common Station is:", last_station)
Enter fullscreen mode Exit fullscreen mode

Output:

First Station is: 15
15
30
45
60
75
Last Common Station is: 75

Top comments (0)