############################################################# #### la soluzione e' un esempio e si puo' perfezionare ###### ############################################################# def areaC(i,L): return 3.14*L[i][2]*L[i][2] def areaQ(i, L): return L[i][2]*L[i][2] cerchi = [] quadrati = [] a = 'l' while (a!='t'): a = raw_input("insert c per cerchio, q per quadrato, t termina: ") if a == 'c': x = input("inserisci coordinata x del centro:") y = input("inserisci coordinata y del centro:") r = input("inserisci il raggio:") datiC = [x,y,r] cerchi.append(datiC) if a == 'q': x = input("inserisci coordinata x del vertice:") y = input("inserisci coordinata y del vertice:") l = input("inserisci il lato:") datiQ = [x, y, l] quadrati.append(datiQ) if ( (a != 't') and (a != 'c') and (a != 'q')): print "inserire solo q,r o t" print quadrati, len(quadrati) print cerchi, len(cerchi) d=raw_input("l'area di un cerchio inserisci c, per un quadrato q: ") n=input("che posizione?") if((d == 'c') and (n<=len(cerchi))): print "area cerchio richiesto", areaC(n-1,cerchi) elif((d == 'q') and (n<=len(quadrati))): print "area cerchio richiesto", areaQ(n-1,quadrati) else: print "errore di inserimento" if len(quadrati) == 0: print "area quadrato max = ", 0 else: aMax = 0 for i in range(0,len(quadrati)): if (aMax < areaQ(i,quadrati)): aMax = areaQ(i,quadrati) print "area quadrato max = ", aMax if len(cerchi) == 0: print "area cerchio max = ", 0 else: aMax = 0 for i in range(0,len(cerchi)): if (aMax < areaC(i,cerchi)): aMax = areaC(i,cerchi) print "area cerchio max = ", aMax if len(quadrati) == 0: aTotQ = 0 else: aTotQ = 0 for i in range(0,len(quadrati)): aTotQ = aTotQ + areaQ(i,quadrati) if len(cerchi) == 0: aTotC = 0 else: aTotC = 0 for i in range(0,len(cerchi)): aTotC = aTotC + areaC(i,cerchi) if (aTotC > aTotQ): print "area totale cerchi e' maggiore e vale: ", aTotC elif (aTotC < aTotQ): print "area totale quadrati e' maggiore e vale: ", aTotQ else: print "area totale cerchi e' pari a quadrati e vale: ", aTotC