praegune kellaaeg 13.05.2024 11:29:09
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
sõnum |
|
Riivo
HV Guru
liitunud: 23.02.2004
|
16.05.2022 20:11:05
Number sõnadeks |
|
|
Kas keegi oskab pakkuda mingit teeki, mis teeks numbrid eestikeelseteks sõnadeks? Skriptimiskeele osas olen paindlik. Teen isiklikus tarbeks väikest konsoolirakendust, mis koostab arveid ja soovin sinna lisada välja "summa sõnadega".
Äkki keegi Pythonis osav suudab siia eesti keele lisada? Soome keele faili annaks usutavasti aluseks võtta. Ma võin testimisega abiks olla.
|
|
Kommentaarid: 233 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
221 |
|
tagasi üles |
|
|
napoleon
Unknown virus
liitunud: 08.12.2008
|
|
Kommentaarid: 76 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
59 |
|
tagasi üles |
|
|
tarmo66
HV vaatleja
liitunud: 13.10.2008
|
|
Kommentaarid: 14 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
14 |
|
tagasi üles |
|
|
Riivo
HV Guru
liitunud: 23.02.2004
|
20.06.2022 11:36:26
|
|
|
Tegin oma lahenduse Pythonis. Konstruktiivne kriitika on teretulnud. Kindlasti annab paremaks teha.
python:
|
digits = { 0: '', 1: 'üks', 2: 'kaks', 3: 'kolm', 4: 'neli', 5: 'viis', 6: 'kuus', 7: 'seitse', 8: 'kaheksa', 9: 'üheksa' } thousands = { 9: 'miljardit', 6: 'miljonit', 3: 'tuhat', 0: '' } def get_digit(number, n): return number // 10**n % 10 def get_thousands(number, n): return round(int(number / 10**n) / 1000 % 1 * 1000) def thousand2words(number): words = '' if get_digit(number, 2): words += digits[get_digit(number, 2)] + 'sada ' if get_digit(number, 1): if get_digit(number, 1) == 1: if get_digit(number, 0) == 0: words += 'kümme' else: words += digits[get_digit(number, 0)] + 'teist' return words else: words += digits[get_digit(number, 1)] + 'kümmend ' words += digits[get_digit(number, 0)] return words.strip() def num2words_et(number): words = '' for thousand in thousands: if get_thousands(number, thousand): words += thousand2words(get_thousands(number, thousand)) + ' ' words += thousands[thousand] if get_thousands(number, thousand) != 1 \ else thousands[thousand].replace('it', '') words += ' ' return words.strip()
|
|
|
Kommentaarid: 233 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
221 |
|
tagasi üles |
|
|
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|