Esercizi elementari: Pi greco / Nullo? / Pari/Dispari / Confronto / Appartenenza / Bisestile? / Teorema di Pitagora / …
Funzioni “di servizio”
def quadrato(x):
y=x*x # operazioni...
return y # risultato
def cubo(x):
y=x*x*x # operazioni...
return y # risultato
def pitagora(x1,x2):
import math
y=math.sqrt(quadrato(x1)+quadrato(x2))
return y
Figure geometriche
#--------------------------------------------------- QUADRATO
def perimetro(lato):
return 4*lato # operazioni e risultato
def area(lato):
return quadrato(lato) # operazioni e risultato
print("Quadrato - perimetro =", perimetro(10)) # 40
print("Quadrato - area =", area(10) ) # 100
#--------------------------------------------------- TRIANGOLO RETTANGOLO
def perimetro(c1,c2):
return c1+c2+pitagora(c1,c2)
def area(c1,c2):
return c1*c2/2
print("Triangolo rett. - perimetro", perimetro(3,4)) # 12
print("Triangolo rett. - area ", area(3,4) ) # 6
#--------------------------------------------------- CUBO
def superficie(spigolo):
return 6*quadrato(spigolo)
def volume(spigolo):
return cubo(spigolo)
print("CUBO - superficie =", superficie(10)) # 600
print("CUBO - volume =", volume(10) ) # 1000
Pi greco
def pigreco():
return 3.14159
Nullo?
def nullo(x):
if(x == 0):
return True
else:
return False
Quando il risultato è immediato…
def nullo(x):
return (x == 0)
Ancora…
def nullo(x): return (x == 0)
Pari/dispari
def pari(num):
if(num%2 == 0):
return True
else:
return False
Osserva
def pari (num): return (num%2 == 0)
def dispari(num): return (num%2 != 0)
oppure
def pari (num): return (num%2 == 0)
def dispari(num): return not pari(num)
Segno
def segno(x):
if(x < 0): return -1
elif(x == 0): return 0
else: return 1
Confronto
def confronto(x,y):
if(x < y): return -1 # x è minore di y
elif(x == y): return 0 # x è uguale a y
else: return 1 # x è maggiore di y
Appartenenza
Il valore di x appartiene all’intervallo?
def appartiene1(x,a,b): # [a,b]
return (x >= a) and (x <= b)
def appartiene2(x,a,b): # ]a,b[
return (x > a) and (x < b)
Maggiorenne
def maggiorenne(anni):
return (anni >= 18)
Bisestile?
def bisestile(anno):
return (anno%4 == 0) and (anno%100 != 0) or (anno%400 == 0)
…