Jump to content

[Projekts] Utilīta - Euro summa vārdiem


HIGH-Zen
 Share

Recommended Posts

Nav vieglāk čatā pajautāt?

 

Protams! Šeit ir summa 765,32 eiro vārdos:

Septiņi simti sešdesmit pieci eiro un trīsdesmit divi centi.

Link to comment
Share on other sites

:D

 

 

Atvainojiet par neskaidrību. Šeit ir summa 765,32 eiro vārdos, iekļaujot centus ciparu formātā:

Septiņi simti sešdesmit pieci eiro un 32 centi.

  • Patīk 1
Link to comment
Share on other sites

Varbūt viņu var mazliet vairāk paspīdzināt. Izskatās ka strādā. Var jau paprasīt, lai arī lielākus skaitļus iekļauj.

 

Protams! Šeit ir viena Python programma, kas konvertē norādīto summu eiro vārdos:

 

def convert_to_words(amount):
    # Vārdi, kas atbilst skaitļu formām
    ones = ['nulle', 'viens', 'divi', 'trīs', 'četri', 'pieci', 'seši', 'septiņi', 'astoņi', 'deviņi']
    tens = ['desmit', 'vienpadsmit', 'divpadsmit', 'trīspadsmit', 'četrpadsmit', 'piecpadsmit', 'sešpadsmit', 'septiņpadsmit', 'astoņpadsmit', 'deviņpadsmit']
    multiples_of_ten = ['nulle', 'desmit', 'divdesmit', 'trīsdesmit', 'četrdesmit', 'piecdesmit', 'sešdesmit', 'septiņdesmit', 'astoņdesmit', 'deviņdesmit']
    hundreds = ['nulle', 'viens simts', 'divi simti', 'trīs simti', 'četri simti', 'pieci simti', 'seši simti', 'septiņi simti', 'astoņi simti', 'deviņi simti']
    thousands = ['nulle', 'viens tūkstotis', 'divi tūkstoši', 'trīs tūkstoši', 'četri tūkstoši', 'pieci tūkstoši', 'seši tūkstoši', 'septiņi tūkstoši', 'astoņi tūkstoši', 'deviņi tūkstoši']

    # Atdalīt eiro un centus
    euros = int(amount)
    cents = int((amount - euros) * 100)

    # Konvertēt eiro vārdos
    result = ''

    if euros >= 1000:
        thousands_digit = euros // 1000
        result += thousands[thousands_digit] + ' '
        euros %= 1000

    if euros >= 100:
        hundreds_digit = euros // 100
        result += hundreds[hundreds_digit] + ' '
        euros %= 100

    if euros >= 20:
        tens_digit = euros // 10
        result += multiples_of_ten[tens_digit] + ' '
        euros %= 10

    if euros >= 10:
        result += tens[euros - 10] + ' '
        euros = 0

    if euros > 0:
        result += ones[euros] + ' '

    result += 'eiro'

    # Konvertēt centus vārdos
    if cents > 0:
        result += ' un ' + str(cents) + ' centi'
    
    return result


# Izmantojums
amount = 765.32
words = convert_to_words(amount)
print(words)

 

Pirms 1 minūtes , HIGH-Zen teica:

un vietā jābūt komatam,

eiro ir jābūt euro.

Tie taču kautkādi sīkumi, pasaki viņam kā vajag un izdarīs :D

 

Link to comment
Share on other sites

Nu tu jau arī, uz kuras normālas sistēmas tad nav Pitona? Uz Windows? Ņemties ar .dll, Paskāliem utt ir košer, Pitons ir problēma :D

 

Bet nu:

 

Protams! Šeit ir Python programma ar GUI interfeisu, izmantojot bibliotēku Tkinter, lai konvertētu summu eiro vārdos:

 

import tkinter as tk

entry_amount = None
label_result = None

def convert_to_words():
    amount = float(entry_amount.get())
    
    ones = ['nulle', 'viens', 'divi', 'trīs', 'četri', 'pieci', 'seši', 'septiņi', 'astoņi', 'deviņi']
    tens = ['desmit', 'vienpadsmit', 'divpadsmit', 'trīspadsmit', 'četrpadsmit', 'piecpadsmit', 'sešpadsmit', 'septiņpadsmit', 'astoņpadsmit', 'deviņpadsmit']
    multiples_of_ten = ['nulle', 'desmit', 'divdesmit', 'trīsdesmit', 'četrdesmit', 'piecdesmit', 'sešdesmit', 'septiņdesmit', 'astoņdesmit', 'deviņdesmit']
    hundreds = ['nulle', 'viens simts', 'divi simti', 'trīs simti', 'četri simti', 'pieci simti', 'seši simti', 'septiņi simti', 'astoņi simti', 'deviņi simti']
    thousands = ['nulle', 'viens tūkstotis', 'divi tūkstoši', 'trīs tūkstoši', 'četri tūkstoši', 'pieci tūkstoši', 'seši tūkstoši', 'septiņi tūkstoši', 'astoņi tūkstoši', 'deviņi tūkstoši']

    euros = int(amount)
    cents = int((amount - euros) * 100)

    result = ''

    if euros >= 1000:
        thousands_digit = euros // 1000
        result += thousands[thousands_digit] + ' '
        euros %= 1000

    if euros >= 100:
        hundreds_digit = euros // 100
        result += hundreds[hundreds_digit] + ' '
        euros %= 100

    if euros >= 20:
        tens_digit = euros // 10
        result += multiples_of_ten[tens_digit] + ' '
        euros %= 10

    if euros >= 10:
        result += tens[euros - 10] + ' '
        euros = 0

    if euros > 0:
        result += ones[euros] + ' '

    result += 'eiro'

    if cents > 0:
        result += ' un ' + str(cents) + ' centi'
    
    label_result.configure(text=result)

# Izveidot GUI logu
window = tk.Tk()
window.title("Eiro summas konvertētājs")

# Ievades lauks summai
label_amount = tk.Label(window, text="Summa eiro:")
label_amount.pack()
entry_amount = tk.Entry(window)
entry_amount.pack()

# Poga konvertēšanai
btn_convert = tk.Button(window, text="Konvertēt", command=convert_to_words)
btn_convert.pack()

# rezultāta etiķete
label_result = tk.Label(window, text="")
label_result.pack()

# Palaiž GUI logu
window.mainloop()

 

 

 

Link to comment
Share on other sites

Pirms 38 minūtēm , HIGH-Zen teica:

eiro ir jābūt euro

Man labāk patīk septiņsimt sešdesmit pieci eiro, 32 centi, kas arī nav nepareizi.

Link to comment
Share on other sites

Interesanti cik ilgā laikā MS ieviesīs kādu no AI botu paveidiem iekš Exeļa, kur varēs ailē vienkāršā tekstā uzrakstīt "tie ieliec summu vārdiem, lai atbilst MK. rīkojuma nr.122 formātam".

Kautkādi trešās puses risinājumi jau eksistē, kas izmanto ChatGPT API.

Priekš offisa lietotāja 'vidējā', tas varētu būt liels produktivitātes pieaugums, vismaz pārdot jauno Ekseli ar AI būs 10x vieglāk.

Edited by AndrisBB
Link to comment
Share on other sites

Tas arī ir Microsoft viens no galvenajiem mērķiem, integrēt chatGPT ofisa pakā, kad vari piemēram uzrakstīt "uztaisi man prezentāciju par šo eksel datubāzi ar smukiem grafikiem, tā lai investoriem saprotams" un windows meklēšanā. Par to arī Google pašlaik satraucas

Link to comment
Share on other sites

Es jau īpaši viņu netestēju, nokopēju ko čats iedeva, ganjau kautkādas kļūdas ir.

Punktu izskatās ka viņam tur gribās, nevis komatu.

 

 

 

 

Screenshot from 2023-05-21 13-00-54.png

Link to comment
Share on other sites

Pirms 5 minūtēm , camel teica:

pamēģini 123123.12

Nu tas jau skaidrs, čatam jāpaprasa lai pieliek arī lielākus skaitļus.

Link to comment
Share on other sites

pirms 1 stundas , AndrisBB teica:

Nav vieglāk čatā pajautāt?

Secinājums: parastam cilvēkam tomēr vieglāk būs izmantot @HIGH-Zen izveidoto softiņu nekā katru reizi veikt entos ChatGPT vaicājumus, lai tiktu pie kārotā rezultāta :D 

 

Link to comment
Share on other sites

Nu tas ar vēl diskutējami cik tur īpaši ērtāk, jautājumi jau saglabājas, tik izmaini summu. Plus var arī citus jautājumus uzdot, tanī pašā applikācijā vai pietvīkot eošo.

 

 

Screenshot 2023-05-21 at 13.44.38.png

Link to comment
Share on other sites

pirms 2 stundām , vvv teica:

Man labāk patīk septiņsimt sešdesmit pieci eiro, 32 centi, kas arī nav nepareizi.

Oficiālos dokumentos ir jāizmanto euro, piedevām tā kā tas ir svešvārds, tad Italics.

Septiņsimt sešdesmit pieci euro, 32 centi.

 

To nosaka noteikumi, kuros Eiropa nodiktēja, ka obligāti jābūt euro.

Kaut kādos neoficiālos pierakstos vari rakstīt eiro, visi protams sapratīs.

 

Link to comment
Share on other sites

Pirms 4 minūtēm , HIGH-Zen teica:

Oficiālos dokumentos ir jāizmanto euro, piedevām tā kā tas ir svešvārds, tad Italics.

Kur obligāti jālieto, tur lietojam euro.

Citādi nav obligāti jālieto, varam rakstīt eiro, arī oficiālos dokumentos, piemēram, rēķinos, līgumos..., ja iekšzemes...

Speciāli apskatījos, dateks.lv internetveikalā pirktai mantai pavadzīmē eiro nevis euro.

Link to comment
Share on other sites

Kādreiz mēģināju to skaitlis -> summa vārdiem sarakstīt vienā šūnā vienā super-formulā, bet excel neņēma pretīm, formula bija par garu. Ar LAMBDA funkcijām sanāk īsāka, bet tāpat par garu. Vispār excelis ir tāds aprobežots.

Link to comment
Share on other sites

Citēt

...(piemēram, juridiskos un finanšu dokumentos)...

Tad rēķins ir finanšu dokuments vai nav? Pa tavam tā ir ikdienas saziņa un publikā telpa?

Link to comment
Share on other sites

Kaut kad, pašos pirmssākumos it kā ES piekrita, ka valstīs, kur kontinenta nosaukums nerakstās Europe, var izmantot valsts valodai atbilstošu valūtas nosaukumu. Mēs tomēr dzīvojam Eiropā, nevis Europe, tātad eiro nevis euro, tāpat kā koka rublis, nevis rubļi, dolārs, nevis dollar u.t.t. 

  Protams, starptautiskos darījumos jālieto visiem saprotams apzīmējums, bet konkrētā valstī atbilstoši tās valodai. Nezinu grieķu valodas skanējumu, bet viņi oficiāli raksta EYRΩ, uz banknotēm ir ar EBPO, jo Bulgārijā ir kirilica. 

 Vispār varētu šo jautājumu pacelt sakarā ar likuma neatbilstību valsts valodas lietojumam, bet kurš to uzņemsies.

Edited by raiviic
  • Patīk 2
Link to comment
Share on other sites

Pirms 6 minūtēm , HIGH-Zen teica:

Tad rēķins ir finanšu dokuments vai nav?

Vaitad tas ir kāds līgums vai likums? Rēķinu jau var rakstīt kādā formā grib, divi subjekti savā starpā sarunājas, raksta kaut 'eināri'.

Link to comment
Share on other sites

Pirms 10 minūtēm , vvv teica:

Lasi līdz galam. «... kur to nosaka likums.»

Citēt

Ņemot vērā, ka atbilstoši regulai arī civiltiesiskie dokumenti (piemēram, darba līgums, pirkšanas-pārdošanas līgums) ir uzskatāmi par tiesiskiem instrumentiem, tad, norādot tajos summas vārdiem, jālieto oficiālais valūtas nosaukums — euro (kursīvā).

http://www.lnbiedriba.lv/lv/pakalpojumi/zurnals-rosme/arhivs/2014/nr-2-2014/eiro-un-cents-latviesu-valoda/?textmode

Link to comment
Share on other sites

Ja kas, oficiāls fragments no VID dokumenta: (bija interese, jo nācās pārskaitīt palielu summu meitai).

Citēt

1425 eiro saņemšana gadā ir robeža, virs kuras jāsāk maksāt nodoklis jebkuram, kurš saņem lielāku summu gadā no personas, kas nav radinieks.

Piemēram, pāris bez bērniem, kas nav precējies, dzīvo atsevišķi, bet vēlas veikt savstarpēju naudas dāvinājumu, kas lielāks par 1425 eiro, to apliks ar iedzīvotāju nodokli. Summa 1424 eiro ir robeža, no kuras būs jāsāk maksāt iedzīvotāju ienākuma nodoklis (IIN) jebkurai personai, kura saņem lielāku summu par 1425 eiro gadā no personas, kas nav radinieks.

   Kā arī - dažādiem  foto/video darbiem slēdzu ar iestādēm autoratlīdzības vai uzņēmuma līgumus - nu ne vienmēr tur raksta euro.

Edited by raiviic
  • Patīk 1
Link to comment
Share on other sites

Pirms 5 minūtēm , HIGH-Zen teica:

Pilnīgi prasās jurista komentārs šajā jautājumā.

Gan jau dažādi juristi nokomentēs dažādi.

Es tik to zinu, ka visādos dokumentos pie summas vārdos ir gan euro gan eiro. Protams, tajos, kuros obligāti, tur būs euro.

Paskatījos VID mājaslapā, tur visādi teksti, kuros eiro pieminēts, ir lietots euro un ir lietots eiro arī.

Link to comment
Share on other sites

https://www.vvc.gov.lv/lv/latviesu-literaras-valodas-konsultaciju-apkopojums#kad-dokumentos-lietojams-eiro-bet-kad-euro

Šis no Valsts valodas centra mājaslapas. Aktuālais

Citēt

Eiropas Savienības (ES) vienotās valūtas nosaukums tehniskajos tekstos (normatīvajos aktos)  tiek atveidots kā euro, savukārt ikdienā, Latvijas Republikas normatīvajos aktos un publiskajā telpā lietojams termins "eiro".

 

Ej nu tiec gudrs, kad euro un kad eiro. :D

Link to comment
Share on other sites

1 stundu atpakaļ, HIGH-Zen teica:

a runā par redzētiem rēķiniem un dažādām vēstulēm, tad esmu redzējis rēķinus kuros vispār nav summas vārdiem, viss ar cipariem.

https://www.bdo.lv/lv-lv/publikacijas/featured-insights/vai-summa-rekina-janorada-ar-vardiem

Citēt

Izvērtējot prasības par dokumentu noformēšanu, varam secināt, ka nevienā normatīvajā regulējumā nav paredzēts, ka summai jābūt norādītai ar vārdiem. Arī PVN likuma 125.pantā, kurā noteikts nodokļa rēķina saturs, nav šādas prasības. Tādējādi tā ir uzņēmuma brīva izvēle – norādīt summu ar vārdiem vai nē.

 

Link to comment
Share on other sites

pirms 4 stundām , AndrisBB teica:

Tik tas ka tur jābūt divdesmit vienam (vārdos) centam 😂

Mac zog naudu.

Link to comment
Share on other sites

Linux jau arī

 

andris@prime:~$ python3
Python 3.10.6 (main, Nov 14 2022, 16:10:14) [GCC 11.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> amount = 356.21
>>> euros = int(amount)
>>> print(euros)
356
>>> cents = int((amount - euros) * 100)
>>> print(cents)
20

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...