Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Python - Problema prog calcolatrice
Forum - Python - Problema prog calcolatrice

Avatar
carmine (Member)
Pro


Messaggi: 168
Iscritto: 20/04/2010

Segnala al moderatore
Postato alle 12:44
Mercoledì, 07/07/2010
raga non riesco a trovare l'errore, ho un menu a scelta per le 4 operazioni, quando vado in divisione mi accumula i miei numeri ma quando inserisco 0 non esce:
Codice sorgente - presumibilmente Python

  1. import os
  2. num=1
  3. s=0
  4. def somma():    
  5.     os.system("cls")
  6.     num=1
  7.     s=0
  8.     print 'Inserire numeri (0 per uscire)'
  9.     while num!=0:
  10.         num=input()
  11.         s=s+num
  12.         print 'somma vale: ',s.real
  13.     main()
  14. def sott():
  15.     os.system("cls")
  16.     s=1
  17.     num=1
  18.     print 'Inserire numeri (0 per uscire)'
  19.     s=input()
  20.     print 'differenza vale: ',s.real
  21.     while num!=0:
  22.         num=input()
  23.         s=s-num
  24.         print 'differenza vale: ',s.real
  25.     main()
  26. def molt():
  27.     os.system("cls")
  28.     s=1
  29.     num=1
  30.     print 'Inserire numeri (0 per uscire)'
  31.     s=input()
  32.     print 'prodotto vale: ',s.real
  33.     while num!=0:
  34.         num=input()
  35.         s=s*num
  36.         print 'prodotto vale: ',s.real
  37.     main()
  38. def div():
  39.     os.system("cls")
  40.     s=0
  41.     num=1
  42.     print 'Inserire numeri (0 per uscire)'
  43.     s=input()
  44.     print 'rapporto vale: ',s.real
  45.     while num!=0:
  46.         num=input()
  47.         s=s/num
  48.         print 'rapporto vale: ',s.real
  49.     main()
  50. def main():
  51.     os.system("cls")
  52.     print '1) Somma'
  53.     print '2) Sottrazione'
  54.     print '3) Moltiplicazione'
  55.     print '4) Divisione'
  56.     print '5) Esci'
  57.     scelta=input()
  58.     if scelta == 1:
  59.         somma()
  60.     if scelta == 2:
  61.         sott()
  62.     if scelta == 3:
  63.         molt()
  64.     if scelta == 4:
  65.         div()
  66. main()


PM Quote
Avatar
GuglielmoS (Ex-Member)
Pro


Messaggi: 114
Iscritto: 27/11/2009

Segnala al moderatore
Postato alle 12:54
Mercoledì, 07/07/2010
L'errore sta nel fatto che non puoi dividere un numero per 0.
Quindi correggi la divisione aggiungendo un controllo al numero inserito dall'utente.
Codice sorgente - presumibilmente Python

  1. ...
  2.     while num!=0:
  3.         num=input()
  4.         if num != 0:
  5.             s=s/num
  6.             print 'rapporto vale: ',s.real
  7.     main()
  8. ...


PM Quote
Avatar
carmine (Member)
Pro


Messaggi: 168
Iscritto: 20/04/2010

Segnala al moderatore
Postato alle 13:55
Mercoledì, 07/07/2010
mm..ho capito l'errore grazie mille!!!

PM Quote