Python 3

kekko95

Utente Attivo
369
1
CPU
Intel e5200 @3.5 Ghz
Scheda Madre
ASUS P5QL-E Rev. A3
HDD
Western Digital 1Tb, Maxtor 6Y120P0 120 Gb
RAM
Kingston DDR2 800 Mhz 6gb (2*3)
GPU
NVIDIA GeForce 9500 GT 1Gb DDR2 Rev. C1
Audio
Integrata
Monitor
Samtron 19" 1280*1024
OS
Windows 7 Ultimate x64, Ubuntu 11.10
Ciao a tutti. Mi sapete aiutare a trovare il problema in questo "esercizio"?. So benissimo che avrei potuto utilizzare ELIF invece dei ripetuti IF, ma sono all' inizio ed ho riscontrato un problema con Python 3.2.

a=int(input("Dimmi il primo numero da inserire"))
b=int(input("Dimmi il secondo numero da inserire"))
c=int(input("Dimmi il terzo numero da inserire"))
d=input("Ora puoi scegliere tra la somma, sottrazione, divisione oppure moltiplicazione dei numeri inseriti")
if d==("somma"):
print("La somma tra",a,b,c,"è uguale a",a+b+c)
if d==("sottrazione"):
print("La sottrazione tra i numeri",a,b,c,"è uguale a",a-b-c)
if d==("divisione"):
print("La divisione dei numeri",a,b,c,"è uguale a",a/b/c)
if d==("moltiplicazione"):
print("La moltiplicazione dei numeri",a,b,c,"è uguale a",a*b*c)
if a+b+c>=0:
print("La somma dei numeri",a,b,c,"che hai inserito, è maggiore di 0; Precisamente fa",a+b+c,"Si tratta dunque di un numero positivo.")
if a-b-c>=0:
print("La sottrazione dei numeri",a,b,c,"che hai inserito, è maggiore di 0; Precisamente fa",a-b-c)
if a/b/c>=0:
print("La divisione dei numeri",a,b,c,"che hai inserito, è maggiore di 0; Precisamente fa",a/b/c)
if a*b*c>=0:
print("La moltiplicazione dei numeri",a,b,c,"che hai inserito, è maggiore di 0; Precisamente fa",a*b*c)
if a+b+c<=0:
print("La somma dei numeri",a,b,c,"che hai inserito, è minore di 0; Precisamente fa",a+b+c,"Si tratta dunque di un numero negativo.")
if a-b-c<=0:
print("La sottrazione dei numeri",a,b,c,"che hai inserito, è minore di 0; Precisamente fa",a-b-c)
if a/b/c<=0:
print("La divisione dei numeri",a,b,c,"che hai inserito, è minore di 0; Precisamente fa",a/b/c)
if a*b*c<=0:
print("La moltiplicazione dei numeri",a,b,c,"che hai inserito, è minore di 0; Precisamente fa",a*b*c)

L' errore è il seguente:
d=input("Ora puoi scegliere tra la somma, sottrazione, divisione oppure moltiplicazione dei numeri inseriti")
File "<string>", line 1, in <module>
NameError: name 'somma' is not defined

Dove sbaglio? Se volessi creare una calcolatrice come dovrei procedere? Grazie

 

kekko95

Utente Attivo
369
1
CPU
Intel e5200 @3.5 Ghz
Scheda Madre
ASUS P5QL-E Rev. A3
HDD
Western Digital 1Tb, Maxtor 6Y120P0 120 Gb
RAM
Kingston DDR2 800 Mhz 6gb (2*3)
GPU
NVIDIA GeForce 9500 GT 1Gb DDR2 Rev. C1
Audio
Integrata
Monitor
Samtron 19" 1280*1024
OS
Windows 7 Ultimate x64, Ubuntu 11.10
up! Dai ragazzi, so che mi potete aiutare :P
 
Ultima modifica:

kekko95

Utente Attivo
369
1
CPU
Intel e5200 @3.5 Ghz
Scheda Madre
ASUS P5QL-E Rev. A3
HDD
Western Digital 1Tb, Maxtor 6Y120P0 120 Gb
RAM
Kingston DDR2 800 Mhz 6gb (2*3)
GPU
NVIDIA GeForce 9500 GT 1Gb DDR2 Rev. C1
Audio
Integrata
Monitor
Samtron 19" 1280*1024
OS
Windows 7 Ultimate x64, Ubuntu 11.10
up! Problema risolto
 
Ultima modifica:

kekko95

Utente Attivo
369
1
CPU
Intel e5200 @3.5 Ghz
Scheda Madre
ASUS P5QL-E Rev. A3
HDD
Western Digital 1Tb, Maxtor 6Y120P0 120 Gb
RAM
Kingston DDR2 800 Mhz 6gb (2*3)
GPU
NVIDIA GeForce 9500 GT 1Gb DDR2 Rev. C1
Audio
Integrata
Monitor
Samtron 19" 1280*1024
OS
Windows 7 Ultimate x64, Ubuntu 11.10
Non apro una nuova discussione. In questo esempio di codice:

password=200
while password!=("CIAO"):
password=input("Digita la password")
else:
print("La password inserita",str(password)+")","è corretta. Divertiti!")

mi viene dato come output: La password inserita CIAO) è corretta. Divertiti!

Se volessi mettere la parentesi anche prima di "CIAO", cosa dovrei scrivere? So che funzionerebbe anche in questo modo (le parentesi sono staccate), ma credo che sia poco pratico:

password=200
while password!=("CIAO"):
password=input("Digita la password")
else:
print("La password inserita (",password,") è corretta. Divertiti!")

Come posso ovviare? :)


 

Entra

oppure Accedi utilizzando

Hot: E3 2021, chi ti è piaciuto di più?

  • Ubisoft

    Voti: 30 22.4%
  • Gearbox

    Voti: 2 1.5%
  • Xbox & Bethesda

    Voti: 87 64.9%
  • Square Enix

    Voti: 10 7.5%
  • Capcom

    Voti: 6 4.5%
  • Nintendo

    Voti: 18 13.4%
  • Altro (Specificare)

    Voti: 12 9.0%

Discussioni Simili