function zahl_in_kurdisch(zahl)
local kurdische_namen = {
["0"] = "sifir",
["1"] = "yek",
["2"] = "du",
["3"] = "sê",
["4"] = "çar",
["5"] = "pênc",
["6"] = "şeş",
["7"] = "heft",
["8"] = "heşt",
["9"] = "neh",
["10"] = "deh",
["11"] = "yazdeh",
["12"] = "dozdeh",
["13"] = "sêzdeh",
["14"] = "çardeh",
["15"] = "pazdeh",
["16"] = "şazdeh",
["17"] = "hevdeh",
["18"] = "hejdeh",
["19"] = "nozdeh",
["20"] = "bîst",
["30"] = "sî",
["40"] = "çil",
["50"] = "pêncî",
["60"] = "şêst",
["70"] = "heftê",
["80"] = "heştê",
["90"] = "nod",
["100"] = "sed",
["200"] = "du sed",
["300"] = "sê sed",
["400"] = "çar sed",
["500"] = "pênc sed",
["600"] = "şeş sed",
["700"] = "heft sed",
["800"] = "heşt sed",
["900"] = "neh sed",
["1000"] = "hezar",
["2000"] = "du hezar",
["3000"] = "sê hezar",
["4000"] = "çar hezar",
["5000"] = "pênc hezar",
["6000"] = "şeş hezar",
["7000"] = "heft hezar",
["8000"] = "heşt hezar",
["9000"] = "neh hezar",
["10000"] = "deh hezar", -- Zehntausender hier
["20000"] = "bîst hezar",
["30000"] = "sî hezar",
["40000"] = "çil hezar",
["50000"] = "pêncî hezar",
["60000"] = "şêst hezar",
["70000"] = "heftê hezar",
["80000"] = "heştê hezar",
["90000"] = "nod hezar",
["100000"] = "sed hezar", -- Hunderttausender hier
["1000000"] = "milyonek", -- Hunderttausender hier
}
if zahl < 10 then
return kurdische_namen[tostring(zahl)] or ''
elseif zahl < 20 then
return kurdische_namen[tostring(zahl)] or ''
elseif zahl < 100 then
local zehner = kurdische_namen[tostring(math.floor(zahl / 10) * 10)] or ''
local einer = kurdische_namen[tostring(zahl % 10)] or ''
return zehner .. (einer ~= 'sifir' and " û " .. einer or '')
elseif zahl < 1000 then
local hunderter = kurdische_namen[tostring(math.floor(zahl / 100) * 100)] or ''
local rest = zahl % 100
return hunderter .. (rest ~= 0 and " û " .. zahl_in_kurdisch(rest) or '')
elseif zahl < 10000 then
local tausender = kurdische_namen[tostring(math.floor(zahl / 1000) * 1000)] or ''
local rest = zahl % 1000
return tausender .. (rest ~= 0 and " û " .. zahl_in_kurdisch(rest) or '')
elseif zahl < 100000 then
local zehntausender = kurdische_namen[tostring(math.floor(zahl / 10000) * 10000)] or ''
local rest = zahl % 10000
return zehntausender .. (rest ~= 0 and " û " .. zahl_in_kurdisch(rest) or '')
elseif zahl < 1000000 then
local hunderttausender = kurdische_namen[tostring(math.floor(zahl / 100000) * 100000)] or ''
local rest = zahl % 100000
return hunderttausender .. (rest ~= 0 and " û " .. zahl_in_kurdisch(rest) or '')
elseif zahl < 10000000 then
local million = kurdische_namen[tostring(math.floor(zahl / 1000000) * 1000000)] or ''
local rest = zahl % 1000000
return million .. (rest ~= 0 and " û " .. zahl_in_kurdisch(rest) or '')
else
return "Zu groß für diese Implementierung"
end
end
-- Eingabe mehrerer Zahlen
io.write("Gib mehrere Zahlen durch Kommas getrennt ein: ")
local eingabe = io.read()
-- Überprüfen, ob die Eingabezeichenkette nicht leer und nicht nur Leerzeichen ist
if eingabe:match("^%s*$") then
print("Bitte gültige Zahlen eingeben.")
else
-- Die eingegebene Zeichenkette in eine Liste von Zahlen konvertieren
local zahlen = {}
for x in eingabe:gmatch("%s*([^,]+)%s*,?%s*") do
table.insert(zahlen, tonumber(x))
end
-- Überprüfen, ob die Liste gültige Zahlen enthält
if #zahlen == 0 then
print("Bitte gültige Zahlen eingeben.")
else
-- Verarbeitung und Ausgabe der kurdischen Namen für jede Zahl
for _, zahl in ipairs(zahlen) do
local kurdischer_name = zahl_in_kurdisch(zahl)
print(string.format("%d: %s", zahl, kurdischer_name))
end
end
end