@jjlmoya/utils-finance 1.4.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -1
- package/src/category/i18n/de.ts +158 -0
- package/src/category/i18n/id.ts +158 -0
- package/src/category/i18n/it.ts +158 -0
- package/src/category/i18n/ja.ts +158 -0
- package/src/category/i18n/ko.ts +158 -0
- package/src/category/i18n/nl.ts +158 -0
- package/src/category/i18n/pl.ts +158 -0
- package/src/category/i18n/pt.ts +158 -0
- package/src/category/i18n/ru.ts +158 -0
- package/src/category/i18n/sv.ts +158 -0
- package/src/category/i18n/tr.ts +158 -0
- package/src/category/i18n/zh.ts +158 -0
- package/src/category/index.ts +13 -1
- package/src/tests/category_validation.test.ts +73 -0
- package/src/tests/faq_count.test.ts +1 -1
- package/src/tests/i18n_coverage.test.ts +36 -0
- package/src/tests/locale_completeness.test.ts +3 -0
- package/src/tests/slug_language_code_format.test.ts +23 -0
- package/src/tests/slug_uniqueness.test.ts +81 -0
- package/src/tests/title_quality.test.ts +1 -1
- package/src/tool/compoundInterest/i18n/de.ts +208 -0
- package/src/tool/compoundInterest/i18n/id.ts +208 -0
- package/src/tool/compoundInterest/i18n/it.ts +208 -0
- package/src/tool/compoundInterest/i18n/ja.ts +207 -0
- package/src/tool/compoundInterest/i18n/ko.ts +207 -0
- package/src/tool/compoundInterest/i18n/nl.ts +208 -0
- package/src/tool/compoundInterest/i18n/pl.ts +208 -0
- package/src/tool/compoundInterest/i18n/pt.ts +208 -0
- package/src/tool/compoundInterest/i18n/ru.ts +208 -0
- package/src/tool/compoundInterest/i18n/sv.ts +208 -0
- package/src/tool/compoundInterest/i18n/tr.ts +208 -0
- package/src/tool/compoundInterest/i18n/zh.ts +202 -0
- package/src/tool/compoundInterest/index.ts +15 -7
- package/src/tool/courtFeeCalculator/i18n/de.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/fr.ts +1 -1
- package/src/tool/courtFeeCalculator/i18n/id.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/it.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/ja.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/ko.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/nl.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/pl.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/pt.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/ru.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/sv.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/tr.ts +152 -0
- package/src/tool/courtFeeCalculator/i18n/zh.ts +152 -0
- package/src/tool/courtFeeCalculator/index.ts +16 -8
- package/src/tool/debtSnowball/i18n/de.ts +160 -0
- package/src/tool/debtSnowball/i18n/id.ts +160 -0
- package/src/tool/debtSnowball/i18n/it.ts +160 -0
- package/src/tool/debtSnowball/i18n/ja.ts +157 -0
- package/src/tool/debtSnowball/i18n/ko.ts +160 -0
- package/src/tool/debtSnowball/i18n/nl.ts +160 -0
- package/src/tool/debtSnowball/i18n/pl.ts +160 -0
- package/src/tool/debtSnowball/i18n/pt.ts +160 -0
- package/src/tool/debtSnowball/i18n/ru.ts +160 -0
- package/src/tool/debtSnowball/i18n/sv.ts +160 -0
- package/src/tool/debtSnowball/i18n/tr.ts +160 -0
- package/src/tool/debtSnowball/i18n/zh.ts +160 -0
- package/src/tool/debtSnowball/index.ts +17 -9
- package/src/tool/fireCalculator/i18n/de.ts +261 -0
- package/src/tool/fireCalculator/i18n/id.ts +261 -0
- package/src/tool/fireCalculator/i18n/it.ts +261 -0
- package/src/tool/fireCalculator/i18n/ja.ts +261 -0
- package/src/tool/fireCalculator/i18n/ko.ts +261 -0
- package/src/tool/fireCalculator/i18n/nl.ts +261 -0
- package/src/tool/fireCalculator/i18n/pl.ts +261 -0
- package/src/tool/fireCalculator/i18n/pt.ts +261 -0
- package/src/tool/fireCalculator/i18n/ru.ts +261 -0
- package/src/tool/fireCalculator/i18n/sv.ts +261 -0
- package/src/tool/fireCalculator/i18n/tr.ts +261 -0
- package/src/tool/fireCalculator/i18n/zh.ts +261 -0
- package/src/tool/fireCalculator/index.ts +15 -7
- package/src/tool/ibanBicSwiftConverter/i18n/de.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/id.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/it.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/ja.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/ko.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/nl.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/pl.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/pt.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/ru.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/sv.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/tr.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/i18n/zh.ts +128 -0
- package/src/tool/ibanBicSwiftConverter/index.ts +15 -7
- package/src/tool/inflation/i18n/de.ts +297 -0
- package/src/tool/inflation/i18n/id.ts +297 -0
- package/src/tool/inflation/i18n/it.ts +297 -0
- package/src/tool/inflation/i18n/ja.ts +297 -0
- package/src/tool/inflation/i18n/ko.ts +297 -0
- package/src/tool/inflation/i18n/nl.ts +297 -0
- package/src/tool/inflation/i18n/pl.ts +297 -0
- package/src/tool/inflation/i18n/pt.ts +297 -0
- package/src/tool/inflation/i18n/ru.ts +297 -0
- package/src/tool/inflation/i18n/sv.ts +297 -0
- package/src/tool/inflation/i18n/tr.ts +297 -0
- package/src/tool/inflation/i18n/zh.ts +297 -0
- package/src/tool/inflation/index.ts +17 -9
- package/src/tool/lateInterest/i18n/de.ts +224 -0
- package/src/tool/lateInterest/i18n/id.ts +224 -0
- package/src/tool/lateInterest/i18n/it.ts +224 -0
- package/src/tool/lateInterest/i18n/ja.ts +224 -0
- package/src/tool/lateInterest/i18n/ko.ts +224 -0
- package/src/tool/lateInterest/i18n/nl.ts +224 -0
- package/src/tool/lateInterest/i18n/pl.ts +224 -0
- package/src/tool/lateInterest/i18n/pt.ts +224 -0
- package/src/tool/lateInterest/i18n/ru.ts +224 -0
- package/src/tool/lateInterest/i18n/sv.ts +224 -0
- package/src/tool/lateInterest/i18n/tr.ts +224 -0
- package/src/tool/lateInterest/i18n/zh.ts +224 -0
- package/src/tool/lateInterest/index.ts +17 -9
- package/src/tool/legalInterestRate/i18n/de.ts +143 -0
- package/src/tool/legalInterestRate/i18n/id.ts +143 -0
- package/src/tool/legalInterestRate/i18n/it.ts +143 -0
- package/src/tool/legalInterestRate/i18n/ja.ts +143 -0
- package/src/tool/legalInterestRate/i18n/ko.ts +143 -0
- package/src/tool/legalInterestRate/i18n/nl.ts +143 -0
- package/src/tool/legalInterestRate/i18n/pl.ts +143 -0
- package/src/tool/legalInterestRate/i18n/pt.ts +143 -0
- package/src/tool/legalInterestRate/i18n/ru.ts +143 -0
- package/src/tool/legalInterestRate/i18n/sv.ts +143 -0
- package/src/tool/legalInterestRate/i18n/tr.ts +143 -0
- package/src/tool/legalInterestRate/i18n/zh.ts +143 -0
- package/src/tool/legalInterestRate/index.ts +17 -9
- package/src/tool/lotteryOptimizer/i18n/de.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/id.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/it.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/ja.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/ko.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/nl.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/pl.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/pt.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/ru.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/sv.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/tr.ts +177 -0
- package/src/tool/lotteryOptimizer/i18n/zh.ts +177 -0
- package/src/tool/lotteryOptimizer/index.ts +17 -9
- package/src/tool/mortgage/i18n/de.ts +223 -0
- package/src/tool/mortgage/i18n/id.ts +219 -0
- package/src/tool/mortgage/i18n/it.ts +223 -0
- package/src/tool/mortgage/i18n/ja.ts +219 -0
- package/src/tool/mortgage/i18n/ko.ts +219 -0
- package/src/tool/mortgage/i18n/nl.ts +219 -0
- package/src/tool/mortgage/i18n/pl.ts +219 -0
- package/src/tool/mortgage/i18n/pt.ts +219 -0
- package/src/tool/mortgage/i18n/ru.ts +219 -0
- package/src/tool/mortgage/i18n/sv.ts +219 -0
- package/src/tool/mortgage/i18n/tr.ts +219 -0
- package/src/tool/mortgage/i18n/zh.ts +219 -0
- package/src/tool/mortgage/index.ts +15 -7
- package/src/tool/percentageCalculator/i18n/de.ts +229 -0
- package/src/tool/percentageCalculator/i18n/id.ts +229 -0
- package/src/tool/percentageCalculator/i18n/it.ts +229 -0
- package/src/tool/percentageCalculator/i18n/ja.ts +229 -0
- package/src/tool/percentageCalculator/i18n/ko.ts +229 -0
- package/src/tool/percentageCalculator/i18n/nl.ts +229 -0
- package/src/tool/percentageCalculator/i18n/pl.ts +229 -0
- package/src/tool/percentageCalculator/i18n/pt.ts +229 -0
- package/src/tool/percentageCalculator/i18n/ru.ts +229 -0
- package/src/tool/percentageCalculator/i18n/sv.ts +229 -0
- package/src/tool/percentageCalculator/i18n/tr.ts +229 -0
- package/src/tool/percentageCalculator/i18n/zh.ts +229 -0
- package/src/tool/percentageCalculator/index.ts +15 -7
- package/src/tool/rentIncreaseCalculator/i18n/de.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/id.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/it.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/ja.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/ko.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/nl.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/pl.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/pt.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/ru.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/sv.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/tr.ts +136 -0
- package/src/tool/rentIncreaseCalculator/i18n/zh.ts +136 -0
- package/src/tool/rentIncreaseCalculator/index.ts +17 -9
- package/src/types.ts +1 -1
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { PercentageCalculatorUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'kalkulator-procentowy';
|
|
6
|
+
const title = 'Kalkulator Procentowy 4 w 1: Rabaty, Podwyżki i Obniżki';
|
|
7
|
+
const description =
|
|
8
|
+
'Łatwo obliczaj procenty online za darmo. 4 narzędzia w 1: obliczanie X% z Y, różnica procentowa, dodawanie lub odejmowanie VAT, rabaty i automatyczne napiwki.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Jak działa kalkulator?',
|
|
13
|
+
answer:
|
|
14
|
+
'Po prostu wpisz wartości w pola odpowiedniego przypadku użycia dla Twojego problemu, a nasz kalkulator przetworzy formułę bez konieczności naciskania jakiegokolwiek przycisku obliczania.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'Czy nadaje się do obliczania VAT lub podatków?',
|
|
18
|
+
answer:
|
|
19
|
+
'Tak, blok 4 („Dodaj lub odejmij procent”) jest zaprojektowany właśnie dla takich przypadków, jak naliczenie 23% VAT do ceny netto lub obliczenie potrącenia zaliczki na podatek dochodowy.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Czy obsługuje liczby dziesiętne i ujemne?',
|
|
23
|
+
answer:
|
|
24
|
+
'Oczywiście. Możesz wpisywać liczby dziesiętne (używając kropki), a kalkulator zadziała również z wartościami ujemnymi, jeśli potrzebujesz przeanalizować bilanse księgowe ze stratą.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Czy mogę kopiować wyniki?',
|
|
28
|
+
answer:
|
|
29
|
+
'Tak, każdy blok posiada przycisk w polu wyniku, który natychmiast kopiuje liczbę do schowka Twojego urządzenia, aby móc ją wkleić do innej aplikacji lub dokumentu.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Zidentyfikuj swój problem matematyczny',
|
|
36
|
+
text: 'Przeczytaj tytuły 4 bloków i wybierz ten, który odpowiada Twojemu zapytaniu (Np. Ile to jest 20% z 50? -> Blok 1).',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Wprowadź liczby',
|
|
40
|
+
text: 'Wypełnij pola „X” i „Y”. Nie martw się o kolejność, opisy w każdym bloku poprowadzą Cię wizualnie.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Skopiuj natychmiastowy wynik',
|
|
44
|
+
text: 'Wynik pojawi się w czasie rzeczywistym na dole w trakcie wpisywania. Kliknij ikonę kopiowania, jeśli chcesz go przenieść gdzie indziej.',
|
|
45
|
+
},
|
|
46
|
+
];
|
|
47
|
+
|
|
48
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
49
|
+
'@context': 'https://schema.org',
|
|
50
|
+
'@type': 'FAQPage',
|
|
51
|
+
mainEntity: faqData.map((item) => ({
|
|
52
|
+
'@type': 'Question',
|
|
53
|
+
name: item.question,
|
|
54
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
55
|
+
})),
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
const howToSchema: WithContext<HowTo> = {
|
|
59
|
+
'@context': 'https://schema.org',
|
|
60
|
+
'@type': 'HowTo',
|
|
61
|
+
name: title,
|
|
62
|
+
description,
|
|
63
|
+
step: howToData.map((step, i) => ({
|
|
64
|
+
'@type': 'HowToStep',
|
|
65
|
+
position: i + 1,
|
|
66
|
+
name: step.name,
|
|
67
|
+
text: step.text,
|
|
68
|
+
})),
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
72
|
+
'@context': 'https://schema.org',
|
|
73
|
+
'@type': 'SoftwareApplication',
|
|
74
|
+
name: title,
|
|
75
|
+
description,
|
|
76
|
+
applicationCategory: 'FinanceApplication',
|
|
77
|
+
operatingSystem: 'All',
|
|
78
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'PLN' },
|
|
79
|
+
inLanguage: 'pl',
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
export const content: ToolLocaleContent<PercentageCalculatorUI> = {
|
|
83
|
+
slug,
|
|
84
|
+
title,
|
|
85
|
+
description,
|
|
86
|
+
faqTitle: 'Często Zadawane Pytania',
|
|
87
|
+
faq: faqData,
|
|
88
|
+
bibliographyTitle: 'Źródła i Referencje',
|
|
89
|
+
bibliography: [
|
|
90
|
+
{
|
|
91
|
+
name: 'Obliczanie Procentów - Wikipedia',
|
|
92
|
+
url: 'https://pl.wikipedia.org/wiki/Procent',
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
name: 'Podstawowe Pojęcia Matematyczne - Khan Academy',
|
|
96
|
+
url: 'https://pl.khanacademy.org/math/pre-algebra/pre-algebra-ratios-rates/pre-algebra-percents/v/describing-the-meaning-of-percent',
|
|
97
|
+
},
|
|
98
|
+
],
|
|
99
|
+
howTo: howToData,
|
|
100
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
101
|
+
seo: [
|
|
102
|
+
{
|
|
103
|
+
type: 'title',
|
|
104
|
+
text: 'Kalkulator Procentowy 4 w 1: Opanuj Szybkie Obliczenia',
|
|
105
|
+
level: 2,
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
type: 'title',
|
|
109
|
+
text: 'Do czego służy wielofunkcyjny kalkulator procentowy?',
|
|
110
|
+
level: 3,
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
type: 'paragraph',
|
|
114
|
+
html: 'Obliczanie procentów to jedna z najczęstszych operacji matematycznych w naszym codziennym życiu. Od obliczania rabatu na wyprzedaży, przez ustalanie odpowiedniego napiwku w restauracji, aż po określanie marży zysku w biznesie czy odsetek od kredytu. Mimo że są to codzienne czynności, nie zawsze łatwo jest wykonać je w pamięci lub zapamiętać dokładny wzór.',
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
type: 'paragraph',
|
|
118
|
+
html: 'Nasz kalkulator procentowy 4 w 1 grupuje najczęściej poszukiwane scenariusze. Nie musisz już szukać w Google „jak obliczyć 20 procent” czy „wzór na obliczanie procentu”. Masz cztery kluczowe operacje w jednym miejscu, w interaktywnej formie i z natychmiastowymi wynikami.',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
type: 'title',
|
|
122
|
+
text: 'Przegląd 4 najczęstszych przypadków użycia',
|
|
123
|
+
level: 3,
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
type: 'paragraph',
|
|
127
|
+
html: 'Aby ułatwić Ci życie, podzieliliśmy narzędzie na cztery wyraźne bloki wizualne, które rozwiązują realne problemy, z jakimi borykamy się na co dzień:',
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
type: 'card',
|
|
131
|
+
icon: 'mdi:percent',
|
|
132
|
+
title: '1. Ile to jest X% z Y?',
|
|
133
|
+
html: '<p><strong>Klasyczny przypadek.</strong> Przydatny do obliczania rabatów lub napiwków. Jeśli chcesz wiedzieć, ile to jest 15% z 120 zł, to narzędzie jest dla Ciebie. Formuła po prostu dzieli procent przez 100 i mnoży go przez całkowitą wartość.</p>',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'card',
|
|
137
|
+
icon: 'mdi:division',
|
|
138
|
+
title: '2. Jakim procentem X jest Y?',
|
|
139
|
+
html: '<p><strong>Idealny do proporcji.</strong> Jeśli zdobyłeś 45 punktów na 60 w egzaminie, jaką ocenę masz w skali 100? Ta funkcja dzieli część przez całość i mnoży przez sto, dając Ci dokładną wagę względną.</p>',
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
type: 'card',
|
|
143
|
+
icon: 'mdi:chart-line-variant',
|
|
144
|
+
title: '3. Wzrost lub Spadek Procentowy',
|
|
145
|
+
html: '<p><strong>Idealny dla finansów i analityki.</strong> O ile wzrósł czynsz w porównaniu z zeszłym rokiem? Jeśli wcześniej płaciłeś 800 zł, a teraz 840 zł, ta funkcja powie Ci, że nastąpił wzrost o 5%. Mierzy wzrost lub spadek między dwiema liczbami.</p>',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'card',
|
|
149
|
+
icon: 'mdi:calculator',
|
|
150
|
+
title: '4. Dodaj lub odejmij procent od wartości',
|
|
151
|
+
html: '<p><strong>Super przydatny przy VAT.</strong> Jeśli masz cenę netto (np. 100 zł) i musisz dodać 23% VAT, ten kalkulator poda Ci bezpośrednio kwotę brutto 123 zł bez konieczności wykonywania operacji pośrednich. Analogicznie służy do naliczania bezpośredniego rabatu (np. odjęcie 20%).</p>',
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
type: 'title',
|
|
155
|
+
text: 'Powszechne mity na temat obliczania procentów',
|
|
156
|
+
level: 3,
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
type: 'paragraph',
|
|
160
|
+
html: 'Często blokujemy się widząc duże procenty lub ułamki dziesiętne, ale istnieje kilka matematycznych „sztuczek”, które mogą ułatwić życie. Najsłynniejszą z nich jest <strong>odwracalność procentów</strong>.',
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
type: 'tip',
|
|
164
|
+
title: 'Sztuczka z odwracalnością',
|
|
165
|
+
html: '<p>Czy wiedziałeś, że X% z Y to dokładnie to samo, co Y% z X? Na przykład, jeśli ktoś poprosi Cię o obliczenie 18% z 50 w pamięci, może to brzmieć skomplikowanie. Ale jeśli to odwrócisz, to 50% z 18 jest bardzo proste: to 9! Dotyczy to absolutnie każdej liczby i jest niesamowitym ułatwieniem w codziennym życiu.</p>',
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
type: 'title',
|
|
169
|
+
text: 'Dlaczego mylimy się przy obliczaniu wzrostów',
|
|
170
|
+
level: 3,
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
type: 'paragraph',
|
|
174
|
+
html: 'Jeden z najczęstszych błędów zdarza się w przypadku 3: wzrost lub spadek procentowy. Wyobraźmy sobie, że akcja na giełdzie kosztuje 100 zł, spada o 50%, a następnego dnia rośnie o 50%. Intuicja mówi nam, że wraca do wartości 100 zł, ale to błędne przekonanie.',
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
type: 'paragraph',
|
|
178
|
+
html: 'Jeśli spadnie o 50% ze 100 zł, jej nowa wartość to 50 zł. Jeśli z poziomu tych 50 zł wzrośnie o 50%, wzrost wynosi połowę z 50 (25 zł). Zatem cena końcowa wyniesie 75 zł. To klasyczny przykład na to, dlaczego wzrosty i spadki procentowe nie są asymetryczne i dlaczego dynamiczne kalkulatory, takie jak ten, zapobiegają poważnym błędom finansowym.',
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
type: 'title',
|
|
182
|
+
text: 'Zastosowanie profesjonalne i akademickie',
|
|
183
|
+
level: 3,
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
type: 'paragraph',
|
|
187
|
+
html: 'Nasz interfejs jest wolny od rozpraszaczy i zaprojektowany do <strong>szybkiej pracy</strong>. Możesz mieć go w przypiętej karcie przeglądarki, sprawnie przełączać się między polami i, dzięki przyciskowi kopiowania obok wyniku, przenosić dokładne dane do Excela lub Google Sheets bez ryzyka błędów przy wpisywaniu.',
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
type: 'list',
|
|
191
|
+
items: [
|
|
192
|
+
'E-commerce i sklepy stacjonarne: szybkie obliczanie ceny sprzedaży poprzez stosowanie marż handlowych i doliczanie VAT.',
|
|
193
|
+
'Zarządzanie zasobami ludzkimi: ustalanie luki płacowej, potrąceń podatkowych i podwyżek wynagrodzeń w odniesieniu do wskaźnika inflacji.',
|
|
194
|
+
'Edukacja akademicka: wykładowcy wyrównujący oceny lub studenci kierunków ścisłych analizujący odchylenia w swoich eksperymentach.',
|
|
195
|
+
'Marketing cyfrowy: pomiar CTR (Click Through Rate), ROAS (Return on Ad Spend) lub współczynnika konwersji w eCommerce.',
|
|
196
|
+
],
|
|
197
|
+
},
|
|
198
|
+
],
|
|
199
|
+
ui: {
|
|
200
|
+
labelTitle: 'Kalkulator Procentowy',
|
|
201
|
+
labelCase1Title: 'Przypadek 1',
|
|
202
|
+
labelCase1Question: 'Ile to jest X% z Y?',
|
|
203
|
+
labelCase1Placeholder1: 'X',
|
|
204
|
+
labelCase1Placeholder2: 'Y',
|
|
205
|
+
labelCase1Formula: 'Wzór: (X / 100) × Y',
|
|
206
|
+
labelCase2Title: 'Przypadek 2',
|
|
207
|
+
labelCase2Question: 'Jakim procentem X jest Y?',
|
|
208
|
+
labelCase2Placeholder1: 'X',
|
|
209
|
+
labelCase2Placeholder2: 'Y',
|
|
210
|
+
labelCase2Formula: 'Wzór: (X / Y) × 100',
|
|
211
|
+
labelCase3Title: 'Przypadek 3',
|
|
212
|
+
labelCase3Question: 'Różnica procentowa między dwiema wartościami',
|
|
213
|
+
labelCase3Placeholder1: 'Wartość 1',
|
|
214
|
+
labelCase3Placeholder2: 'Wartość 2',
|
|
215
|
+
labelCase3Formula: 'Wzór: ((Wartość 2 - Wartość 1) / |Wartość 1|) × 100',
|
|
216
|
+
labelCase4Title: 'Przypadek 4',
|
|
217
|
+
labelCase4Question: 'Dodaj lub odejmij procent od wartości',
|
|
218
|
+
labelCase4Placeholder1: 'Wartość',
|
|
219
|
+
labelCase4Placeholder2: '%',
|
|
220
|
+
labelCase4Formula: 'Wzór: Wartość ± (Wartość × (% / 100))',
|
|
221
|
+
labelCase4AddLabel: 'Suma (Wartość + %)',
|
|
222
|
+
labelCase4SubtractLabel: 'Różnica (Wartość - %)',
|
|
223
|
+
labelResult: 'Wynik',
|
|
224
|
+
labelDifference: 'Różnica',
|
|
225
|
+
labelCopyTooltip: 'Kopiuj wynik',
|
|
226
|
+
labelFormula: 'Wzór',
|
|
227
|
+
percentSymbol: '%',
|
|
228
|
+
},
|
|
229
|
+
};
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { PercentageCalculatorUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'calculadora-de-porcentagem';
|
|
6
|
+
const title = 'Calculadora de Percentagem 4 em 1: Descontos, Aumentos e Reduções';
|
|
7
|
+
const description =
|
|
8
|
+
'Calcule facilmente percentagens online grátis. 4 ferramentas em 1 para tirar o X% de Y, diferença percentual, somar ou subtrair IVA, saldos e gorjetas automáticas.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Como funciona a calculadora?',
|
|
13
|
+
answer:
|
|
14
|
+
'Basta escrever os valores nas caixas do caso de utilização correspondente ao seu problema e a nossa calculadora processa a fórmula sem necessidade de carregar em nenhum botão de calcular.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'É válida para calcular o IVA ou impostos?',
|
|
18
|
+
answer:
|
|
19
|
+
'Sim, o bloco 4 ("Somar ou subtrair percentagem") está desenhado precisamente para casos como aplicar um IVA de 23% a um preço base ou calcular uma retenção de IRS.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Lida com números decimais e negativos?',
|
|
23
|
+
answer:
|
|
24
|
+
'Com certeza. Pode introduzir números decimais (utilizando ponto) e também funcionará com valores negativos se precisar de analisar balanços contabilísticos em prejuízo.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Posso copiar os resultados?',
|
|
28
|
+
answer:
|
|
29
|
+
'Sim, cada bloco conta com um botão no quadro do resultado que copia instantaneamente a cifra para a área de transferência do seu dispositivo para poder colá-la noutra app ou documento.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Identifique o seu problema matemático',
|
|
36
|
+
text: 'Leia os títulos dos 4 blocos e escolha o que coincide com o que quer saber (Ex. Quanto é 20% de 50? -> Bloco 1).',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Introduza os valores',
|
|
40
|
+
text: 'Preencha os campos "X" e "Y". Não se preocupe com a ordem, a frase de cada bloco guia-o visualmente.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Copie o resultado instantâneo',
|
|
44
|
+
text: 'O valor aparecerá em tempo real em baixo à medida que escreve. Prima o ícone de copiar se desejar levá-lo para outra parte.',
|
|
45
|
+
},
|
|
46
|
+
];
|
|
47
|
+
|
|
48
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
49
|
+
'@context': 'https://schema.org',
|
|
50
|
+
'@type': 'FAQPage',
|
|
51
|
+
mainEntity: faqData.map((item) => ({
|
|
52
|
+
'@type': 'Question',
|
|
53
|
+
name: item.question,
|
|
54
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
55
|
+
})),
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
const howToSchema: WithContext<HowTo> = {
|
|
59
|
+
'@context': 'https://schema.org',
|
|
60
|
+
'@type': 'HowTo',
|
|
61
|
+
name: title,
|
|
62
|
+
description,
|
|
63
|
+
step: howToData.map((step, i) => ({
|
|
64
|
+
'@type': 'HowToStep',
|
|
65
|
+
position: i + 1,
|
|
66
|
+
name: step.name,
|
|
67
|
+
text: step.text,
|
|
68
|
+
})),
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
72
|
+
'@context': 'https://schema.org',
|
|
73
|
+
'@type': 'SoftwareApplication',
|
|
74
|
+
name: title,
|
|
75
|
+
description,
|
|
76
|
+
applicationCategory: 'FinanceApplication',
|
|
77
|
+
operatingSystem: 'All',
|
|
78
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
79
|
+
inLanguage: 'pt',
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
export const content: ToolLocaleContent<PercentageCalculatorUI> = {
|
|
83
|
+
slug,
|
|
84
|
+
title,
|
|
85
|
+
description,
|
|
86
|
+
faqTitle: 'Perguntas Frequentes',
|
|
87
|
+
faq: faqData,
|
|
88
|
+
bibliographyTitle: 'Fontes e Referências',
|
|
89
|
+
bibliography: [
|
|
90
|
+
{
|
|
91
|
+
name: 'Cálculo de Percentagens - Wikipedia',
|
|
92
|
+
url: 'https://pt.wikipedia.org/wiki/Percentagem',
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
name: 'Conceitos Matemáticos Básicos - Khan Academy',
|
|
96
|
+
url: 'https://pt.khanacademy.org/math/pre-algebra/pre-algebra-ratios-rates/pre-algebra-percents/v/describing-the-meaning-of-percent',
|
|
97
|
+
},
|
|
98
|
+
],
|
|
99
|
+
howTo: howToData,
|
|
100
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
101
|
+
seo: [
|
|
102
|
+
{
|
|
103
|
+
type: 'title',
|
|
104
|
+
text: 'Calculadora de Percentagem 4 em 1: Domine os Cálculos Rápidos',
|
|
105
|
+
level: 2,
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
type: 'title',
|
|
109
|
+
text: 'Para que serve uma calculadora de percentagens múltipla?',
|
|
110
|
+
level: 3,
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
type: 'paragraph',
|
|
114
|
+
html: 'Calcular percentagens é uma das operações matemáticas mais comuns no nosso dia a dia. Desde calcular o desconto nuns saldos, conhecer a gorjeta adequada num restaurante, até determinar a margem de lucro num negócio ou o juro de um empréstimo. Apesar de serem operações quotidianas, nem sempre é fácil realizá-las mentalmente ou recordar a fórmula exata.',
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
type: 'paragraph',
|
|
118
|
+
html: 'A nossa calculadora de percentagens 4 em 1 agrupa os cenários mais procurados. Já não precisa de pesquisar no Google "como tirar 20 por cento" ou "fórmula para cálculo de percentagem". Tem as quatro operações essenciais num único lugar, de forma interativa e com resultados instantâneos.',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
type: 'title',
|
|
122
|
+
text: 'Revendo os 4 casos de utilização mais habituais',
|
|
123
|
+
level: 3,
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
type: 'paragraph',
|
|
127
|
+
html: 'Para lhe facilitar a vida, separámos a ferramenta em quatro blocos visuais claros que resolvem os problemas reais com que nos deparamos diariamente:',
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
type: 'card',
|
|
131
|
+
icon: 'mdi:percent',
|
|
132
|
+
title: '1. Quanto é X% de Y?',
|
|
133
|
+
html: '<p><strong>O caso clássico.</strong> Útil para calcular descontos ou gorjetas. Se quer saber quanto é 15% de 120€, esta é a sua ferramenta. A fórmula subjacente simplesmente divide a percentagem por 100 e multiplica-a pelo valor total.</p>',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'card',
|
|
137
|
+
icon: 'mdi:division',
|
|
138
|
+
title: '2. Que percentagem é X de Y?',
|
|
139
|
+
html: '<p><strong>Ideal para proporções.</strong> Se tirou 45 pontos num exame de 60, que nota tem sobre 100? Esta função divide a parte pelo total e multiplica-a por cem, dando-lhe o peso relativo exato.</p>',
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
type: 'card',
|
|
143
|
+
icon: 'mdi:chart-line-variant',
|
|
144
|
+
title: '3. Aumento ou Diminuição Percentual',
|
|
145
|
+
html: '<p><strong>Perfeito para finanças e analítica.</strong> Quanto subiu a renda desde o ano passado? Se antes pagava 800€ e agora 840€, esta função dir-lhe-á que sofreu um aumento de 5%. Mede o crescimento ou decréscimo entre dois valores.</p>',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'card',
|
|
149
|
+
icon: 'mdi:calculator',
|
|
150
|
+
title: '4. Somar ou Subtrair percentagem a um valor',
|
|
151
|
+
html: '<p><strong>Super útil para o IVA.</strong> Se tem um preço base (ex. 100€) e precisa de lhe adicionar 23% de IVA, esta calculadora dar-lhe-á diretamente os 123€ finais sem ter de fazer operações intermédias. Da mesma forma, serve para aplicar um desconto direto (ex. subtrair 20%).</p>',
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
type: 'title',
|
|
155
|
+
text: 'Mitos comuns sobre o cálculo de percentagens',
|
|
156
|
+
level: 3,
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
type: 'paragraph',
|
|
160
|
+
html: 'Muitas vezes bloqueamos ao ver percentagens grandes ou decimais, mas há alguns "truques" matemáticos que podem facilitar-lhe a vida. O mais famoso é a <strong>reversibilidade das percentagens</strong>.',
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
type: 'tip',
|
|
164
|
+
title: 'O truque da reversibilidade',
|
|
165
|
+
html: '<p>Sabia que X% de Y é exatamente igual a Y% de X? Por exemplo, se lhe pedirem para calcular 18% de 50 mentalmente, pode parecer complicado. Mas se o inverter, 50% de 18 é muito fácil: é 9! Isto aplica-se a absolutamente qualquer número e é um salva-vidas incrível no dia a dia.</p>',
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
type: 'title',
|
|
169
|
+
text: 'Porque falhamos ao calcular crescimentos',
|
|
170
|
+
level: 3,
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
type: 'paragraph',
|
|
174
|
+
html: 'Um dos erros mais comuns ocorre no caso 3: o aumento ou diminuição percentual. Imaginemos que uma ação na bolsa custa 100€, desce 50% e no dia seguinte sobe 50%. A intuição diz-nos que volta a valer 100€, mas é incorreto.',
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
type: 'paragraph',
|
|
178
|
+
html: 'Se descer 50% de 100€, o seu novo valor é 50€. Se a partir desses 50€ subir 50%, o incremento é metade de 50 (25€). Portanto, o preço final seria 75€. Este é um exemplo clássico de porque é que as subidas e descidas percentuais não são assimétricas e porque calculadoras dinâmicas como esta previnem erros financeiros graves.',
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
type: 'title',
|
|
182
|
+
text: 'Uso profissional e académico',
|
|
183
|
+
level: 3,
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
type: 'paragraph',
|
|
187
|
+
html: 'A nossa interface está livre de distrações e desenhada para <strong>trabalhar rápido</strong>. Pode tê-la num separador fixo do navegador, tabular agilmente entre os campos e, graças ao botão de copiar junto ao resultado, trasladar o dado exato para o seu Excel ou Google Sheets sem risco de erros de digitação.',
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
type: 'list',
|
|
191
|
+
items: [
|
|
192
|
+
'Comércio web e lojas físicas: Cálculo rápido de PVP aplicando margens comerciais e somando o IVA.',
|
|
193
|
+
'Gestão de recursos humanos: Determinação da disparidade salarial, retenções de IRS e aumentos de ordenado referenciados ao IPC.',
|
|
194
|
+
'Educação universitária: Professores que nivelam classificações ou estudantes de áreas científicas a analisar o desvio das suas experiências.',
|
|
195
|
+
'Marketing digital: Medição do CTR (Click Through Rate), ROAS (Return on Ad Spend) ou Taxa de Conversão em eCommerce.',
|
|
196
|
+
],
|
|
197
|
+
},
|
|
198
|
+
],
|
|
199
|
+
ui: {
|
|
200
|
+
labelTitle: 'Calculadora de Percentagem',
|
|
201
|
+
labelCase1Title: 'Caso 1',
|
|
202
|
+
labelCase1Question: 'Quanto é X% de Y?',
|
|
203
|
+
labelCase1Placeholder1: 'X',
|
|
204
|
+
labelCase1Placeholder2: 'Y',
|
|
205
|
+
labelCase1Formula: 'Fórmula: (X / 100) × Y',
|
|
206
|
+
labelCase2Title: 'Caso 2',
|
|
207
|
+
labelCase2Question: 'Que percentagem é X de Y?',
|
|
208
|
+
labelCase2Placeholder1: 'X',
|
|
209
|
+
labelCase2Placeholder2: 'Y',
|
|
210
|
+
labelCase2Formula: 'Fórmula: (X / Y) × 100',
|
|
211
|
+
labelCase3Title: 'Caso 3',
|
|
212
|
+
labelCase3Question: 'Diferença percentual entre dois valores',
|
|
213
|
+
labelCase3Placeholder1: 'Valor 1',
|
|
214
|
+
labelCase3Placeholder2: 'Valor 2',
|
|
215
|
+
labelCase3Formula: 'Fórmula: ((Valor 2 - Valor 1) / |Valor 1|) × 100',
|
|
216
|
+
labelCase4Title: 'Caso 4',
|
|
217
|
+
labelCase4Question: 'Somar ou subtrair percentagem a um valor',
|
|
218
|
+
labelCase4Placeholder1: 'Valor',
|
|
219
|
+
labelCase4Placeholder2: '%',
|
|
220
|
+
labelCase4Formula: 'Fórmula: Valor ± (Valor × (% / 100))',
|
|
221
|
+
labelCase4AddLabel: 'Soma (Valor + %)',
|
|
222
|
+
labelCase4SubtractLabel: 'Subtração (Valor - %)',
|
|
223
|
+
labelResult: 'Resultado',
|
|
224
|
+
labelDifference: 'Diferença',
|
|
225
|
+
labelCopyTooltip: 'Copiar resultado',
|
|
226
|
+
labelFormula: 'Fórmula',
|
|
227
|
+
percentSymbol: '%',
|
|
228
|
+
},
|
|
229
|
+
};
|