Visualizza la tabella della funzione seno con
- 0° <= angolo < 360°
- passo=15°
1
Le funzioni trigonometriche accettano solo angoli espressi in radianti
import math # sin()
gradi = 0 # Inizializzazione
while(gradi < 360): # Controllo
x = math.radians(gradi) # Utilizzazione
print("Gradi:", gradi, "Seno:", math.sin(x))
gradi = gradi+15 # Aggiornamento
2
Con le costanti il codice è più leggibile
import math
START = 0
STOP = 360
STEP = 15
gradi = START
while(gradi < STOP):
x = math.radians(gradi)
print("Gradi:", gradi, "Seno:", math.sin(x))
gradi = gradi+STEP
3
Visualizza anche i radianti, separa i dati dalle etichette
...
print("Gradi: %i Radianti: %f Seno: %f" %(gradi, x, math.sin(x)))
...
4
Aggiungi la funzione coseno, fissa il numero di colonne e di cifre decimali per ogni valore numerico
...
x = math.radians(gradi)
seno = math.sin(x)
coseno = math.cos(x)
print("Gradi: %3i Radianti: %5.3f Sin: %6.3f Cos: %6.3f" %(gradi, x, seno, coseno))
...
5
Migliora la presentazione dei dati
- 4 colonne della stessa larghezza
- le etichette nella prima riga
- le etichette centrate rispetto alla colonna
- effetto cornice per le etichette e i dati
- i dati decimali con 6 cifre dopo la virgola
- …

import math
START = 0
STOP = 360
STEP = 15
print("+------------+------------+------------+------------+")
print("| %10s | %10s | %10s | %10s |"
%("Gradi".center(10), "Radianti".center(10), "Seno".center(10), "Coseno".center(10)))
print("+------------+------------+------------+------------+")
gradi = START
while(gradi < STOP):
x = math.radians(gradi)
seno = math.sin(x)
coseno = math.cos(x)
print("| %10i | %10.6f | %10.6f | %10.6f |" %(gradi, x, seno, coseno))
gradi = gradi+STEP
print("+------------+------------+------------+------------+")
6
La cornice può essere realizzata ancora più realistica utilizzando i codici ASCII dei caratteri grafici

import math
START = 0
STOP = 360
STEP = 15
print("╔════════════╦════════════╦════════════╦════════════╗")
print("║ %10s ║ %10s ║ %10s ║ %10s ║"
%("Gradi".center(10), "Radianti".center(10), "Seno".center(10), "Coseno".center(10)))
print("╠════════════╬════════════╬════════════╬════════════╣")
gradi = START
while(gradi <= STOP):
x = math.radians(gradi)
seno = math.sin(x)
coseno = math.cos(x)
print("║ %10i ║ %10.6f ║ %10.6f ║ %10.6f ║"
%(gradi, x, seno, coseno))
gradi. = gradi+STEP
print("╚════════════╩════════════╩════════════╩════════════╝")
Visualizzare dei dati in forma tabellare è un’esigenza molto comune.
Esistono dei moduli specifici: prettytable, tabulate, texttable, …