Torna indietro   Hardware Upgrade Forum > Software > Programmazione

GeForce RTX 5060, due schede alla prova per capire se 8 GB di memoria sono ancora sufficienti
GeForce RTX 5060, due schede alla prova per capire se 8 GB di memoria sono ancora sufficienti
MSI GeForce RTX 5060 Gaming OC e AORUS GeForce RTX 5060 ELITE ci permettono di vedere da vicino l'ultima arrivata di casa NVIDIA, la GPU Blackwell attualmente meno costosa ad arrivare sul mercato con un prezzo a partire da 329 euro. Con 8 GB di VRAM è adeguata per il contesto attuale? La risposta è che dipende molto dalle necessità e aspettative di chi la compra.
Samsung Galaxy Tab S10 FE+: un tablet enorme a un prezzo super, ma con qualche limite
Samsung Galaxy Tab S10 FE+: un tablet enorme a un prezzo super, ma con qualche limite
Samsung Galaxy Tab S10 FE+ 5G si candida come una delle proposte più intriganti fra i tablet dalle dimensioni esagerate. Con uno schermo LCD da 13,1 pollici e una batteria da 10.090 mAh, oltre al supporto S Pen incluso, punta a competere con iPad Air a un prezzo ben inferiore. La proposta coreana appare solida sul piano del design, tuttavia presenta qualche difficoltà in termini di prestazioni pure.
Motorola razr 60 Ultra: il migliore! Peccato per l’AI un po’ ''zoppa''. Recensione
Motorola razr 60 Ultra: il migliore! Peccato per l’AI un po’ ''zoppa''. Recensione
Motorola rinnova i suoi smartphone pieghevoli e abbiamo avuto modo di mettere sotto torchio questo nuovo razr 60 Ultra, flagship della serie, che cambia alcune cose migliorando in molti aspetti e soprattutto divenendo, aspettando Samsung e gli altri, il pieghevole a conchiglia perfetto. Peccato la mancanza di Moto AI in italiano.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 16-01-2008, 16:54   #1
Occasus
Member
 
L'Avatar di Occasus
 
Iscritto dal: May 2005
Città: Another World
Messaggi: 231
[Python] Aiuto esercizio di "How to Think Like a Python Programmer"

Ciao a tutti.
Dopo diversi fallimenti, sto tentando di imparare qualcosa su un linguaggio di programmazione, in questo caso il Python.
http://www.greenteapress.com/thinkpy...005.html#toc50 , esercizio 3.

Avendo già a disposizione queste funzioni:
Codice:
import math
from TurtleWorld import *
TurtleWorld()
bob = Turtle()
bob.delay = 0.01

def polyline(t, length, n, angle):
    """Draw n line segments with the given length and
    angle (in degrees) between them. t is a turtle.
    """
    for i in range(n):
        fd(t, length)
        lt(t, angle)

def arc(t, r, angle):
    """Draw an arc with the given r (radius) and angle
    """(in degrees). t is a turtle.
    arclength = 2 * math.pi * r * angle / 360
    n = int(arclength / 4)
    length = arclength / n
    polyline(t, length, n, float(angle)/n)
come posso fare a realizzare la funzione per disegnare i fiori?

L'unica cosa funzionante che sono riuscito a fare è la definizione della funzione:
Codice:
def flower(t, r, petals):


Grazie per l'aiuto.
Occasus è offline   Rispondi citando il messaggio o parte di esso
Old 18-01-2008, 13:18   #2
Occasus
Member
 
L'Avatar di Occasus
 
Iscritto dal: May 2005
Città: Another World
Messaggi: 231
up
Occasus è offline   Rispondi citando il messaggio o parte di esso
Old 18-01-2008, 21:31   #3
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12093
ma scusa..
per il poco che ricordo di python....
le virgolette triple nella funzione arc non dovrebbero essere alla fine della stringa?
cmq spè che mi scarico 'sto turtleworld che non ho mai sentito e vedo
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 18-01-2008, 21:35   #4
Occasus
Member
 
L'Avatar di Occasus
 
Iscritto dal: May 2005
Città: Another World
Messaggi: 231
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
ma scusa..
per il poco che ricordo di python....
le virgolette triple nella funzione arc non dovrebbero essere alla fine della stringa?
cmq spè che mi scarico 'sto turtleworld che non ho mai sentito e vedo
Sí, il commento l'ho aggiunto mentre scrivevo il messaggio.
È chiaramente sbagliato, ma non era presente nelle versioni che ho passato all'interprete.
Occasus è offline   Rispondi citando il messaggio o parte di esso
Old 18-01-2008, 21:49   #5
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12093
Codice:
import math
from TurtleWorld import *


def polyline(t, length, n, angle):
    """Draw n line segments with the given length and
    angle (in degrees) between them. t is a turtle.
    """
    for i in range(n):
        fd(t, length)
        lt(t, angle)

def arc(t, r, angle):
    """Draw an arc with the given r (radius) and angle
    (in degrees). t is a turtle."""
    arclength = 2 * math.pi * r * angle / 360
    n = int(arclength / 4)
    length = arclength / n
    polyline(t, length, n, float(angle)/n)


def flower(turtle, radius, petals):
    for i in range(petals):
        arc(turtle, radius, 180)
        #fai girare la tartaruga di 90°


TurtleWorld()
bob = Turtle()
bob.delay = 0.01
flower(bob, 50, 4)
dovrebbe essere qualcosa del genere ovviamente inserendo il comando che fa girare la tartaruga di 90° a sinistra e *in teoria dovrebbe andare*
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 18-01-2008, 22:04   #6
Occasus
Member
 
L'Avatar di Occasus
 
Iscritto dal: May 2005
Città: Another World
Messaggi: 231
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
dovrebbe essere qualcosa del genere ovviamente inserendo il comando che fa girare la tartaruga di 90° a sinistra e *in teoria dovrebbe andare*
Questo è il problema. Ho provato tante soluzioni (la prima funzione era simile, se non uguale a quella tua) che in teoria dovrebbero andare, ma in pratica non disegnano i fiori.
Occasus è offline   Rispondi citando il messaggio o parte di esso
Old 18-01-2008, 23:03   #7
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12093
Quote:
Originariamente inviato da Occasus Guarda i messaggi
Questo è il problema. Ho provato tante soluzioni (la prima funzione era simile, se non uguale a quella tua) che in teoria dovrebbero andare, ma in pratica non disegnano i fiori.
ehmm...
se hai un raggio x e fai un arco di 180° allora ti ritrovi esattamente in corrispondenza del punto di partenza, dopo aver disegnato un arco, però traslato di 2x lungo la direzione perpendicolare (con verso a sinistra) della posizione inziale della tartaruga.
La direzione della tartaruga sarà a quel punto parallela rispetto a quella iniziale, ma il verso sarà opposto.
Quindi ruotando di 90° verso destra e ripetendo il procedimento avremo che sarà traslata di 2x nella direzione verso cui era rivolta prima di essere girata di 90°.
Finendo il giro si avrà una situazione di questo tipo (rappresentando solo i diametri degli archi):
Codice:
------
|    |
|    |
------
con la tartaruga che sarà ritornata al punto di partenza disegnando i 4 archi che formano i petali del fiore.
A quel punto generalizzare la funzione per ogni numero di petali dovrebbe essere banale così ad occhio.
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 11:21   #8
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7237
per non saper ne leggere ne scrivere in python sono riuscito a ottenere una cosa simile
Codice:
import math
from TurtleWorld import *


def polyline(t, length, n, angle):
    """Draw n line segments with the given length and
    angle (in degrees) between them. t is a turtle.
    """
    for i in range(n):
        fd(t, length)
        lt(t, angle)

def arc(t, r, angle):
    """Draw an arc with the given r (radius) and angle
    (in degrees). t is a turtle."""
    arclength = 2 * math.pi * r * angle / 360
    n = int(arclength / 4)
    length = arclength / n
    polyline(t, length, n, float(angle)/n)


def flower(turtle, radius, petals):
    for i in range(petals):
        arc(turtle, radius, 90)
        lt(turtle, 90)
        arc(turtle, radius, 90)
        lt(turtle, (360/petals+90))


TurtleWorld()
bob = Turtle()
bob.delay = 0.001
flower(bob, 90, 7)
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 12:45   #9
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12093
Quote:
Originariamente inviato da k0nt3 Guarda i messaggi
per non saper ne leggere ne scrivere in python sono riuscito a ottenere una cosa simile
Codice:
import math
from TurtleWorld import *


def polyline(t, length, n, angle):
    """Draw n line segments with the given length and
    angle (in degrees) between them. t is a turtle.
    """
    for i in range(n):
        fd(t, length)
        lt(t, angle)

def arc(t, r, angle):
    """Draw an arc with the given r (radius) and angle
    (in degrees). t is a turtle."""
    arclength = 2 * math.pi * r * angle / 360
    n = int(arclength / 4)
    length = arclength / n
    polyline(t, length, n, float(angle)/n)


def flower(turtle, radius, petals):
    for i in range(petals):
        arc(turtle, radius, 90)
        lt(turtle, 90)
        arc(turtle, radius, 90)
        lt(turtle, (360/petals+90))


TurtleWorld()
bob = Turtle()
bob.delay = 0.001
flower(bob, 90, 7)
infatti hai usato la banale generalizzazione e il left turn che per qualche strano motivo ( ) quei geni hanno chiamato lt anzichè left turn
Ho sempre odiato chi chiama i metodi e le variabili con nomi non significativi

Cmq il mio codice, con un numero di petali pari a 4 ed aggiungendo il left turn funziona perfettamente
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 12:54   #10
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7237
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
infatti hai usato la banale generalizzazione e il left turn che per qualche strano motivo ( ) quei geni hanno chiamato lt anzichè left turn
Ho sempre odiato chi chiama i metodi e le variabili con nomi non significativi

Cmq il mio codice, con un numero di petali pari a 4 ed aggiungendo il left turn funziona perfettamente
ma come fai a disegnare un petalo con un solo arco?

ps. da uno che usa tk che nomi dei metodi ti aspettavi?
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 13:16   #11
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12093
Quote:
Originariamente inviato da k0nt3 Guarda i messaggi
ma come fai a disegnare un petalo con un solo arco?

ps. da uno che usa tk che nomi dei metodi ti aspettavi?
..hai provato a lanciare il mio codice per 4 petali con l'aggiunta di lt(turtle, 90)?
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 13:19   #12
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12093
anzi...
guarda che figata
Codice:
import math
from TurtleWorld import *


def polyline(t, length, n, angle):
    """Draw n line segments with the given length and
    angle (in degrees) between them. t is a turtle.
    """
    for i in range(n):
        fd(t, length)
        lt(t, angle)

def arc(t, r, angle):
    """Draw an arc with the given r (radius) and angle
    (in degrees). t is a turtle."""
    arclength = 2 * math.pi * r * angle / 360
    n = int(arclength / 4)
    length = arclength / n
    polyline(t, length, n, float(angle)/n)


def flower(turtle, radius, petals):
    for i in range(petals):
        arc(turtle, radius, 180)
        lt(turtle, 360/petals)


TurtleWorld()
bob = Turtle()
bob.delay = 0.01
flower(bob, 50, 8)


è belliffimo

__________________

Ultima modifica di ^TiGeRShArK^ : 19-01-2008 alle 13:21.
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 13:32   #13
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7237
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
anzi...
guarda che figata
Codice:
import math
from TurtleWorld import *


def polyline(t, length, n, angle):
    """Draw n line segments with the given length and
    angle (in degrees) between them. t is a turtle.
    """
    for i in range(n):
        fd(t, length)
        lt(t, angle)

def arc(t, r, angle):
    """Draw an arc with the given r (radius) and angle
    (in degrees). t is a turtle."""
    arclength = 2 * math.pi * r * angle / 360
    n = int(arclength / 4)
    length = arclength / n
    polyline(t, length, n, float(angle)/n)


def flower(turtle, radius, petals):
    for i in range(petals):
        arc(turtle, radius, 180)
        lt(turtle, 360/petals)


TurtleWorld()
bob = Turtle()
bob.delay = 0.01
flower(bob, 50, 8)


è belliffimo

nono tu devi provare questo

Codice:
import math
from TurtleWorld import *


def polyline(t, length, n, angle):
    """Draw n line segments with the given length and
    angle (in degrees) between them. t is a turtle.
    """
    for i in range(n):
        fd(t, length)
        lt(t, angle)

def arc(t, r, angle):
    """Draw an arc with the given r (radius) and angle
    (in degrees). t is a turtle."""
    arclength = 2 * math.pi * r * angle / 360
    n = int(arclength / 4)
    length = arclength / n
    polyline(t, length, n, float(angle)/n)


def flower(turtle, radius, petals):
    for i in range(petals):
        arc(turtle, radius, 120)
        lt(turtle, 120)
        arc(turtle, radius, 120)
        lt(turtle, (360/petals+120))


TurtleWorld()
bob = Turtle()
bob.delay = 0.001
flower(bob, 90, 9)
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 13:36   #14
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12093
Quote:
Originariamente inviato da k0nt3 Guarda i messaggi
nono tu devi provare questo
certo che è intrippante sta tartarughina
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 13:44   #15
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7237
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
certo che è intrippante sta tartarughina
mi ricordo di averci giochicchiato con un oggetto simile quando ero giovane..
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 17:49   #16
Occasus
Member
 
L'Avatar di Occasus
 
Iscritto dal: May 2005
Città: Another World
Messaggi: 231
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
ehmm...
se hai un raggio x e fai un arco di 180° allora ti ritrovi esattamente in corrispondenza del punto di partenza, dopo aver disegnato un arco, però traslato di 2x lungo la direzione perpendicolare (con verso a sinistra) della posizione inziale della tartaruga.
La direzione della tartaruga sarà a quel punto parallela rispetto a quella iniziale, ma il verso sarà opposto.
Quindi ruotando di 90° verso destra e ripetendo il procedimento avremo che sarà traslata di 2x nella direzione verso cui era rivolta prima di essere girata di 90°.
Finendo il giro si avrà una situazione di questo tipo (rappresentando solo i diametri degli archi):
Codice:
------
|    |
|    |
------
con la tartaruga che sarà ritornata al punto di partenza disegnando i 4 archi che formano i petali del fiore.
A quel punto generalizzare la funzione per ogni numero di petali dovrebbe essere banale così ad occhio.
Il problema, come hai notato, è che funziona solo con quattro petali.

Forse l'unica soluzione è prendere goniometro, calcolatrice e squadra, calcolare le misure e scrivere la funzione.
Occasus è offline   Rispondi citando il messaggio o parte di esso
Old 19-01-2008, 19:36   #17
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12093
Quote:
Originariamente inviato da Occasus Guarda i messaggi
Il problema, come hai notato, è che funziona solo con quattro petali.

Forse l'unica soluzione è prendere goniometro, calcolatrice e squadra, calcolare le misure e scrivere la funzione.
no.. quello di cui ho postato l'immagine è fatto in quel modo con 8 petali
e cmq l'avevo già scritto io che serviva una banale generalizzazione per farlo funzionare per tutti i casi..
cosa che ha fatto konte nel suo codice
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2008, 11:11   #18
guyver
Bannato
 
L'Avatar di guyver
 
Iscritto dal: May 2001
Città: Versilia
Messaggi: 1503
cad in python

ciao approfitto di questo 3d per chiedere:
stavo provando a far partire questo cam scritto in python e rilasciato sotto licenza mit
però mi da errore su un indentazione ma non capisco come risolverlo...
qualcuno me lo sà dire???
Allegati
File Type: zip cam.zip (22.3 KB, 3 visite)
guyver è offline   Rispondi citando il messaggio o parte di esso
Old 01-02-2008, 11:58   #19
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Non si "approfitta" di un thread, se ne apre uno nuovo, non costa nulla farlo ed in tal modo si contribuisce a mantenere ordinato il forum.
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
Old 04-02-2008, 10:03   #20
Ziosilvio
Moderatore
 
L'Avatar di Ziosilvio
 
Iscritto dal: Nov 2003
Messaggi: 16210
Quote:
Originariamente inviato da Occasus Guarda i messaggi
Ciao a tutti.
Dopo diversi fallimenti, sto tentando di imparare qualcosa su un linguaggio di programmazione, in questo caso il Python.
http://www.greenteapress.com/thinkpy...005.html#toc50 , esercizio 3.

Avendo già a disposizione queste funzioni:

CUT

come posso fare a realizzare la funzione per disegnare i fiori?
Anzitutto, mi sa che gli angoli dovranno essere due: uno per il numero dei petali (che è semplicemente 360°/n) e uno per la loro ampiezza, che chiamiamo alpha.

Proviamo a far disegnare alla tartarughina la parte inferiore di un petalo orizzontale.
Possiamo farlo dicendole di
- girare a destra di alpha/2, e poi
- tracciare un arco di ampiezza alpha.

A questo punto, la tartarughina è girata a sinistra di alpha/2 rispetto a est.
Per farle fare la parte superiore, dobbiamo farle ripetere la procedura, specularmente rispetto all'asse orizzontale, e in senso inverso.
Quindi, nel momento in cui inizia a disegnare, deve essere rivolta di alpha/2 a destra rispetto a ovest.
E questo, glielo possiamo far fare con un giro verso sinistra di 180°-alpha.

Adesso si può ripetere il tracciamento dell'arco; alla fine del quale, la tartarughina sarà girata di alpha/2 a sinistra rispetto a ovest.
Per farla di nuovo andare verso est, basta farla girare a sinistra di 180°-(alpha/2).
__________________
Ubuntu è un'antica parola africana che significa "non so configurare Debian" Chi scherza col fuoco si brucia.
Scienza e tecnica: Matematica - Fisica - Chimica - Informatica - Software scientifico - Consulti medici
REGOLAMENTO DarthMaul = Asus FX505 Ryzen 7 3700U 8GB GeForce GTX 1650 Win10 + Ubuntu
Ziosilvio è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


GeForce RTX 5060, due schede alla prova per capire se 8 GB di memoria sono ancora sufficienti GeForce RTX 5060, due schede alla prova per capi...
Samsung Galaxy Tab S10 FE+: un tablet enorme a un prezzo super, ma con qualche limite Samsung Galaxy Tab S10 FE+: un tablet enorme a u...
Motorola razr 60 Ultra: il migliore! Peccato per l’AI un po’ ''zoppa''. Recensione Motorola razr 60 Ultra: il migliore! Peccato per...
AWS Summit Milano 2025: accelerare sull'IA per liberare il potenziale delle imprese italiane AWS Summit Milano 2025: accelerare sull'IA per l...
Recensione HONOR Pad 10: a questo prezzo fa tremare la concorrenza Recensione HONOR Pad 10: a questo prezzo fa trem...
Nothing Phone (3): addio alla ricarica d...
Questa è la nuova Mercedes elettr...
Amazon Music Unlimited si arricchisce: a...
Sony non vuole sentire ragioni: nessuna ...
OnePlus 15T: un flagship compatto pronto...
vivo X200 FE: il top di gamma si fa tasc...
Zero Trust sempre e ovunque: così...
PlayStation Plus compie 15 anni: ce...
Tutte le offerte Amazon oggi: tablet 99€...
Tanti errori per i Tesla Robotaxi: passe...
HONOR Pad 10: quando batteria infinita i...
Parlare con il tuo gatto? Ecco l'AI cine...
Amazon lancia gli sconti sulle nuove RTX...
Snapdragon 8 Elite 2 a 2nm debutter&agra...
Una scelta intelligente: Xiaomi Redmi No...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 12:37.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www2v