Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Abbiamo provato a fondo il nuovo Magic 8 Lite di HONOR, e per farlo siamo volati fino a Marrakech , dove abbiamo testato la resistenza di questo smartphone in ogni condizione possibile ed immaginabile. Il risultato? Uno smartphone praticamente indistruttibile e con un'autonomia davvero ottima. Ma c'è molto altro da sapere su Magic 8 Lite, ve lo raccontiamo in questa recensione completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-06-2006, 18:25   #1
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
[Python] Primo programmino

Ho realizzato il mio primo programmino in Python. Serve per convertire un numero dalla numerazione decimale alla numerazione romana.
Codice:
#! /usr/bin/env python

class BadNumberException(Exception):
    def __init__ (self, value):
        self.value = value
    def __str__ (self):
        return repr (self.value)

def format_roman_digit (digit, roman1, roman5, roman10):
    if digit >= 1 and digit <= 3:
        return roman1 * digit
    elif digit == 4:
        return roman1 + roman5
    elif digit >= 5 and digit <= 8:
        return roman5 + roman1 * (digit-5)
    elif digit == 9:
        return roman1 + roman10
    else:
        return ""

def roman_number (num):
    if num < 1 or num > 3999:
        raise BadNumberException ("bad number " + str(num))

    roman = format_roman_digit (num/1000, "M", "", "")
    num %= 1000
    roman += format_roman_digit (num/100, "C", "D", "M")
    num %= 100
    roman += format_roman_digit (num/10, "X", "L", "C")
    num %= 10
    roman += format_roman_digit (num, "I", "V", "X")

    return roman


if __name__ == '__main__':
    import sys

    if len (sys.argv) == 2:
        strnum = sys.argv[1]
        try:
            r = roman_number (int (strnum))
            print "roman =", r
        except ValueError:
            print "invalid input: " + strnum
        except BadNumberException, err:
            print err
Il programma funziona bene. Vi sembra ben scritto?? C'è qualcosa che si può migliorare?
Grazie.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2006, 11:17   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da andbin
C'è qualcosa che si può migliorare?
Mi rispondo da solo .... stavo leggendo adesso il libro Dive Into Python e c'è proprio, tra gli esempi, la conversione in numeri romani .... ed usa un algoritmo molto semplice "a sottrazione" .... il mio quindi è 'na schifezza
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2006, 11:34   #3
Stiwy.NET
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 611
Quote:
Originariamente inviato da andbin
Mi rispondo da solo .... stavo leggendo adesso il libro Dive Into Python e c'è proprio, tra gli esempi, la conversione in numeri romani .... ed usa un algoritmo molto semplice "a sottrazione" .... il mio quindi è 'na schifezza
Non abbatterti...spesso si fanno/scrivono cose inutili e ripetitive, ma almeno servono a capire come funzionano... eppoi farsi le cose aiuta ad imparare e tenere in esercizio la mente... io mi sono fatto un ftp-treeview in vb.net... è inutile... però è stato carino farlo... ora soddisfa quasi tutte le mie necessità...
Stiwy.NET è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Oracle NetSuite si potenzia con nuove fu...
Musica generata con l'IA: Sony lavora a ...
Cyberpunk 2077 in versione PC su smartph...
BYD si gioca un grosso jolly: pronta Rac...
Samsung annuncia l'arrivo in Italia dei ...
Offerta lancio Pixel 10a: come ottenere ...
Google presenta Pixel 10a: poche le novi...
Caos F1 2026: 14 monoposto senza omologa...
Tesla festeggia il primo Cybercab prodot...
Desktop piccolo e potente? NZXT H2 Flow ...
Polestar spinge sull'acceleratore: arriv...
Nuovo record mondiale nel fotovoltaico: ...
L'ultimo baluardo cade: fine supporto pe...
'Il mondo non ha mai visto nulla di simi...
La Commissione europea mette sotto indag...
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: 06:24.


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