Forum
>>
Principianti
>>
Rombo di *
Pagina: 1 2 Avanti
Esegui il login per scrivere una risposta.
Scritto da SalvCai |
2017-12-22 18:54:44 - Rombo di *
|
buonasera a tutti qui Salvatore da Genova insegnante di matematica e scienze
sono un itp in informatica dei tempi del pascal e turbo C ( che non ho mai amato tanto) ora neofita da autodidatta in python3 su sistema windows10 Studio su concetti di informatica e fondamenti di Python (aut. Horstman,Necaise) La traccia di un esercizio chiede di stampare a video un rombo di * Ho scritto il seguente frammento n=int(input("leggo n ")) for i in range(n): print(' '* (n-i-1)+'*'*(i+1)) ma come mi aspettavo ottengo solo un quarto del rombo. Come posso fare per risolvere il problema? gli strumenti richiesti sono cicli e stampe. Grazie infinite a chi mi risponderà e auguro a tutti buone feste Salvatore, Genova |
|
Scritto da stix77 |
2017-12-22 22:02:04 - Re: Rombo di *
|
Ciao Salvatore, anch'io sono autodidatta in python da circa un anno.
non è molto bello ma ho risolto come sotto, in pratica un ciclo va a incrementare il numero di stelline ed esaurito quello parte il secondo ciclo che va a decrementare il numero di stelline... giusto per disegnare il rombo. ovviamente ci saranno una miriade di soluzioni per fare quello che chiede l'esercizio, io non ho scelto la migliore (cioè con meno righe di codice) ma quella che mi è venuta prima in poco tempo. n=int(input("leggo n ")) for i in range(n): print(' '* (n-i-1)+'**'*(i+1)+' '* (n-i-1)) for i in range(n): print(' '* (i+1)+'**'*(n-i-1)+' '* (i+1)) |
|
Scritto da SalvCai |
2017-12-23 09:19:52 - Re: Rombo di *
|
Ciao Stix77 grazie per avermi risposto proprio ieri sera sul tardi avevo pensato a una soluzione degenere che nel pomeriggio proverò
Ti faccio sapere se trovo una soluzione diversa Tu come stai studiando il linguaggio? Che tipo di metodo usi soprattutto quali strumenti? Restiamo in contatto magari confrontiamo i nostri sviluppi. Grazie ancora Salvatore! |
|
Scritto da stix77 |
2017-12-23 11:19:34 - Re: Rombo di *
|
ciao Salvatore, io ero partito in quarta anni fa iniziando con java, solo con scarsi risultati.
allora mi consigliarono di iniziare con python, e fu amore a prima vista, anche perchè lo sfrutto col mio raspberry pi. proprio in questi giorni ho creato un robottino a due ruote movimentato da due motorini DC che sostanzialmente si muovono con script di python. comunque ho passato i primi 6 mesi a studiare python in pausa pranzo seguendo questo libro: https://www.amazon.it/Python-ragazzi-Unintroduzione-giocosa-programmazione/dp/886895348X finito questo, che mi ha dato delle solide basi, ho continuato guardando un corso su youtube tenuto da pymike, il corso è ben fatto: https://www.youtube.com/channel/UCLXlzAu0NhM5pnXLQdGnHJQ molto utile per imparare i concetti intermedi. (ed eventualmente gestire una pagina web con django ) magari quando finirò il corso leggerò questo, per i concetti avanzati https://www.amazon.it/Programmare-Python-Guida-completa-Marco/dp/8868950243 c'è da dire che per non rendere l'apprendimento noioso, alternavo la lettura del primo libro, con la creazione del mio primo progetto, che altro non è che la trasposizione da excel a python del calcolo che uso per calcolare la perdita di pressione di gas lungo condotte molto lunghe. la cosa che mi è piaciuta è che agganciando vari moduli in python ho potuto arricchire il progetto. oltre a tutte le operazioni matematiche che oltre a python base richiedono il modulo math per i logaritmi, ho utilizzato tkinter per l'interfaccia grafica e per salvare e caricare i dati, matplotlib (mi pare si chiami così) per mostrare graficamente la curva di pressione. python è molto bello e potente, ovviamente non si smette mai di imparare, e di condividere con tutti gli altri gioie e dolori progetti andati a buon fine e progetti abbandonati --- Ultima modifica di stix77 in data 2017-12-23 11:20:38 --- |
|
Scritto da stix77 |
2017-12-23 11:26:26 - Re: Rombo di *
|
ah, mi sono dimenticato di dirti gli strumenti!!
sul cellulare utilizzo l'applicazione SoloLearn che ti da la possibilità di seguire un corso base e di scriptare. molto utile quando viaggio in treno e non ho nulla da fare a lavoro utilizzo l'IDLE standard di python, oppure uso l'ambiente integrato di Eclipse, molto utile per non sgarrare con le raccomandazioni di pulizia di scrittura del PEP8 (guarda qui http://pep8online.com/ ) a casa invece utilizzo o l'IDLE o PyCharm (molto utile per l'autocompletion) ultimo consiglio per te che sei prof di mate: se vai su youtube troverai delle lezioni del politecnico di milano dove mostrano come si usa python in ambito scientifico, esempio https://www.youtube.com/watch?v=Ky_O-CzPaJ4&t=1730s ovviamente non ti spiegano tutto, ma fanno degli esempi per far capire le potenzialità di python e dei suoi moduli --- Ultima modifica di stix77 in data 2017-12-23 11:31:19 --- |
|
Scritto da SalvCai |
2017-12-23 18:56:01 - Re: Rombo di *
|
Certo che da auto didatta di strada ne hai fatta sei molto piu avanti di me .... io sono agli albori ma la mia storia con python comincia circa tre anni fa che tra una supplenza e un altra cominciai a studiare la passione era tanta al punto che mi sono iscritto alla facolta di informatica di Genova ma pur facendo tutto il primo anno non mi sono trovato bene poca tutela dello studente lavoratore e questo cominciava a essere un problema per me che vivendo da solo dovevo mettere assieme vita lavoro e gestione della casa non riuscivo a stare al passo con i compiti per il fine settimana le consegne e tutto il resto. Li si studia C++ ma a me come sintassi e stile non mi faveva impazzire ho messo in stand by unige per motivi lavorativi e lo scorso anno mi sono procurato un po di pubblicazioni varie su python e quindi poi sono passato allo studio e solo negli ultimi due mesi ho potuto davvero mettermi sotto e tentare. Amo questo linguaggio ricorda a suo modo i vecchi tempi i print gli input e tutto il resto. Grazie per i tuoi link li consulterò sicuramente.
Buona serata Salvatore |
|
Scritto da stix77 |
2017-12-24 01:16:19 - Re: Rombo di *
|
python ha la particolarità di far diventare produttivi sin da subito, vedrai che in poco tempo farai già delle belle cose!!
buona serata |
|
Scritto da EL DIABLO |
2018-03-03 12:14:46 - Re: Rombo di *
|
Della serie: i programmi devono essere fatti bene, non pressapoco.
(Codice per Python 3) Rombo di * (metodo 1) l = int(input("Lato del rombo di * (< 62): ")) - 1 d = l * 2 + 1 for y in range(d) : s = l - y if y <= l else y - l print(" " * s + "*" * (d - s * 2))Rombo di * (metodo 2) l = int(input("Lato del rombo di * (< 62): ")) - 1 d = l * 2 + 1 for y in range(d) : for x in range(d) : print(end = " " if y + x > l * 3 or y + x < l or y - x > l or x - y > l else "*") print()Rombo di Rombi (metodo 1) l = int(input("Lato del rombo di rombi di * (< 7): ")) - 1 d = l * 2 + 1 for k in range(d) : for w in range(d) : for x in range(d) : y = l - k if k <= l else k - l s = " " if y > x or d - y <= x else "*" z = l - w if w <= l else w - l print(" " * z + s * (d - z * 2), end = " " * z) print()Rombo di Rombi (metodo 2) l = int(input("Lato del rombo di rombi di * (< 7): ")) - 1 d = l * 2 + 1 for w in range(d): for x in range(d) : for y in range(d) : s = " " if w + y > l * 3 or w + y < l or w - y > l or y - w > l else "*" for z in range(d) : print(end = " " if x + z > l * 3 or x + z < l or x - z > l or z - x > l else s) print() --- Ultima modifica di Ὅμηρος 蟒蛇 in data 2018-03-03 12:16:22 --- |
|
Scritto da SalvCai |
2018-03-03 12:20:52 - Re: Rombo di *
|
Li proverò uno ad uno
Ti farò sapere Grazie della condivisione Salvatore |
|
Scritto da SalvCai |
2018-03-05 10:56:02 - Re: Rombo di *
|
li ho provati tutti
funzionano alla grande complimenti S! |
Pagina: 1 2 Avanti
Esegui il login per scrivere una risposta.