In [1]:

```
import math
#Symbol rate of transmission and bandwidth
#initialisation of variables
fb=1.0 #MHz
Tb=1/fb #bit period ms
N=4
#CALCULATIONS
Ts1=Tb
Bw1=2*fb
Ts2=Tb*2
Tr2=(1.0/2)*1000 #Symbols/sec
Bw2=1/Tb
Ts3=N*Tb
Tr3=(1.0/4)*1000
Bw3=(2.0*fb)/N
#RESULTS
print("In BPSK")
print("The symbol rate of transmission is = %.f X 10^6 symbol/sec " %Ts1)
print("The Bandwidth is = %.f MHz " %Bw1)
print("In QPSK")
print("The symbol rate of transmission is = %.f X 10^3 symbol/sec " %Tr2)
print("The Bandwidth is = %.f MHz " %Bw2)
print("In 16-ary PSK")
print("The symbol rate of transmission is = %.f X 10^3 symbol/sec " %Tr3)
print("The Bandwidth is = %.f kHz " %(Bw3*1000))
```

In [2]:

```
import math
#initialisation of variables
fb=90 #MHz
Bw=20 #Mb/s
#CALCULATIONS
N=(2*fb)/Bw
#RESULTS
print("Number of bits required = %.f " %N)
```

In [3]:

```
import math
#initialisation of variables
Tb=0.1 #msec
#CALCULATIONS
fb=1/Tb
#RESULTS
print("Transmission bandwidth = %.f kHz" %fb)
```