IA in python

« Older   Newer »
 
  Share  
.
  1.  
    .
    Avatar


    Group
    Member
    Posts
    6,931

    Status
    Offline
    Meglio, grazie :)
    Cosa sta a significare `?a`?
     
    Top
    .
  2. meh.
     
    .

    User deleted


    QUOTE (Roxas Shadow @ 11/11/2011, 22:17) 
    Cosa sta a significare `?a`?

    E' uguale ad 'a'.
     
    Top
    .
  3. sagara_939
     
    .

    User deleted


    ehm sarò ignorante, ma non riesco a far partire il tuo programma... come posso fare? sono su windows
     
    Top
    .
  4.  
    .
    Avatar


    Group
    Member
    Posts
    6,931

    Status
    Offline
    Se non lo hai, installa l'interprete Ruby e dai da prompt `ruby ArtificialNiggerIntelligence.rb`.
     
    Top
    .
  5. sagara_939
     
    .

    User deleted


    ok avviato. all'inizio pero gli scrivo, ad esempio, ciao. mi dice "I don't know what I have to say. Enlighten me:" e gli inserisco sempre ciao.
    mi ringrazia ecc.
    pero poi da un errore di lettura del database e se gli scrivo ancora "ciao" non sa rispondermi e me lo richiede ancora "i don't know..."
     
    Top
    .
  6.  
    .
    Avatar


    Group
    Member
    Posts
    6,931

    Status
    Offline
    Strano °°
    CITAZIONE
    giovanni@giovanni:~/Documenti/Programmazione/Ruby$ ruby ArtificialNiggerIntelligence.rb
    Type `/q` whenever you want to kill this app and `/c` to clear your database.
    >ciao
    I don't know what I have to say. Enlighten me: ciao
    Ok. Thank you very much bro.
    >ciao
    ciao
    >

     
    Top
    .
  7. sagara_939
     
    .

    User deleted


    mmmm devo riprovare... a me continua a dare l'erroe O.O domani riprovo
     
    Top
    .
  8. theratto
     
    .

    User deleted


    il file su megaupload è "temporaneamente irraggiungibile"
     
    Top
    .
  9. sagara_939
     
    .

    User deleted


    eh aspetta un po e dovrebbe essere raggiungibile...
     
    Top
    .
  10. sagara_939
     
    .

    User deleted


    ieri sera, mentre insegnavo alla mia IA qualche domanda e risposta, ho pensato: perche non posso insegnagli anche a fare i conti (almeno le cose piu basilari dell'aritmetica).
    ed ecco che ho sviluppato una piccola calcolatrice "integrata" nella IA.

    ecco la calcolatrice, che dovrete chiamare "calcolatrice.py", mentre piu sotto la IA modificata, che dovrete chiamare "ia.py". dovrete anche creare un file di testo di nome "quellocheso.txt", anche vuoto.
    quando chiederemo alla IA "sai fare i conti?" lei risponderà affermativamente, avviando la calcolatrice.


    CODICE
    #calcolatrice jhon ia 2.1

    def options():
       print" 'm' Moltipliazione"
       print" 'd' Divisione"
       print" 'a' Addizione"
       print" 's' Sottrazione"
       print" 'j' Continuiamo la discussione..."
       print" 'q' Torna al menu principale"

    def moltiplicazione(m_num, m_num2):
       return m_num*m_num2

    def divisione(d_num, d_num2):
       return d_num/d_num2

    def addizione(a_num, a_num2):
       return a_num+a_num2

    def sottrazione(s_num, s_num2):
       return s_num-s_num2

    def torna_a_jhon():
       import os
       os.system('ia.py argomenti')
       
    def torna_menu():
       import os
       os.system('Jhon-AVVIA.py argomenti')

    choice = "p"
    while choice != "h":
       if choice == "m":
           m_num = input("Moltiplicatore:")
           m_num2 = input("2 Moltiplicatore:")
           print "Risultato:",moltiplicazione(m_num, m_num2)
       elif choice == "d":
           d_num = input("Dividendo:")
           d_num2 = input("Divisore:")
           print "Risultato:",divisione(d_num, d_num2)
       elif choice == "a":
           a_num = input("Addendo1:")
           a_num2 = input("Addendo2:")
           print "Risultato:",addizione(a_num, a_num2)
       elif  choice == "s":
           s_num = input("Minuendo:")
           s_num2 = input("Sottraendo:")
           print "Risultato:",sottrazione(s_num, s_num2)
       elif choice == "j":
           print torna_a_jhon()
       elif choice == "q":
           print torna_menu()
       elif choice != "h":
           options()
       choice = raw_input("Che operazione vuoi fare?")




    mentre qui Jhon IA modificato:


    CODICE
    #Jhon IA created By Sagara
    print "Benvenuto in Jhon IA 2.0!"

    import winsound
    winsound.PlaySound("sound.wav",1)
    import time
    time.sleep(1)

    a={}
    file=open("quellocheso.txt", "r")
    for riga in file.readlines():
       splitted = riga.split('|')
       a[splitted[0]] = splitted[1]
    file.close()
    b="inizio"
    while b!="":
       b=raw_input("Scrivi:")
       if a.has_key(b):
           print a[b]
       elif b == ("sai fare i conti?"):
           print"Si certo! Ecco..."
           import time
           time.sleep(1)
           import os
           os.system('calcolatrice.py argomenti')
       else:
           c=raw_input("Non capisco. Cosa devo rispondere alla domanda"+b"?") #chiede la risposta alla domanda che non conosce
           a[b]=c
           d=open("quellocheso.txt","a")
           d.write("\n")
           d.write(b)
           d.write("|")
           d.write (c)
           d.close()
           print("Grazie, adesso so una cosa nuova!")











    che ne dite?
     
    Top
    .
  11. theratto
     
    .

    User deleted


    interessante come idea, un consiglio sarebbe di aggiungere formule integrate alla calcolatrice(come aree, perimetri...)
    ve beh, poi sarebbe bella una gui, ma quella è un lavoro enorme!
     
    Top
    .
  12. Alchimist
     
    .

    User deleted


    Se vuoi un consiglio, per i conti non fare che sia necessaria la domanda "sai fare i conti?" e tutto ciò che viene dopo tipo chiedere una lettera di input per scegliere che operazione fare etc., ma parsa direttamente l'input (magari con una regex) e risolvi l'operazione printando il risultato.
     
    Top
    .
  13. sagara_939
     
    .

    User deleted


    ah intendi che nella domanda uno chiede "4*4" e lui risponde "16" senza avviare la calcolatrice ecc ?
     
    Top
    .
  14. Alchimist
     
    .

    User deleted


    Esattamente.
    Fai attenzione anche alla gerarchia degli operatori (ovvero la moltiplicazione è più "importante" dell'addizione e quindi va eseguita per prima) ed alle parantesi tonde.
     
    Top
    .
  15. sagara_939
     
    .

    User deleted


    vediamo cosa riesco a fare ;)
     
    Top
    .
35 replies since 11/11/2011, 14:46   643 views
  Share  
.