Profilo di alberto_consonni

Nome alberto_consonni
Indirizzo email n/a
Messaggi4
  • Re: Quesito: come ritornare a passi precedenti di programma inserendo nuovi valori
    Forum >> Programmazione Python >> Scripting
    Buongiorno, ripropongo la richiesta di aiuto: facendo ripetere al programma alcuni passi precedenti (funzioni), ed inserendo valori differenti rispetto a quelli della prima esecuzione, il risultato (indicato con K) non cambia, il programma fornisce sempre il risultato della prima esecuzione, non tiene conto dei nuovi input.



    (Qui sotto ripropongo l'output della prima esecuzione e della ripetizione).




    Ringrazio anticipatamente per il supporto




    Alberto




    RESTART: C:\PYthon\OUT\Ripetizioni_6.py ===================

    Inserisci a 4

    Inserisci b 6

    10.0

    Inserisci c 9

    Inserisci d 8

    72.0

    K = 720.0

    1 per primo step, 2
    per secondo step, 3 per ripetere gli step dall'inizio, 0 per uscire


    3

    Inserisci a 77

    Inserisci b 55

    132.0

    Inserisci c 99

    Inserisci d 44

    4356.0

    K = 720.0
    Nonostante nella ripetizione i valori inseriti siano differenti il risultato di K non cambia



  • Re: Quesito: come ritornare a passi precedenti di programma inserendo nuovi valori
    Forum >> Programmazione Python >> Scripting
    Grazie per l'indicazione, ho utilizzato "Code", spero che così l'input sia nella forma corretta
  • Re: Quesito: come ritornare a passi precedenti di programma inserendo nuovi valori
    Forum >> Programmazione Python >> Scripting
    import sys
    
    
    
    def calcolo1():
        a = input ("Inserisci a   ",   )
        A = float(a)
        b = input ("Inserisci b   ",   )
        B= float (b)
        t = (A+B)
        print (t)
        return t
    
    
    T= calcolo1()
    
    def calcolo2():
        c = input ("Inserisci c   ",   )
        C = float(c)
        d = input ("Inserisci d   ",   )
        D= float (d)
        z = (C*D)
        print (z)
        return z
    
    Z= calcolo2()
    
    def calcolo3():
        K = T*Z
        print ("K  =", K)
    
    calcolo3()
    
    def ripeti():
        print ("1 per primo step, 2 per secondo step, 3 per ripetere gli step dall'inizio, 0 per uscire ")
        Rp = input ()
        rp = int(Rp)
        if rp==(1):
            return calcolo1(),ripeti() 
        if rp==(2):
            return calcolo1(),calcolo2(),ripeti()
        if rp==(3):
            return calcolo1(),calcolo2(),calcolo3(),ripeti()
                
                
        if rp==(0):
            #quit() kill programma
            #exit () kill programma
            #Nota IMPORTANTE dare il comando "import sys" all'inizio
            sys.exit()
        
    
    ripeti()
    
    
  • Quesito: come ritornare a passi precedenti di programma inserendo nuovi valori
    Forum >> Programmazione Python >> Scripting
    Qui di seguito un breve script dove dopo l'esecuzione iniziale ho inserito la possibilità di ripetere gli step precedenti, il problema che sottopongo è che i passi precedenti sono ripetuti con nuovi valori, ma il risultato finale non viene aggiornato rispetto ai nuovi valori inseriti.



    Ringrazio anticipatamente per l'aiuto




    Alberto




    Versione in uso: Python 3.10.4 (tags/v3.10.4:9d38120, Mar 23 2022, 23:13:41) [MSC v.1929 64 bit (AMD64)] on win32




    Script:





    import sys




    def calcolo1():

    a = input ("Inserisci a ", )

    A = float(a)

    b = input ("Inserisci b ", )

    B= float (b)

    t = (A+B)

    print (t)

    return t







    T= calcolo1()




    def calcolo2():

    c = input ("Inserisci c ", )

    C = float(c)

    d = input ("Inserisci d ", )

    D= float (d)

    z = (C*D)

    print (z)

    return z




    Z= calcolo2()




    def calcolo3():

    K = T*Z

    print ("K =", K)




    calcolo3()




    def ripeti():

    print ("1 per primo step, 2 per secondo step, 3 per ripetere gli step dall'inizio, 0 per uscire ")

    Rp = input ()

    rp = int(Rp)

    if rp==(1):

    return calcolo1(),ripeti()

    if rp==(2):

    return calcolo1(),calcolo2(),ripeti()

    if rp==(3):

    return calcolo1(),calcolo2(),calcolo3(),ripeti()





    if rp==(0):



    sys.exit()






    ripeti()









    Output ottenuto:

    Python 3.10.4 (tags/v3.10.4:9d38120, Mar 23 2022, 23:13:41) [MSC
    v.1929 64 bit (AMD64)] on win32

    Type "help",
    "copyright", "credits" or "license()"
    for more information.






    ====================
    RESTART: C:\PYthon\OUT\Ripetizioni_6.py ===================

    Inserisci a 4

    Inserisci b 6

    10.0

    Inserisci c 9

    Inserisci d 8

    72.0

    K = 720.0

    1 per primo step, 2
    per secondo step, 3 per ripetere gli step dall'inizio, 0 per uscire


    3

    Inserisci a 77

    Inserisci b 55

    132.0

    Inserisci c 99

    Inserisci d 44

    4356.0

    K = 720.0
    Nonostante nella ripetizione i valori inseriti siano differenti il risultato di K non cambia