Profilo di harimau08

Nome harimau08
Indirizzo email n/a
Messaggi15
  • Come fare un albero di Natale con gli asterischi?
    Forum >> Principianti
    Buonasera,




    sto cercando di creare un programmino che partendo dalle variabili

    asterisco="*"

    e

    righe=int(input("inserisci numero righe")




    faccia si che ad ogni riga, gli asterischi vengano incrementati di 2, dando l'impressione d'aver disegnato un albero di Natale.




    Quello che ho notato è che all'aumentare delle righe, gli asterischi incrementati di 2, devono avere il margine sinistro sempre più ristretto, per evitare questo effetto:

    *

    **

    ***

    quindi da quello che ho capito, è che il primo rigo deve avere un ampio margine, per poi restringersi costantemente di 1 nelle righe successive.

    Come si fa visto che ho due tipi diversi di variabili? Il contatore è numerico e l'altra variabile è una stringa, e non so in che modo impostare il ciclo e le operazioni da fare in print()

    Vi ringrazio in anticipo





    --- Ultima modifica di harimau08 in data 2016-10-24 17:28:23 ---


    --- Ultima modifica di harimau08 in data 2016-10-24 17:31:12 ---
  • Re: Codice funzionante, perchè?
    Forum >> Principianti
    riguardo l'if su un manuale c'è scritto che gli uguali sono doppi, mentre invece è singolo quando si vuole assegnare un valore ad una variabile.




    Alla fine mi sono informato altrove, e m'han fatto capire che il codice è completamente sbagliato, infatti numeri come il 17, il 31.. non li segna come numeri primi, quindi questo tipo di programma dovrò farlo con maggior senso e criterio.
  • Come creare un programmino che mi consenta di indovinare una password entro 3 possibilità?
    Forum >> Principianti
    Buongiorno,




    ho creato un programmino che deve indovinare una password entro 3 tentativi.




    Il problema è che qualora io riesca ad indovinare la parola chiave, deve stamparmi il messaggio: messaggio consentito, ma non so dove metterlo per dar senso al programma.

    Il programma da me fatto è questo:

    password= " "
    tentativo=0
    while password!="Paolo":
        tentativo=tentativo+1
        print("Tentativo numero: ", tentativo)
        password=input("inserisci password")
        if tentativo==3:
            print("Accesso negato!")
        break


    Mi piacerebbe sapere: in quale parte del codice inserire print("Buongiorno, accesso consentito!"), e allo stesso tempo.. Mi piacerebbe sapere in che modo potrei realizzare lo stesso codice senza l'inserimento dell'istruzione break.
  • Re: Codice funzionante, perchè?
    Forum >> Principianti
    Hai ragione, e non so perchè..

    effettivamente neanche con altri numeri funziona, tipo il 31, e ci saranno sicuramente altri casi.




    Però la cosa che non capisco è il perché funziona e se funziona perché fa delle eccezioni con alcuni numeri.




    Come ho scritto su, su Internet ho letto la definizione di numero primo e c'era scritto che per regola è un numero divisibile solo per se stesso e per uno.




    Il problema è che anche i numeri non primi sono divisibili per uno e per se stessi, quindi perché mi funziona il programma? Come fa a capire quale numero è primo se sono tutti divisibili per uno e per se stessi?
  • Codice funzionante, perchè?
    Forum >> Principianti
    Buonasera,




    volevo provare a fare un esercizietto (credendo che fosse semplice). Incredibilmente, sono riuscito a farlo senza sapere il perché... (e senza averlo copiato da altri siti).




    Mi viene il dubbio che il programmino abbia degli errori, e che mi funzioni per colpo di fortuna solo su alcuni numeri.




    Il programma in questione è quello di inserire un numero, e farmi dire in risposta dall'interprete se è un numero primo oppure no, in base al codice inserito che è il seguente:

    numero=int(input("inserisci il numero"))
    def numero_primo(numeroPrimo):
      numeroPrimo=numero
    if not numero != 2:
        print("è un numero primo!")
    elif numero == numero== numero / numero == 1 and numero == numero / 1 == numero:
        print("è un numero primo!")
    else:
        print(" non è un numero primo")


    Dopo anni che non tocco libri scolastici ho letto su Internet, e mi sono informato che la caratteristica dei numeri primi, è che sono dei numeri divisibili solo per se stessi e per uno. Il problema è che anche con numeri non primi ottengo la stessa cosa:

    4 diviso se stesso = 1 e 4/1= il dividendo. Quindi perché se provo ad inserire numeri non primi l'interprete riesce a capire che non è un numero primo?




    Scusate l'ignoranza, ma come ho già scritto in altri post ho la terza media, e non tocco libri da 10 anni, per cui non riesco a capire se è sbagliata la mia definizione matematica di numero primo(che ho trovato su Internet) oppure c'è qualcosa che non va nel codice.




    --- Ultima modifica di harimau08 in data 2016-10-11 17:29:30 ---
  • Re: funzione range?
    Forum >> Principianti
    Farò come hai detto, mi mancano solo 8 pagine per terminare tutto ciò che mi interessa (l'ultimo modulo su pygame non mi interessa).




    Poi passerò ad aggiornarmi ad uno dei manuali che mi hai suggerito.




    Grazie per il consiglio :ok:
  • Re: funzione range?
    Forum >> Principianti
    Il manuale è questo in allegato.




    Vorrei mettere subito le mani avanti dicendo che leggendolo "alla svelta", è molto probabile che io non abbia capito o abbia frainteso molti dei contenuti di questo manuale.




    (infatti alla minima difficoltà vengo in questo forum a far domande per ulteriori semplificazioni).




    Valutando il fatto che ho la terza media, e che non vado a scuola da 10 anni..




    Credo che il mio livello d'attenzione non sia tanto diverso dai soggetti a cui è indirizzato il manuale (cioè ai ragazzini).




    Il capitolo sulle liste speciali (con l'accenno a range) inizia da pagina 104 e come si può notare in questo capitolo.. non c'è un esempio di un programma il cui sia usato range.




    Ma solo la definizione, il suo scopo e il fatto che se io scrivo range 10 mi stampa consecutivamente i numeri da 0 a 9.




    Se poi un esempio di range lo troverò nei prossimi capitoli questo è un altro discorso, ancora non ci sono arrivato.




    Ripeto la domanda...Ma alla fine range per funzionare deve per forza stare in un ciclo?












  • Re: funzione range?
    Forum >> Principianti
    Il manuale è per la versione 2.5, ho scaricato la versione 3.6 credendo che non cambiasse tantissimo, ma in molte cose non mi stavo trovando (tipo il fatto che sia stato eliminato raw_input, oppure il fatto che dopo print ciò che voglio stampare vada tra parentesi).

    Riguardo al termine che ho usato "acquisire" ho sbagliato.. non mi veniva il termine.. proverò a dire "leggere" sperando che lo azzecchi.

    Non badare ai termini che uso, perché a me non interessa essere "tecnico". A me interessa per lo più capire a piccoli passi il funzionamento di questo linguaggio di programmazione.

    Siccome non mastico l'informatica in generale mi sono munito di questo manuale "per bambini".

    Quindi se il mio manuale paragona le variabili con dei valori a delle scatole con dei contenuti... non farci caso se anziché variabili io possa dire scatole :)




    Ho letto meglio.. Ti confermo il fatto che range in questo manuale viene messo tra parentesi quadre (infatti range fa parte del capitolo intitolato liste speciali, e sul mio manuale le liste si fanno tra parentesi quadre).
    Nomi=["Andrea","Jacopo","Luca","Stefano"]
    print(Nomi2)
    
    
    
    
    (e mi stampa il nome di Luca)
    


    Ho letto meglio ciò che dice il manuale, dice che: il terzo indice si chiama "passo" e dice con quale intervallo leggere i numeri. Quindi scrivendo range[1,10,2] mi legge i numeri dispari, perché partendo da 1 mi deve leggere ogni due numeri.




    Riguardo l'esempio che hai fatto.. Ancora non sono arrivato al capitolo su for, viene dopo questo capitolo e quello sulle liste annidate.




    Giusto per capire e portarmi un po' avanti, ma range va inserito per forza in un ciclo?





    --- Ultima modifica di harimau08 in data 2016-10-06 22:42:39 ---


    --- Ultima modifica di harimau08 in data 2016-10-06 22:48:39 ---
  • funzione range?
    Forum >> Principianti
    Buonasera,




    non avendo un'esempio sul mio manuale, mi viene spiegato semplicemente cosa fa la funzione range.




    Da quel che ho capito se io scrivo range10 acquisisce tutti gli elementi compresi tra 0 a 9.




    Se provo ad eseguire un programmino fatto da me non mi funziona(e ovviamente so già che sbaglio qualcosa).




    Mi potete fare un esempio semplice e funzionante su un programmino fatto con range?




    Altra cosa che non ho capito..




    Se io scrivo range[1,10,2] perché dovrebbe stampare questi numeri? [1,3,5,7,9] il mio manuale dice che è così, ma non ne capisco il motivo..



  • Re: spiegazione cicli annidati?
    Forum >> Principianti
    Ah ecco, quindi (a) non è diviso per le 10 unità togliendone una ogni volta che arriva a 100.000, ma ripete per 10 volte il milione facendo quanto segue 10n(a1...a2...a3..fino al milione) 9n(a1...a2..a3..).




    Ti ringrazio! :ok: