# Formula to calculate Signal to Noise Ratio
# Unit: watts: 20 * log10 (signal/noise)
# Unit: voltage: 10 * log10 (signal/noise)
# Use functions for each one
# >>>>>>> use math.log10()
import math
print ("Formula to compute Signal to Noise Ratio for watts and voltage")
print ("The formula for watts is: 20 * log10 (signal/noise)")
print ("The formula for voltage is: 10 * log10 (signal/noise)")
# Define functions
def wattssignaltonoiseratio(signal, noise):
SignalToNoiseRatio = (20 * (math.log10(signal/noise)) )
print("The Signal to Noise ratio in dB is: ", SignalToNoiseRatio)
def voltagesignaltonoiseratio(signal,noise):
SignalToNoiseRatio = (10 * (math.log10(signal/noise)) )
print("The Signal to Noise ratio in dB is: ", SignalToNoiseRatio)
# Input the data
# While loop to ask user if they want to enter watts or voltage
WattsOrVoltage = 0
while (WattsOrVoltage==0):
EnteredWattsOrVoltage = input ("To calculate signal to noise ratio using watts, enter 1 or voltage, enter 2: ")
# Convert to integer
WattsOrVoltage = int(EnteredWattsOrVoltage)
print ("Number entered: ", WattsOrVoltage)
# Test to see if the number is 1, 2 or another number
if WattsOrVoltage==1:
print ("You chose 1.")
# Get data from user
EnteredSignal = input("Enter the signal: ")
EnteredNoise = input("Enter the noise: ")
signal = float(EnteredSignal)
noise = float(EnteredNoise)
# Call the watt function
wattssignaltonoiseratio(signal, noise)
elif WattsOrVoltage==2:
print ("You chose 2.")
# Get data from user
EnteredSignal = input("Enter the signal: ")
EnteredNoise = input("Enter the noise: ")
signal = float(EnteredSignal)
noise = float(EnteredNoise)
# Call the voltage function
voltagesignaltonoiseratio(signal, noise)
else:
print ("Be sure to enter number between 1 and 2.")
WattsOrVoltage = 0