本模块包含有關加泰羅尼亞語中各種類型數字的数据。

Number 基數詞 序數詞 序數縮寫 乘數 分數 Wikipedia link
0 zero zero
1 un primer 1r u (nombre)
2 dos segon 2n doble mig dos
3 tres tercer 3r triple terç tres
4 quatre quart 4t quàdruple quatre
5 cinc 中部: cinquè
瓦倫西亞: cinqué
拉丁化: quint
中部:
瓦倫西亞:
拉丁化: 5t
quíntuple cinc
6 sis 中部: sisè
瓦倫西亞: sisé
拉丁化: sext
中部:
瓦倫西亞:
拉丁化: 6t
sèxtuple sis
7 set 中部: setè
瓦倫西亞: seté
拉丁化: sèptim
中部:
瓦倫西亞:
拉丁化: 7m
sèptuple nombre set
8 中部: vuit
瓦倫西亞: huit
中部: vuitè
瓦倫西亞: huité
拉丁化: octau
中部:
瓦倫西亞:
拉丁化: 8u
òctuple vuit
9 nou 中部: novè
瓦倫西亞: nové
中部:
瓦倫西亞:
nònuple nombre nou
10 deu 中部: desè
瓦倫西亞: desé
拉丁化: dècim
中部: 10è
瓦倫西亞: 10é
拉丁化: 10m
dècuple deu
11 onze 中部: onzè
瓦倫西亞: onzé
onze
12 dotze 中部: dotzè
瓦倫西亞: dotzé
dotze
13 tretze 中部: tretzè
瓦倫西亞: tretzé
tretze
14 catorze 中部: catorzè
瓦倫西亞: catorzé
catorze
15 quinze 中部: quinzè
瓦倫西亞: quinzé
quinze
16 setze 中部: setzè
瓦倫西亞: setzé
setze
17 中部: disset
瓦倫西亞: dèsset, desset
中部: dissetè
瓦倫西亞: desseté
disset
18 中部: divuit
瓦倫西亞: díhuit
中部: divuitè
瓦倫西亞: dihuité
divuit
19 中部: dinou
瓦倫西亞: dènou, dèneu
中部: dinovè
瓦倫西亞: denové
dinou
20 vint 中部: vintè
瓦倫西亞: vinté
vint
21 vint-i-un 中部: vint-i-unè
瓦倫西亞: vint-i-uné
vint-i-un
22 vint-i-dos 中部: vint-i-dosè
瓦倫西亞: vint-i-dosé
vint-i-dos
23 vint-i-tres 中部: vint-i-tresè
瓦倫西亞: vint-i-tresé
vint-i-tres
24 vint-i-quatre 中部: vint-i-quatrè
瓦倫西亞: vint-i-quatré
vint-i-quatre
25 vint-i-cinc 中部: vint-i-cinquè
瓦倫西亞: vint-i-cinqué
vint-i-cinc
26 vint-i-sis 中部: vint-i-sisè
瓦倫西亞: vint-i-sisé
vint-i-sis
27 vint-i-set 中部: vint-i-setè
瓦倫西亞: vint-i-seté
vint-i-set
28 中部: vint-i-vuit
瓦倫西亞: vint-i-huit
中部: vint-i-vuitè
瓦倫西亞: vint-i-huité
vint-i-vuit
29 vint-i-nou 中部: vint-i-novè
瓦倫西亞: vint-i-nové
vint-i-nou
30 trenta 中部: trentè
瓦倫西亞: trenté
trenta
31 trenta-un 中部: trenta-unè
瓦倫西亞: trenta-uné
trenta-un
32 trenta-dos 中部: trenta-dosè
瓦倫西亞: trenta-dosé
trenta-dos
33 trenta-tres 中部: trenta-tresè
瓦倫西亞: trenta-tresé
trenta-tres
34 trenta-quatre 中部: trenta-quatrè
瓦倫西亞: trenta-quatré
trenta-quatre
35 trenta-cinc 中部: trenta-cinquè
瓦倫西亞: trenta-cinqué
trenta-cinc
36 trenta-sis 中部: trenta-sisè
瓦倫西亞: trenta-sisé
trenta-sis
37 trenta-set 中部: trenta-setè
瓦倫西亞: trenta-seté
trenta-set
38 中部: trenta-vuit
瓦倫西亞: trenta-huit
中部: trenta-vuitè
瓦倫西亞: trenta-huité
trenta-vuit
39 trenta-nou 中部: trenta-novè
瓦倫西亞: trenta-nové
trenta-nou
40 quaranta 中部: quarantè
瓦倫西亞: quaranté
quaranta
41 quaranta-un 中部: quaranta-unè
瓦倫西亞: quaranta-uné
quaranta-un
42 quaranta-dos 中部: quaranta-dosè
瓦倫西亞: quaranta-dosé
quaranta-dos
43 quaranta-tres 中部: quaranta-tresè
瓦倫西亞: quaranta-tresé
quaranta-tres
44 quaranta-quatre 中部: quaranta-quatrè
瓦倫西亞: quaranta-quatré
quaranta-quatre
45 quaranta-cinc 中部: quaranta-cinquè
瓦倫西亞: quaranta-cinqué
quaranta-cinc
46 quaranta-sis 中部: quaranta-sisè
瓦倫西亞: quaranta-sisé
quaranta-sis
47 quaranta-set 中部: quaranta-setè
瓦倫西亞: quaranta-seté
quaranta-set
48 中部: quaranta-vuit
瓦倫西亞: quaranta-huit
中部: quaranta-vuitè
瓦倫西亞: quaranta-huité
quaranta-vuit
49 quaranta-nou 中部: quaranta-novè
瓦倫西亞: quaranta-nové
quaranta-nou
50 cinquanta 中部: cinquantè
瓦倫西亞: cinquanté
cinquanta
51 cinquanta-un 中部: cinquanta-unè
瓦倫西亞: cinquanta-uné
cinquanta-un
52 cinquanta-dos 中部: cinquanta-dosè
瓦倫西亞: cinquanta-dosé
cinquanta-dos
53 cinquanta-tres 中部: cinquanta-tresè
瓦倫西亞: cinquanta-tresé
cinquanta-tres
54 cinquanta-quatre 中部: cinquanta-quatrè
瓦倫西亞: cinquanta-quatré
cinquanta-quatre
55 cinquanta-cinc 中部: cinquanta-cinquè
瓦倫西亞: cinquanta-cinqué
cinquanta-cinc
56 cinquanta-sis 中部: cinquanta-sisè
瓦倫西亞: cinquanta-sisé
cinquanta-sis
57 cinquanta-set 中部: cinquanta-setè
瓦倫西亞: cinquanta-seté
cinquanta-set
58 中部: cinquanta-vuit
瓦倫西亞: cinquanta-huit
中部: cinquanta-vuitè
瓦倫西亞: cinquanta-huité
cinquanta-vuit
59 cinquanta-nou 中部: cinquanta-novè
瓦倫西亞: cinquanta-nové
cinquanta-nou
60 seixanta 中部: seixantè
瓦倫西亞: seixanté
seixanta
61 seixanta-un 中部: seixanta-unè
瓦倫西亞: seixanta-uné
seixanta-un
62 seixanta-dos 中部: seixanta-dosè
瓦倫西亞: seixanta-dosé
seixanta-dos
63 seixanta-tres 中部: seixanta-tresè
瓦倫西亞: seixanta-tresé
seixanta-tres
64 seixanta-quatre 中部: seixanta-quatrè
瓦倫西亞: seixanta-quatré
seixanta-quatre
65 seixanta-cinc 中部: seixanta-cinquè
瓦倫西亞: seixanta-cinqué
seixanta-cinc
66 seixanta-sis 中部: seixanta-sisè
瓦倫西亞: seixanta-sisé
seixanta-sis
67 seixanta-set 中部: seixanta-setè
瓦倫西亞: seixanta-seté
seixanta-set
68 中部: seixanta-vuit
瓦倫西亞: seixanta-huit
中部: seixanta-vuitè
瓦倫西亞: seixanta-huité
seixanta-vuit
69 seixanta-nou 中部: seixanta-novè
瓦倫西亞: seixanta-nové
seixanta-nou
70 setanta 中部: setantè
瓦倫西亞: setanté
setanta
71 setanta-un 中部: setanta-unè
瓦倫西亞: setanta-uné
setanta-un
72 setanta-dos 中部: setanta-dosè
瓦倫西亞: setanta-dosé
setanta-dos
73 setanta-tres 中部: setanta-tresè
瓦倫西亞: setanta-tresé
setanta-tres
74 setanta-quatre 中部: setanta-quatrè
瓦倫西亞: setanta-quatré
setanta-quatre
75 setanta-cinc 中部: setanta-cinquè
瓦倫西亞: setanta-cinqué
setanta-cinc
76 setanta-sis 中部: setanta-sisè
瓦倫西亞: setanta-sisé
setanta-sis
77 setanta-set 中部: setanta-setè
瓦倫西亞: setanta-seté
setanta-set
78 中部: setanta-vuit
瓦倫西亞: setanta-huit
中部: setanta-vuitè
瓦倫西亞: setanta-huité
setanta-vuit
79 setanta-nou 中部: setanta-novè
瓦倫西亞: setanta-nové
setanta-nou
80 中部: vuitanta
瓦倫西亞: huitanta
中部: vuitantè
瓦倫西亞: huitanté
vuitanta
81 中部: vuitanta-un
瓦倫西亞: huitanta-un
中部: vuitanta-unè
瓦倫西亞: huitanta-uné
vuitanta-un
82 中部: vuitanta-dos
瓦倫西亞: huitanta-dos
中部: vuitanta-dosè
瓦倫西亞: huitanta-dosé
vuitanta-dos
83 中部: vuitanta-tres
瓦倫西亞: huitanta-tres
中部: vuitanta-tresè
瓦倫西亞: huitanta-tresé
vuitanta-tres
84 中部: vuitanta-quatre
瓦倫西亞: huitanta-quatre
中部: vuitanta-quatrè
瓦倫西亞: huitanta-quatré
vuitanta-quatre
85 中部: vuitanta-cinc
瓦倫西亞: huitanta-cinc
中部: vuitanta-cinquè
瓦倫西亞: huitanta-cinqué
vuitanta-cinc
86 中部: vuitanta-sis
瓦倫西亞: huitanta-sis
中部: vuitanta-sisè
瓦倫西亞: huitanta-sisé
vuitanta-sis
87 中部: vuitanta-set
瓦倫西亞: huitanta-set
中部: vuitanta-setè
瓦倫西亞: huitanta-seté
vuitanta-set
88 中部: vuitanta-vuit
瓦倫西亞: huitanta-huit
中部: vuitanta-vuitè
瓦倫西亞: huitanta-huité
vuitanta-vuit
89 中部: vuitanta-nou
瓦倫西亞: huitanta-nou
中部: vuitanta-novè
瓦倫西亞: huitanta-nové
vuitanta-nou
90 noranta 中部: norantè
瓦倫西亞: noranté
noranta
91 noranta-un 中部: noranta-unè
瓦倫西亞: noranta-uné
noranta-un
92 noranta-dos 中部: noranta-dosè
瓦倫西亞: noranta-dosé
noranta-dos
93 noranta-tres 中部: noranta-tresè
瓦倫西亞: noranta-tresé
noranta-tres
94 noranta-quatre 中部: noranta-quatrè
瓦倫西亞: noranta-quatré
noranta-quatre
95 noranta-cinc 中部: noranta-cinquè
瓦倫西亞: noranta-cinqué
noranta-cinc
96 noranta-sis 中部: noranta-sisè
瓦倫西亞: noranta-sisé
noranta-sis
97 noranta-set 中部: noranta-setè
瓦倫西亞: noranta-seté
noranta-set
98 中部: noranta-vuit
瓦倫西亞: noranta-huit
中部: noranta-vuitè
瓦倫西亞: noranta-huité
noranta-vuit
99 noranta-nou 中部: noranta-novè
瓦倫西亞: noranta-nové
noranta-nou
100 cent 中部: centè
(default): centèsim
瓦倫西亞: centé
cèntuple cent
144 cent quaranta-quatre 中部: cent quaranta-quatrè
瓦倫西亞: cent quaranta-quatré
200 dos-cents 中部: dos-centè
瓦倫西亞: dos-centé
dos-cents
300 tres-cents 中部: tres-centè
瓦倫西亞: tres-centé
tres-cents
400 quatre-cents 中部: quatre-centè
瓦倫西亞: quatre-centé
quatre-cents
500 cinc-cents 中部: cinc-centè
瓦倫西亞: cinc-centé
cinc-cents
600 sis-cents 中部: sis-centè
瓦倫西亞: sis-centé
sis-cents
700 set-cents 中部: set-centè
瓦倫西亞: set-centé
set-cents
800 中部: vuit-cents
瓦倫西亞: huit-cents
中部: vuit-centè
瓦倫西亞: huit-centé
vuit-cents
900 nou-cents 中部: nou-centè
瓦倫西亞: nou-centé
nou-cents
1,000 mil 中部: milè
(default): mil·lèsim
瓦倫西亞: milé
mil
1,000,000 (106) un milió milionèsim milió
1012 un bilió bilionèsim bilió
1018 un trilió trilionèsim trilió
1024 un quadrilió quadrilionèsim quadrilió
1030 un quintilió quintilionèsim quintilió

local export = {numbers = {}}

local numbers = export.numbers

numbers[0] = {
	cardinal = "zero",
	wplink = "zero",
}

numbers[1] = {
	cardinal = "un",
	ordinal = "primer",
	ordinal_abbr = "1r",
	wplink = "u (nombre)",
}

numbers[2] = {
	cardinal = "dos",
	ordinal = "segon",
	ordinal_abbr = "2n",
	multiplier = "doble",
	fractional = "mig",
	wplink = "dos",
}

numbers[3] = {
	cardinal = "tres",
	ordinal = "tercer",
	ordinal_abbr = "3r",
	multiplier = "triple",
	fractional = "terç",
	wplink = "tres",
}

numbers[4] = {
	cardinal = "quatre",
	ordinal = "quart",
	ordinal_abbr = "4t",
	multiplier = "quàdruple",
	wplink = "quatre",
}

numbers[5] = {
	cardinal = "cinc",
	ordinal = {"cinquè<tag:中部>", "cinqué<tag:瓦倫西亞>", "quint<tag:拉丁化>"},
	ordinal_abbr = {"5è<tag:中部>", "5é<tag:瓦倫西亞>", "5t<tag:拉丁化>"},
	multiplier = "quíntuple",
	wplink = "cinc",
}

numbers[6] = {
	cardinal = "sis",
	ordinal = {"sisè<tag:中部>", "sisé<tag:瓦倫西亞>", "sext<tag:拉丁化>"},
	ordinal_abbr = {"6è<tag:中部>", "6é<tag:瓦倫西亞>", "6t<tag:拉丁化>"},
	multiplier = "sèxtuple",
	wplink = "sis",
}

numbers[7] = {
	cardinal = "set",
	ordinal = {"setè<tag:中部>", "seté<tag:瓦倫西亞>", "sèptim<tag:拉丁化>"},
	ordinal_abbr = {"7è<tag:中部>", "7é<tag:瓦倫西亞>", "7m<tag:拉丁化>"},
	multiplier = "sèptuple",
	wplink = "nombre set",
}

numbers[8] = {
	cardinal = {"vuit<tag:中部>", "huit<tag:瓦倫西亞>"},
	ordinal = {"vuitè<tag:中部>", "huité<tag:瓦倫西亞>", "octau<tag:拉丁化>"},
	ordinal_abbr = {"8è<tag:中部>", "8é<tag:瓦倫西亞>", "8u<tag:拉丁化>"},
	multiplier = "òctuple",
	wplink = "vuit",
}

numbers[9] = {
	cardinal = "nou",
	ordinal = {"novè<tag:中部>", "nové<tag:瓦倫西亞>"},
	ordinal_abbr = {"9è<tag:中部>", "9é<tag:瓦倫西亞>"},
	multiplier = "nònuple",
	wplink = "nombre nou",
}

numbers[10] = {
	cardinal = "deu",
	ordinal = {"desè<tag:中部>", "desé<tag:瓦倫西亞>", "dècim<tag:拉丁化>"},
	ordinal_abbr = {"10è<tag:中部>", "10é<tag:瓦倫西亞>", "10m<tag:拉丁化>"},
	multiplier = "dècuple",
	wplink = "deu",
}

local function split_and_localize_num(num)
	local valnum = num:gsub("vuit", "huit"):gsub("è$", "é")
	if valnum == num then
		return num
	else
		return {num .. "<tag:中部>", valnum .. "<tag:瓦倫西亞>"}
	end
end

local function add_ordinal_suffix(cardinal)
		local num = cardinal:gsub(".$", { a = "", e = "", c = "qu", u = "v" }) .. "è"
		return split_and_localize_num(num)
end

for i, cardinal in ipairs {
	"onze", "dotze", "tretze", "catorze", "quinze", "setze",
} do
	local number = 10 + i
	numbers[number] = {
		cardinal = cardinal,
		ordinal = add_ordinal_suffix(cardinal),
		wplink = cardinal,
	}
end

numbers[17] = {
	cardinal = {"disset<tag:中部>", "dèsset<tag:瓦倫西亞>", "desset<tag:瓦倫西亞>"},
	ordinal = {"dissetè<tag:中部>", "desseté<tag:瓦倫西亞>"},
	wplink = "disset",
}

numbers[18] = {
	cardinal = {"divuit<tag:中部>", "díhuit<tag:瓦倫西亞>"},
	ordinal = {"divuitè<tag:中部>", "dihuité<tag:瓦倫西亞>"},
	wplink = "divuit",
}

numbers[19] = {
	cardinal = {"dinou<tag:中部>", "dènou<tag:瓦倫西亞>", "dèneu<tag:瓦倫西亞>"},
	ordinal = {"dinovè<tag:中部>", "denové<tag:瓦倫西亞>"},
	wplink = "dinou",
}

local function make_number_entry(cardinal)
	return {
		cardinal = split_and_localize_num(cardinal),
		ordinal = add_ordinal_suffix(cardinal),
		wplink = cardinal,
	}
end

for i, tens_cardinal in ipairs {
	"vint", "trenta", "quaranta", "cinquanta", "seixanta", "setanta", "vuitanta", "noranta",
} do
	local tens = (i + 1) * 10
	numbers[tens] = make_number_entry(tens_cardinal)
	for ones = 1, 9 do
		local ones_numeral = numbers[ones]
		-- 8 is already split into [[vuit]] (Central) and [[huit]] (Valencian).
		local ones_cardinal = ones == 8 and "vuit" or ones_numeral.cardinal
		local intervening
		if tens == 20 then
			intervening = "-i-"
		else
			intervening = "-"
		end
		numbers[tens + ones] = make_number_entry(tens_cardinal .. intervening .. ones_cardinal)
	end
end

numbers[100] = {
	cardinal = "cent",
	ordinal = {"centè<tag:中部>", "centèsim", "centé<tag:瓦倫西亞>"},
	multiplier = "cèntuple",
	wplink = "cent",
}

numbers[144] = {
	cardinal = "cent quaranta-quatre",
	ordinal = add_ordinal_suffix("cent quaranta-quatre"),
}

for hundreds = 2, 9 do
	local number = hundreds * 100
	-- 8 is already split into [[vuit]] (Central) and [[huit]] (Valencian).
	local hundreds_cardinal = hundreds == 8 and "vuit" or numbers[hundreds].cardinal
	local base_cardinal = hundreds_cardinal .. "-cent"
	local cardinal = base_cardinal .. "s"
	numbers[number] = {
		cardinal = split_and_localize_num(cardinal),
		ordinal = add_ordinal_suffix(base_cardinal),
		wplink = cardinal,
	}
end

numbers[1000] = {
	cardinal = "mil",
	ordinal = {"milè<tag:中部>", "mil·lèsim", "milé<tag:瓦倫西亞>"},
	wplink = "mil",
}

numbers[1000000] = {
	cardinal = "[[un]] [[milió]]<link:milió>",
	ordinal = "milionèsim",
	wplink = "milió",
}

local function power_of(n)
	return "1" .. string.rep("0", n)
end

numbers[power_of(12)] = {
	cardinal = "[[un]] [[bilió]]<link:bilió>",
	ordinal = "bilionèsim",
	wplink = "bilió",
}

numbers[power_of(18)] = {
	cardinal = "[[un]] [[trilió]]<link:trilió>",
	ordinal = "trilionèsim",
	wplink = "trilió",
}

numbers[power_of(24)] = {
	cardinal = "[[un]] [[quadrilió]]<link:quadrilió>",
	ordinal = "quadrilionèsim",
	wplink = "quadrilió",
}

numbers[power_of(30)] = {
	cardinal = "[[un]] [[quintilió]]<link:quintilió>",
	ordinal = "quintilionèsim",
	wplink = "quintilió",
}

return export