Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Lenovo Idea Tab Plus: il tablet da 12 pollici che costa meno di 300 euro
Recensione Lenovo Idea Tab Plus: il tablet da 12 pollici che costa meno di 300 euro
Lenovo Idea Tab Plus prova a portare un display da 12,1 pollici 2.5K, quattro speaker Dolby Atmos e una batteria da 10.200 mAh sotto la soglia psicologica dei 300 euro, penna inclusa. Lo abbiamo usato per oltre una settimana per capire dove l'azienda ha tagliato e dove invece ha tenuto il punto
Oltre il contante e le crypto: tutto sull'Euro Digitale e la nuova sovranità monetaria europea
Oltre il contante e le crypto: tutto sull'Euro Digitale e la nuova sovranità monetaria europea
L'euro digitale è una valuta fiat che entrerà in vigore nei prossimi anni. L'obiettivo principale è quello di ridurre la dipendenza dalle piattaforme di pagamento digitali statunitensi e offrire ai cittadini un modo semplice per trasferire denaro. Anche offline, anche in maniera (pseudo)anonima
Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere?
Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere?
HONOR Magic V6 è arrivato in Italia a 2.299,90 euro con una promessa precisa: unire 4 mm di spessore da aperto (8,75 mm chiuso nel modello White, 9 mm negli altri colori) a una batteria da 6.660 mAh, la più capiente mai vista su un pieghevole. Lo abbiamo usato per oltre una settimana in versione Red 16/512 GB per capire se lo Snapdragon 8 Elite Gen 5 tiene testa alla concorrenza anche fuori dai benchmark ufficiali
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-06-2006, 17:25   #1
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
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, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2006, 10:17   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
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, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2006, 10: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


Recensione Lenovo Idea Tab Plus: il tablet da 12 pollici che costa meno di 300 euro Recensione Lenovo Idea Tab Plus: il tablet da 12...
Oltre il contante e le crypto: tutto sull'Euro Digitale e la nuova sovranità monetaria europea Oltre il contante e le crypto: tutto sull'Euro D...
Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere? Recensione HONOR Magic V6: spessore record e sup...
Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni Redmi Pad 2 9.7: ampio display, economico e peso...
Peugeot Polygon Concept: ecco il futuro delle utilitarie Peugeot Polygon Concept: ecco il futuro delle ut...
Cornici ancora più ridotte su iPh...
Samsung lancia la Galaxy Card con cashba...
Dal 2 agosto entrano in vigore nell'UE l...
Vicino a Parma il parcheggio dimenticato...
Sony Music fa la guerra a Udio: contesta...
Telegram integrerà un portafoglio...
Il debito nascosto dei giganti tech dell...
Amazon dà il via libera alla seri...
Addio crisi dell'elio-3? Questa tecnolog...
Google Pixel 10a a 399€ e crolla anche i...
Haier I-Pro Serie 3 a 359€: la lavatrice...
Claude Code ora collauda le app iOS da s...
Unity mostra per la prima volta un gioco...
Fotonica programmabile: un chip sudcorea...
DJI Neo vola da solo, è un 4K, senza pat...
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: 11:23.


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