@jjlmoya/utils-tools 1.2.0 → 1.4.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 +172 -0
- package/src/category/i18n/id.ts +172 -0
- package/src/category/i18n/it.ts +172 -0
- package/src/category/i18n/ja.ts +172 -0
- package/src/category/i18n/ko.ts +172 -0
- package/src/category/i18n/nl.ts +172 -0
- package/src/category/i18n/pl.ts +172 -0
- package/src/category/i18n/pt.ts +172 -0
- package/src/category/i18n/ru.ts +172 -0
- package/src/category/i18n/sv.ts +172 -0
- package/src/category/i18n/tr.ts +172 -0
- package/src/category/i18n/zh.ts +172 -0
- package/src/category/index.ts +13 -1
- package/src/tests/i18n_coverage.test.ts +36 -0
- package/src/tests/locale_completeness.test.ts +1 -1
- 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 +0 -1
- package/src/tool/date-diff-calculator/i18n/de.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/fr.ts +1 -1
- package/src/tool/date-diff-calculator/i18n/id.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/it.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/ja.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/ko.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/nl.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/pl.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/pt.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/ru.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/sv.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/tr.ts +132 -0
- package/src/tool/date-diff-calculator/i18n/zh.ts +132 -0
- package/src/tool/date-diff-calculator/index.ts +12 -0
- package/src/tool/drive-direct-link/i18n/de.ts +118 -0
- package/src/tool/drive-direct-link/i18n/id.ts +118 -0
- package/src/tool/drive-direct-link/i18n/it.ts +118 -0
- package/src/tool/drive-direct-link/i18n/ja.ts +118 -0
- package/src/tool/drive-direct-link/i18n/ko.ts +118 -0
- package/src/tool/drive-direct-link/i18n/nl.ts +118 -0
- package/src/tool/drive-direct-link/i18n/pl.ts +118 -0
- package/src/tool/drive-direct-link/i18n/pt.ts +118 -0
- package/src/tool/drive-direct-link/i18n/ru.ts +118 -0
- package/src/tool/drive-direct-link/i18n/sv.ts +118 -0
- package/src/tool/drive-direct-link/i18n/tr.ts +118 -0
- package/src/tool/drive-direct-link/i18n/zh.ts +118 -0
- package/src/tool/drive-direct-link/index.ts +12 -0
- package/src/tool/email-list-cleaner/i18n/de.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/fr.ts +1 -1
- package/src/tool/email-list-cleaner/i18n/id.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/it.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/ja.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/ko.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/nl.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/pl.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/pt.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/ru.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/sv.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/tr.ts +140 -0
- package/src/tool/email-list-cleaner/i18n/zh.ts +140 -0
- package/src/tool/email-list-cleaner/index.ts +12 -0
- package/src/tool/env-badge-spain/i18n/de.ts +153 -0
- package/src/tool/env-badge-spain/i18n/es.ts +1 -1
- package/src/tool/env-badge-spain/i18n/fr.ts +1 -1
- package/src/tool/env-badge-spain/i18n/id.ts +153 -0
- package/src/tool/env-badge-spain/i18n/it.ts +153 -0
- package/src/tool/env-badge-spain/i18n/ja.ts +153 -0
- package/src/tool/env-badge-spain/i18n/ko.ts +153 -0
- package/src/tool/env-badge-spain/i18n/nl.ts +153 -0
- package/src/tool/env-badge-spain/i18n/pl.ts +153 -0
- package/src/tool/env-badge-spain/i18n/pt.ts +153 -0
- package/src/tool/env-badge-spain/i18n/ru.ts +153 -0
- package/src/tool/env-badge-spain/i18n/sv.ts +153 -0
- package/src/tool/env-badge-spain/i18n/tr.ts +153 -0
- package/src/tool/env-badge-spain/i18n/zh.ts +153 -0
- package/src/tool/env-badge-spain/index.ts +12 -0
- package/src/tool/morse-beacon/i18n/de.ts +157 -0
- package/src/tool/morse-beacon/i18n/id.ts +157 -0
- package/src/tool/morse-beacon/i18n/it.ts +157 -0
- package/src/tool/morse-beacon/i18n/ja.ts +157 -0
- package/src/tool/morse-beacon/i18n/ko.ts +157 -0
- package/src/tool/morse-beacon/i18n/nl.ts +157 -0
- package/src/tool/morse-beacon/i18n/pl.ts +157 -0
- package/src/tool/morse-beacon/i18n/pt.ts +157 -0
- package/src/tool/morse-beacon/i18n/ru.ts +157 -0
- package/src/tool/morse-beacon/i18n/sv.ts +157 -0
- package/src/tool/morse-beacon/i18n/tr.ts +157 -0
- package/src/tool/morse-beacon/i18n/zh.ts +157 -0
- package/src/tool/morse-beacon/index.ts +13 -1
- package/src/tool/password-generator/i18n/de.ts +166 -0
- package/src/tool/password-generator/i18n/fr.ts +1 -1
- package/src/tool/password-generator/i18n/id.ts +166 -0
- package/src/tool/password-generator/i18n/it.ts +166 -0
- package/src/tool/password-generator/i18n/ja.ts +166 -0
- package/src/tool/password-generator/i18n/ko.ts +166 -0
- package/src/tool/password-generator/i18n/nl.ts +166 -0
- package/src/tool/password-generator/i18n/pl.ts +166 -0
- package/src/tool/password-generator/i18n/pt.ts +166 -0
- package/src/tool/password-generator/i18n/ru.ts +166 -0
- package/src/tool/password-generator/i18n/sv.ts +166 -0
- package/src/tool/password-generator/i18n/tr.ts +166 -0
- package/src/tool/password-generator/i18n/zh.ts +166 -0
- package/src/tool/password-generator/index.ts +13 -1
- package/src/tool/routes/i18n/de.ts +157 -0
- package/src/tool/routes/i18n/id.ts +157 -0
- package/src/tool/routes/i18n/it.ts +157 -0
- package/src/tool/routes/i18n/ja.ts +157 -0
- package/src/tool/routes/i18n/ko.ts +157 -0
- package/src/tool/routes/i18n/nl.ts +157 -0
- package/src/tool/routes/i18n/pl.ts +157 -0
- package/src/tool/routes/i18n/pt.ts +157 -0
- package/src/tool/routes/i18n/ru.ts +157 -0
- package/src/tool/routes/i18n/sv.ts +157 -0
- package/src/tool/routes/i18n/tr.ts +157 -0
- package/src/tool/routes/i18n/zh.ts +157 -0
- package/src/tool/routes/index.ts +13 -1
- package/src/tool/rule-of-three/i18n/de.ts +171 -0
- package/src/tool/rule-of-three/i18n/id.ts +171 -0
- package/src/tool/rule-of-three/i18n/it.ts +171 -0
- package/src/tool/rule-of-three/i18n/ja.ts +171 -0
- package/src/tool/rule-of-three/i18n/ko.ts +171 -0
- package/src/tool/rule-of-three/i18n/nl.ts +171 -0
- package/src/tool/rule-of-three/i18n/pl.ts +171 -0
- package/src/tool/rule-of-three/i18n/pt.ts +171 -0
- package/src/tool/rule-of-three/i18n/ru.ts +171 -0
- package/src/tool/rule-of-three/i18n/sv.ts +171 -0
- package/src/tool/rule-of-three/i18n/tr.ts +171 -0
- package/src/tool/rule-of-three/i18n/zh.ts +171 -0
- package/src/tool/rule-of-three/index.ts +13 -1
- package/src/tool/seo-content-optimizer/i18n/de.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/id.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/it.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/ja.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/ko.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/nl.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/pl.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/pt.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/ru.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/sv.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/tr.ts +136 -0
- package/src/tool/seo-content-optimizer/i18n/zh.ts +136 -0
- package/src/tool/seo-content-optimizer/index.ts +12 -0
- package/src/tool/speed-reader/i18n/de.ts +152 -0
- package/src/tool/speed-reader/i18n/id.ts +152 -0
- package/src/tool/speed-reader/i18n/it.ts +152 -0
- package/src/tool/speed-reader/i18n/ja.ts +152 -0
- package/src/tool/speed-reader/i18n/ko.ts +152 -0
- package/src/tool/speed-reader/i18n/nl.ts +152 -0
- package/src/tool/speed-reader/i18n/pl.ts +152 -0
- package/src/tool/speed-reader/i18n/pt.ts +152 -0
- package/src/tool/speed-reader/i18n/ru.ts +152 -0
- package/src/tool/speed-reader/i18n/sv.ts +152 -0
- package/src/tool/speed-reader/i18n/tr.ts +152 -0
- package/src/tool/speed-reader/i18n/zh.ts +152 -0
- package/src/tool/speed-reader/index.ts +12 -0
- package/src/tool/text-pixel-calculator/i18n/de.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/id.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/it.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/ja.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/ko.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/nl.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/pl.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/pt.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/ru.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/sv.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/tr.ts +133 -0
- package/src/tool/text-pixel-calculator/i18n/zh.ts +133 -0
- package/src/tool/text-pixel-calculator/index.ts +12 -0
- package/src/tool/whatsapp-link/i18n/de.ts +128 -0
- package/src/tool/whatsapp-link/i18n/id.ts +128 -0
- package/src/tool/whatsapp-link/i18n/it.ts +128 -0
- package/src/tool/whatsapp-link/i18n/ja.ts +128 -0
- package/src/tool/whatsapp-link/i18n/ko.ts +128 -0
- package/src/tool/whatsapp-link/i18n/nl.ts +128 -0
- package/src/tool/whatsapp-link/i18n/pl.ts +128 -0
- package/src/tool/whatsapp-link/i18n/pt.ts +128 -0
- package/src/tool/whatsapp-link/i18n/ru.ts +128 -0
- package/src/tool/whatsapp-link/i18n/sv.ts +128 -0
- package/src/tool/whatsapp-link/i18n/tr.ts +128 -0
- package/src/tool/whatsapp-link/i18n/zh.ts +128 -0
- package/src/tool/whatsapp-link/index.ts +12 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
3
|
+
import type { RuleOfThreeUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const faqData = [
|
|
6
|
+
{
|
|
7
|
+
question: 'Was ist der einfache direkte Dreisatz?',
|
|
8
|
+
answer: 'Es ist eine mathematische Methode zur Lösung von Proportionalitätsproblemen zwischen drei bekannten Werten und einer Unbekannten. Er wird als „direkt“ bezeichnet, da bei Erhöhung einer Größe die andere im gleichen Verhältnis steigt.',
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
question: 'Wann sollte ich den umgekehrten Dreisatz verwenden?',
|
|
12
|
+
answer: 'Er wird verwendet, wenn die Größen antiproportional sind (wenn eine steigt, sinkt die andere). Beispiel: Wenn 2 Maler 5 Stunden brauchen, brauchen 4 Maler weniger Zeit. Unser aktueller Rechner konzentriert sich auf die direkte Proportionalität.',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
question: 'Ist er für professionelle Berechnungen genau genug?',
|
|
16
|
+
answer: 'Ja. Unser Rechner verwendet eine hohe Gleitkommapräzision, ideal für Dosierungsanpassungen, Grafikdesign-Skalierungen, kommerzielle Budgets und Rezeptumrechnungen.',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
question: 'Wie wird er manuell berechnet?',
|
|
20
|
+
answer: 'Die Formel lautet: (Wert B * Wert C) / Wert A = X. Das heißt, Sie multiplizieren die Diagonalwerte und dividieren das Ergebnis durch den verbleibenden Wert.',
|
|
21
|
+
},
|
|
22
|
+
];
|
|
23
|
+
|
|
24
|
+
const howToData = [
|
|
25
|
+
{
|
|
26
|
+
name: 'Basisverhältnis identifizieren',
|
|
27
|
+
text: 'Geben Sie die zwei bekannten Werte ein, die das ursprüngliche Verhältnis bilden (z. B. 100 km entsprechen 8 Litern).',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'Dritten Wert eingeben',
|
|
31
|
+
text: 'Schreiben Sie den neuen Wert, dessen Äquivalent Sie finden möchten (z. B. wenn ich 250 km reisen werde...).',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: 'Ergebnis erhalten',
|
|
35
|
+
text: 'Das System berechnet den unbekannten Wert (X) automatisch in Echtzeit, ohne dass Sie eine Taste drücken müssen.',
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'Kopieren oder Zurücksetzen',
|
|
39
|
+
text: 'Sie können das Ergebnis direkt in die Zwischenablage kopieren oder die Felder leeren, um eine neue Berechnung durchzuführen.',
|
|
40
|
+
},
|
|
41
|
+
];
|
|
42
|
+
|
|
43
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
44
|
+
'@context': 'https://schema.org',
|
|
45
|
+
'@type': 'FAQPage',
|
|
46
|
+
mainEntity: faqData.map((item) => ({
|
|
47
|
+
'@type': 'Question',
|
|
48
|
+
name: item.question,
|
|
49
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
50
|
+
})),
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
const howToSchema: WithContext<HowTo> = {
|
|
54
|
+
'@context': 'https://schema.org',
|
|
55
|
+
'@type': 'HowTo',
|
|
56
|
+
name: 'So verwenden Sie den Dreisatz-Rechner',
|
|
57
|
+
step: howToData.map((s) => ({ '@type': 'HowToStep', name: s.name, text: s.text })),
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
61
|
+
'@context': 'https://schema.org',
|
|
62
|
+
'@type': 'SoftwareApplication',
|
|
63
|
+
name: 'Einfacher Dreisatz-Rechner',
|
|
64
|
+
applicationCategory: 'UtilitiesApplication',
|
|
65
|
+
operatingSystem: 'Web',
|
|
66
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
67
|
+
description: 'Lösen Sie mathematische Proportionen sofort. Das ultimative Tool zur Berechnung von Mengen, Rezepten, Rabatten und Umrechnungen.',
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
const ui: RuleOfThreeUI = {
|
|
71
|
+
labelA: 'Wenn ich habe...',
|
|
72
|
+
labelB: 'Entspricht das...',
|
|
73
|
+
labelC: 'Und jetzt habe ich...',
|
|
74
|
+
labelX: 'Ergebnis (X)',
|
|
75
|
+
hintA: 'Ursprüngliche Menge',
|
|
76
|
+
hintB: 'Bekannter Wert',
|
|
77
|
+
hintC: 'Neue Menge',
|
|
78
|
+
hintX: 'Berechneter Wert',
|
|
79
|
+
separatorIsTo: 'entspricht',
|
|
80
|
+
separatorWillBe: 'ergibt',
|
|
81
|
+
copyTitle: 'Ergebnis kopieren',
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export const content: ToolLocaleContent<RuleOfThreeUI> = {
|
|
85
|
+
slug: 'dreisatz-rechner',
|
|
86
|
+
title: 'Einfacher Dreisatz Rechner',
|
|
87
|
+
description: 'Lösen Sie mathematische Proportionen sofort. Das ultimative Tool zur Berechnung von Mengen, Rezepten, Rabatten und Umrechnungen.',
|
|
88
|
+
ui,
|
|
89
|
+
faqTitle: 'Häufig gestellte Fragen',
|
|
90
|
+
faq: faqData,
|
|
91
|
+
howTo: howToData,
|
|
92
|
+
bibliographyTitle: 'Referenzen',
|
|
93
|
+
bibliography: [
|
|
94
|
+
{ name: 'Proportionalität (Mathematik) — Wikipedia', url: 'https://de.wikipedia.org/wiki/Proportionalit%C3%A4t' },
|
|
95
|
+
{ name: 'Verhältnisse und Proportionen — Khan Academy', url: 'https://de.khanacademy.org/math/pre-algebra/pre-algebra-ratios-rates' },
|
|
96
|
+
],
|
|
97
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
98
|
+
seo: [
|
|
99
|
+
{
|
|
100
|
+
type: 'title',
|
|
101
|
+
text: 'Wofür wird der Dreisatz verwendet?',
|
|
102
|
+
level: 2,
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'paragraph',
|
|
106
|
+
html: 'Der einfache direkte Dreisatz ist das „Schweizer Taschenmesser“ der Mathematik. Er löst Probleme, bei denen drei Datenpunkte bekannt sind und wir den vierten suchen. Wenn Sie die Beziehung zwischen <strong>A und B</strong> kennen und einen neuen Wert <strong>C</strong> haben, findet der Rechner sofort <strong>X</strong>.',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
type: 'comparative',
|
|
110
|
+
columns: 2,
|
|
111
|
+
items: [
|
|
112
|
+
{
|
|
113
|
+
icon: 'mdi:chef-hat',
|
|
114
|
+
title: 'Kochen und Rezepte',
|
|
115
|
+
description: 'Wenn das Rezept 500 g Mehl für 4 Personen vorsieht, wie viel brauche ich dann für 7?',
|
|
116
|
+
points: ['(500 × 7) ÷ 4 = 875 g'],
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
icon: 'mdi:shopping',
|
|
120
|
+
title: 'Einkaufen und Preise',
|
|
121
|
+
description: 'Wenn eine Packung mit 3 Dosen 2,50 € kostet, wie viel würden mich dann 10 Dosen kosten?',
|
|
122
|
+
points: ['(2,50 × 10) ÷ 3 = 8,33 €'],
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
icon: 'mdi:car',
|
|
126
|
+
title: 'Reisen und Entfernung',
|
|
127
|
+
description: 'Wenn ich 45 Min. für 60 km brauche, wie lange brauche ich dann für 140 km?',
|
|
128
|
+
points: ['(45 × 140) ÷ 60 = 105 Min.'],
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
icon: 'mdi:monitor-screenshot',
|
|
132
|
+
title: 'Design und Bildschirme',
|
|
133
|
+
description: 'Wenn das Bild 1920 px breit ist und ich es auf 800 px verkleinern möchte, wobei die Proportionen erhalten bleiben sollen...',
|
|
134
|
+
points: ['(Originalhöhe × 800) ÷ 1920 = neue Höhe'],
|
|
135
|
+
},
|
|
136
|
+
],
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
type: 'title',
|
|
140
|
+
text: 'Wie funktioniert die Formel?',
|
|
141
|
+
level: 2,
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'paragraph',
|
|
145
|
+
html: 'Die Formel ist immer dieselbe: <strong>Multiplizieren Sie die Diagonalwerte und dividieren Sie durch den verbleibenden Wert</strong>.',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'code',
|
|
149
|
+
code: '(B × C) ÷ A = X',
|
|
150
|
+
ariaLabel: 'Einfache direkte Dreisatzformel',
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'paragraph',
|
|
154
|
+
html: 'Im Rechner: Wir multiplizieren Wert <strong>B</strong> mit Wert <strong>C</strong> und dividieren durch <strong>A</strong>. Das Ergebnis ist <strong>X</strong>.',
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: 'Professionelle und alltägliche Anwendungen',
|
|
159
|
+
level: 2,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: 'Jenseits der Schulmathematik ist der Dreisatz überall: in der Apotheke zur Berechnung von Dosierungen nach Körpergewicht, in der Fotografie zur Berechnung von Belichtungszeiten, im Finanzwesen zur Berechnung von prozentualen Abweichungen oder im Druckwesen zur Skalierung von Formatmaßen.',
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'tip',
|
|
167
|
+
title: 'Tipp zur Präzision',
|
|
168
|
+
html: 'Das Ergebnis wird mit bis zu 4 signifikanten Nachkommastellen angezeigt. Wenn Sie mit Geld oder exakten Maßen arbeiten, denken Sie daran, je nach Kontext zu runden: Euro auf 2 Stellen, Pixel auf ganze Zahlen.',
|
|
169
|
+
},
|
|
170
|
+
],
|
|
171
|
+
};
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
3
|
+
import type { RuleOfThreeUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const faqData = [
|
|
6
|
+
{
|
|
7
|
+
question: 'Apa itu aturan tiga sederhana langsung?',
|
|
8
|
+
answer: 'Ini adalah metode matematika untuk menyelesaikan masalah proporsionalitas antara tiga nilai yang diketahui dan satu nilai yang tidak diketahui. Disebut "langsung" karena ketika satu kuantitas meningkat, kuantitas lainnya meningkat dalam proporsi yang sama.',
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
question: 'Kapan saya harus menggunakan aturan tiga invers (terbalik)?',
|
|
12
|
+
answer: 'Ini digunakan ketika kuantitas berbanding terbalik (jika satu meningkat, yang lain menurun). Contoh: jika 2 tukang cat butuh 5 jam, 4 tukang cat akan butuh waktu lebih singkat. Kalkulator kami saat ini berfokus pada proporsionalitas langsung.',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
question: 'Apakah akurat untuk perhitungan profesional?',
|
|
16
|
+
answer: 'Ya. Kalkulator kami menggunakan presisi floating point tingkat tinggi, ideal untuk penyesuaian dosis, skala desain grafis, anggaran komersial, dan konversi resep.',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
question: 'Bagaimana cara menghitungnya secara manual?',
|
|
20
|
+
answer: 'Rumusnya adalah: (Nilai B * Nilai C) / Nilai A = X. Artinya, Anda mengalikan nilai-nilai diagonal dan membagi hasilnya dengan nilai yang tersisa.',
|
|
21
|
+
},
|
|
22
|
+
];
|
|
23
|
+
|
|
24
|
+
const howToData = [
|
|
25
|
+
{
|
|
26
|
+
name: 'Identifikasi hubungan dasar',
|
|
27
|
+
text: 'Masukkan dua nilai yang diketahui yang membentuk proporsi awal (misalnya 100km sama dengan 8 liter).',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'Masukkan nilai ketiga',
|
|
31
|
+
text: 'Tulis nilai baru yang padanannya ingin Anda temukan (misalnya jika saya akan menempuh perjalanan 250km...).',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: 'Dapatkan hasilnya',
|
|
35
|
+
text: 'Sistem akan secara otomatis menghitung nilai yang tidak diketahui (X) secara real-time tanpa menekan tombol apa pun.',
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'Salin atau reset',
|
|
39
|
+
text: 'Anda dapat menyalin hasilnya langsung ke papan klip atau menghapus bidang untuk melakukan perhitungan baru.',
|
|
40
|
+
},
|
|
41
|
+
];
|
|
42
|
+
|
|
43
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
44
|
+
'@context': 'https://schema.org',
|
|
45
|
+
'@type': 'FAQPage',
|
|
46
|
+
mainEntity: faqData.map((item) => ({
|
|
47
|
+
'@type': 'Question',
|
|
48
|
+
name: item.question,
|
|
49
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
50
|
+
})),
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
const howToSchema: WithContext<HowTo> = {
|
|
54
|
+
'@context': 'https://schema.org',
|
|
55
|
+
'@type': 'HowTo',
|
|
56
|
+
name: 'Cara menggunakan kalkulator aturan tiga',
|
|
57
|
+
step: howToData.map((s) => ({ '@type': 'HowToStep', name: s.name, text: s.text })),
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
61
|
+
'@context': 'https://schema.org',
|
|
62
|
+
'@type': 'SoftwareApplication',
|
|
63
|
+
name: 'Kalkulator Aturan Tiga Sederhana',
|
|
64
|
+
applicationCategory: 'UtilitiesApplication',
|
|
65
|
+
operatingSystem: 'Web',
|
|
66
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
67
|
+
description: 'Selesaikan proporsi matematika secara instan. Alat definitif untuk menghitung jumlah, resep, diskon, dan konversi.',
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
const ui: RuleOfThreeUI = {
|
|
71
|
+
labelA: 'Jika saya punya...',
|
|
72
|
+
labelB: 'Sama dengan...',
|
|
73
|
+
labelC: 'Dan sekarang saya punya...',
|
|
74
|
+
labelX: 'Hasil (X)',
|
|
75
|
+
hintA: 'Jumlah awal',
|
|
76
|
+
hintB: 'Nilai diketahui',
|
|
77
|
+
hintC: 'Jumlah baru',
|
|
78
|
+
hintX: 'Nilai terhitung',
|
|
79
|
+
separatorIsTo: 'berbanding',
|
|
80
|
+
separatorWillBe: 'adalah',
|
|
81
|
+
copyTitle: 'Salin hasil',
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export const content: ToolLocaleContent<RuleOfThreeUI> = {
|
|
85
|
+
slug: 'aturan-tiga',
|
|
86
|
+
title: 'Kalkulator Aturan Tiga Sederhana',
|
|
87
|
+
description: 'Selesaikan proporsi matematika secara instan. Alat definitif untuk menghitung jumlah, resep, diskon, dan konversi.',
|
|
88
|
+
ui,
|
|
89
|
+
faqTitle: 'Pertanyaan yang Sering Diajukan',
|
|
90
|
+
faq: faqData,
|
|
91
|
+
howTo: howToData,
|
|
92
|
+
bibliographyTitle: 'Referensi',
|
|
93
|
+
bibliography: [
|
|
94
|
+
{ name: 'Proporsionalitas (matematika) — Wikipedia', url: 'https://id.wikipedia.org/wiki/Proporsionalitas' },
|
|
95
|
+
{ name: 'Rasio dan proporsi — Khan Academy', url: 'https://id.khanacademy.org/math/pre-algebra/pre-algebra-ratios-rates' },
|
|
96
|
+
],
|
|
97
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
98
|
+
seo: [
|
|
99
|
+
{
|
|
100
|
+
type: 'title',
|
|
101
|
+
text: 'Untuk apa aturan tiga digunakan?',
|
|
102
|
+
level: 2,
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'paragraph',
|
|
106
|
+
html: 'Aturan tiga sederhana langsung adalah "pisau lipat Swiss" dalam matematika. Ini menyelesaikan masalah di mana tiga titik data diketahui dan kita mencari titik keempat. Jika Anda mengetahui hubungan antara <strong>A dan B</strong>, dan Anda memiliki nilai baru <strong>C</strong>, kalkulator ini akan menemukan <strong>X</strong> secara instan.',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
type: 'comparative',
|
|
110
|
+
columns: 2,
|
|
111
|
+
items: [
|
|
112
|
+
{
|
|
113
|
+
icon: 'mdi:chef-hat',
|
|
114
|
+
title: 'Memasak dan Resep',
|
|
115
|
+
description: 'Jika resep memerlukan 500g tepung untuk 4 orang, berapa banyak yang saya butuhkan untuk 7 orang?',
|
|
116
|
+
points: ['(500 × 7) ÷ 4 = 875g'],
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
icon: 'mdi:shopping',
|
|
120
|
+
title: 'Belanja dan Harga',
|
|
121
|
+
description: 'Jika satu pak isi 3 kaleng seharga €2,50, berapa harga 10 kaleng?',
|
|
122
|
+
points: ['(2,50 × 10) ÷ 3 = €8,33'],
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
icon: 'mdi:car',
|
|
126
|
+
title: 'Perjalanan dan Jarak',
|
|
127
|
+
description: 'Jika saya butuh 45 menit untuk menempuh 60km, berapa lama waktu yang dibutuhkan untuk menempuh 140km?',
|
|
128
|
+
points: ['(45 × 140) ÷ 60 = 105 menit'],
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
icon: 'mdi:monitor-screenshot',
|
|
132
|
+
title: 'Desain dan Layar',
|
|
133
|
+
description: 'Jika gambar lebarnya 1920px dan saya ingin menguranginya menjadi 800px dengan tetap menjaga proporsi...',
|
|
134
|
+
points: ['(TinggiAsli × 800) ÷ 1920 = TinggiBaru'],
|
|
135
|
+
},
|
|
136
|
+
],
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
type: 'title',
|
|
140
|
+
text: 'Bagaimana cara kerja rumusnya?',
|
|
141
|
+
level: 2,
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'paragraph',
|
|
145
|
+
html: 'Rumusnya selalu sama: <strong>kalikan nilai diagonal dan bagi dengan nilai yang tersisa</strong>.',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'code',
|
|
149
|
+
code: '(B × C) ÷ A = X',
|
|
150
|
+
ariaLabel: 'Rumus aturan tiga sederhana langsung',
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'paragraph',
|
|
154
|
+
html: 'Dalam kalkulator: kita mengalikan nilai <strong>B</strong> dengan nilai <strong>C</strong> dan membaginya dengan <strong>A</strong>. Hasilnya adalah <strong>X</strong>.',
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: 'Penggunaan profesional dan sehari-hari',
|
|
159
|
+
level: 2,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: 'Di luar matematika sekolah, aturan tiga ada di mana-mana: di farmasi untuk menghitung dosis berdasarkan berat badan, dalam fotografi untuk menghitung waktu pencahayaan, dalam keuangan untuk menghitung variasi persentase, atau dalam percetakan untuk menskalakan dimensi format.',
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'tip',
|
|
167
|
+
title: 'Tips presisi',
|
|
168
|
+
html: 'Hasil ditampilkan hingga 4 tempat desimal yang signifikan. Jika Anda bekerja dengan uang atau pengukuran yang tepat, ingatlah untuk membulatkannya sesuai konteks: euro menjadi 2 tempat desimal, piksel menjadi bilangan bulat.',
|
|
169
|
+
},
|
|
170
|
+
],
|
|
171
|
+
};
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
3
|
+
import type { RuleOfThreeUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const faqData = [
|
|
6
|
+
{
|
|
7
|
+
question: "Cos'è la regola del tre semplice diretta?",
|
|
8
|
+
answer: "È un metodo matematico per risolvere problemi di proporzionalità tra tre valori noti e un'incognita. Viene chiamata 'diretta' perché all'aumentare di una quantità, l'altra aumenta nella stessa proporzione.",
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
question: 'Quando dovrei usare la regola del tre inversa?',
|
|
12
|
+
answer: "Si usa quando le quantità sono inversamente proporzionali (se una aumenta, l'altra diminuisce). Ad esempio: se 2 pittori impiegano 5 ore, 4 pittori impiegheranno meno tempo. Il nostro calcolatore attuale si concentra sulla proporzionalità diretta.",
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
question: 'È accurato per calcoli professionali?',
|
|
16
|
+
answer: 'Sì. Il nostro calcolatore utilizza un\'elevata precisione in virgola mobile, ideale per regolazioni di dosaggi, scale di progettazione grafica, budget commerciali e conversioni di ricette.',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
question: 'Come si calcola manualmente?',
|
|
20
|
+
answer: 'La formula è: (Valore B * Valore C) / Valore A = X. Ovvero, si moltiplicano i valori in diagonale e si divide il risultato per il valore rimanente.',
|
|
21
|
+
},
|
|
22
|
+
];
|
|
23
|
+
|
|
24
|
+
const howToData = [
|
|
25
|
+
{
|
|
26
|
+
name: 'Identifica la relazione di base',
|
|
27
|
+
text: 'Inserisci i due valori noti che formano la proporzione iniziale (ad es. 100km equivalgono a 8 litri).',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'Inserisci il terzo valore',
|
|
31
|
+
text: 'Scrivi il nuovo valore di cui vuoi trovare l\'equivalente (ad es. se devo percorrere 250km...).',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: 'Ottieni il risultato',
|
|
35
|
+
text: 'Il sistema calcolerà automaticamente l\'incognita (X) in tempo reale senza premere alcun pulsante.',
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'Copia o resetta',
|
|
39
|
+
text: 'Puoi copiare il risultato direttamente negli appunti o cancellare i campi per eseguire un nuovo calcolo.',
|
|
40
|
+
},
|
|
41
|
+
];
|
|
42
|
+
|
|
43
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
44
|
+
'@context': 'https://schema.org',
|
|
45
|
+
'@type': 'FAQPage',
|
|
46
|
+
mainEntity: faqData.map((item) => ({
|
|
47
|
+
'@type': 'Question',
|
|
48
|
+
name: item.question,
|
|
49
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
50
|
+
})),
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
const howToSchema: WithContext<HowTo> = {
|
|
54
|
+
'@context': 'https://schema.org',
|
|
55
|
+
'@type': 'HowTo',
|
|
56
|
+
name: 'Come usare il calcolatore della regola del tre',
|
|
57
|
+
step: howToData.map((s) => ({ '@type': 'HowToStep', name: s.name, text: s.text })),
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
61
|
+
'@context': 'https://schema.org',
|
|
62
|
+
'@type': 'SoftwareApplication',
|
|
63
|
+
name: 'Calcolatore Regola del Tre Semplice',
|
|
64
|
+
applicationCategory: 'UtilitiesApplication',
|
|
65
|
+
operatingSystem: 'Web',
|
|
66
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
67
|
+
description: 'Risolvi proporzioni matematiche all\'istante. Lo strumento definitivo per calcolare quantità, ricette, sconti e conversioni.',
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
const ui: RuleOfThreeUI = {
|
|
71
|
+
labelA: 'Se ho...',
|
|
72
|
+
labelB: 'Equivale a...',
|
|
73
|
+
labelC: 'E ora ho...',
|
|
74
|
+
labelX: 'Risultato (X)',
|
|
75
|
+
hintA: 'Quantità iniziale',
|
|
76
|
+
hintB: 'Valore noto',
|
|
77
|
+
hintC: 'Nuova quantità',
|
|
78
|
+
hintX: 'Valore calcolato',
|
|
79
|
+
separatorIsTo: 'sta a',
|
|
80
|
+
separatorWillBe: 'sarà',
|
|
81
|
+
copyTitle: 'Copia risultato',
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export const content: ToolLocaleContent<RuleOfThreeUI> = {
|
|
85
|
+
slug: 'regola-del-tre',
|
|
86
|
+
title: 'Calcolatore Regola del Tre Semplice',
|
|
87
|
+
description: 'Risolvi proporzioni matematiche all\'istante. Lo strumento definitivo per calcolare quantità, ricette, sconti e conversioni.',
|
|
88
|
+
ui,
|
|
89
|
+
faqTitle: 'Domande Frequenti',
|
|
90
|
+
faq: faqData,
|
|
91
|
+
howTo: howToData,
|
|
92
|
+
bibliographyTitle: 'Riferimenti',
|
|
93
|
+
bibliography: [
|
|
94
|
+
{ name: 'Proporzionalità (matematica) — Wikipedia', url: 'https://it.wikipedia.org/wiki/Proporzionalit%C3%A0_(matematica)' },
|
|
95
|
+
{ name: 'Rapporti e proporzioni — Khan Academy', url: 'https://it.khanacademy.org/math/arithmetic-home/arith-review-ratios-rates' },
|
|
96
|
+
],
|
|
97
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
98
|
+
seo: [
|
|
99
|
+
{
|
|
100
|
+
type: 'title',
|
|
101
|
+
text: 'A cosa serve la regola del tre?',
|
|
102
|
+
level: 2,
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'paragraph',
|
|
106
|
+
html: 'La regola del tre semplice diretta è lo "coltellino svizzero" della matematica. Risolve problemi in cui sono noti tre dati e ne cerchiamo il quarto. Se conosci la relazione tra <strong>A e B</strong>, e hai un nuovo valore <strong>C</strong>, il calcolatore trova <strong>X</strong> istantaneamente.',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
type: 'comparative',
|
|
110
|
+
columns: 2,
|
|
111
|
+
items: [
|
|
112
|
+
{
|
|
113
|
+
icon: 'mdi:chef-hat',
|
|
114
|
+
title: 'Cucina e Ricette',
|
|
115
|
+
description: 'Se la ricetta richiede 500g di farina per 4 persone, di quanta ne ho bisogno per 7?',
|
|
116
|
+
points: ['(500 × 7) ÷ 4 = 875g'],
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
icon: 'mdi:shopping',
|
|
120
|
+
title: 'Shopping e Prezzi',
|
|
121
|
+
description: 'Se una confezione da 3 lattine costa 2,50 €, quanto mi costerebbero 10 lattine?',
|
|
122
|
+
points: ['(2,50 × 10) ÷ 3 = 8,33 €'],
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
icon: 'mdi:car',
|
|
126
|
+
title: 'Viaggi e Distanze',
|
|
127
|
+
description: 'Se impiego 45 min per fare 60km, quanto tempo impiegherò per farne 140km?',
|
|
128
|
+
points: ['(45 × 140) ÷ 60 = 105 min'],
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
icon: 'mdi:monitor-screenshot',
|
|
132
|
+
title: 'Design e Schermi',
|
|
133
|
+
description: 'Se l\'immagine è larga 1920px e voglio ridurla a 800px mantenendo la proporzione...',
|
|
134
|
+
points: ['(AltezzaOriginale × 800) ÷ 1920 = NuovaAltezza'],
|
|
135
|
+
},
|
|
136
|
+
],
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
type: 'title',
|
|
140
|
+
text: 'Come funziona la formula?',
|
|
141
|
+
level: 2,
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'paragraph',
|
|
145
|
+
html: 'La formula è sempre la stessa: <strong>moltiplicare i valori in diagonale e dividere per quello rimanente</strong>.',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'code',
|
|
149
|
+
code: '(B × C) ÷ A = X',
|
|
150
|
+
ariaLabel: 'Formula regola del tre semplice diretta',
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'paragraph',
|
|
154
|
+
html: 'Nel calcolatore: moltiplichiamo il valore <strong>B</strong> per il valore <strong>C</strong> e dividiamo per <strong>A</strong>. Il risultato è <strong>X</strong>.',
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: 'Usi professionali e quotidiani',
|
|
159
|
+
level: 2,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: 'Oltre alla matematica scolastica, la regola del tre è ovunque: in farmacia per calcolare i dosaggi in base al peso corporeo, in fotografia per calcolare i tempi di esposizione, in finanza per calcolare le variazioni percentuali, o nella stampa per scalare le dimensioni dei formati.',
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'tip',
|
|
167
|
+
title: 'Consiglio sulla precisione',
|
|
168
|
+
html: 'Il risultato viene visualizzato con un massimo di 4 cifre decimali significative. Se lavori con denaro o misure esatte, ricorda di arrotondare in base al contesto: euro a 2 decimali, pixel a numeri interi.',
|
|
169
|
+
},
|
|
170
|
+
],
|
|
171
|
+
};
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
3
|
+
import type { RuleOfThreeUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const faqData = [
|
|
6
|
+
{
|
|
7
|
+
question: '「単比例の三数法」とは何ですか?',
|
|
8
|
+
answer: '3つの既知の値から1つの未知の値を求めるための比例計算の手法です。一方が増えるともう一方も同じ比率で増えるため、「正比例(直接)」と呼ばれます。',
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
question: '反比例の三数法はいつ使うべきですか?',
|
|
12
|
+
answer: '一方が増えるともう一方が減るという「反比例」の関係にある場合です。例えば、2人の作業員で5時間かかる仕事は、4人の作業員ならもっと短い時間で終わります。現在の計算機は正比例に特化しています。',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
question: 'プロの計算にも使用できますか?',
|
|
16
|
+
answer: 'はい。当計算機は高精度の浮動小数点計算を使用しており、薬剤の用量調節、グラフィックデザインの縮尺、営業予算、料理レシピの換算などに最適です。',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
question: '手動で計算するにはどうすればよいですか?',
|
|
20
|
+
answer: '公式は (Bの値 × Cの値) ÷ Aの値 = X です。つまり、対角線上の値を掛け合わせ、残りの値で割ります。',
|
|
21
|
+
},
|
|
22
|
+
];
|
|
23
|
+
|
|
24
|
+
const howToData = [
|
|
25
|
+
{
|
|
26
|
+
name: '基準となる関係を特定',
|
|
27
|
+
text: '最初の比率となる2つの既知の値を入力します(例:100kmが8リットルに相当する場合)。',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: '3つ目の値を入力',
|
|
31
|
+
text: '求めたい新しい方の値を入力します(例:250km走行する場合...)。',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: '結果を表示',
|
|
35
|
+
text: 'ボタンを押す必要はなく、リアルタイムで未知の値(X)が自動的に計算されます。',
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'コピーまたはリセット',
|
|
39
|
+
text: '結果を直接クリップボードにコピーしたり、入力欄をクリアして新しい計算を行ったりできます。',
|
|
40
|
+
},
|
|
41
|
+
];
|
|
42
|
+
|
|
43
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
44
|
+
'@context': 'https://schema.org',
|
|
45
|
+
'@type': 'FAQPage',
|
|
46
|
+
mainEntity: faqData.map((item) => ({
|
|
47
|
+
'@type': 'Question',
|
|
48
|
+
name: item.question,
|
|
49
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
50
|
+
})),
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
const howToSchema: WithContext<HowTo> = {
|
|
54
|
+
'@context': 'https://schema.org',
|
|
55
|
+
'@type': 'HowTo',
|
|
56
|
+
name: '比例計算機(三数法)の使い方',
|
|
57
|
+
step: howToData.map((s) => ({ '@type': 'HowToStep', name: s.name, text: s.text })),
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
61
|
+
'@context': 'https://schema.org',
|
|
62
|
+
'@type': 'SoftwareApplication',
|
|
63
|
+
name: '比例計算機(三数法)',
|
|
64
|
+
applicationCategory: 'UtilitiesApplication',
|
|
65
|
+
operatingSystem: 'Web',
|
|
66
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
67
|
+
description: '数学的な比例計算を瞬時に解決します。数量、レシピ、割引、換算を計算するための決定版ツール。',
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
const ui: RuleOfThreeUI = {
|
|
71
|
+
labelA: 'もし...',
|
|
72
|
+
labelB: 'が...なら',
|
|
73
|
+
labelC: 'では...',
|
|
74
|
+
labelX: '結果 (X)',
|
|
75
|
+
hintA: '元の数量',
|
|
76
|
+
hintB: '既知の値',
|
|
77
|
+
hintC: '新しい数量',
|
|
78
|
+
hintX: '計算された値',
|
|
79
|
+
separatorIsTo: ':',
|
|
80
|
+
separatorWillBe: '=',
|
|
81
|
+
copyTitle: '結果をコピー',
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export const content: ToolLocaleContent<RuleOfThreeUI> = {
|
|
85
|
+
slug: 'rule-of-three',
|
|
86
|
+
title: '比例計算機(三数法)',
|
|
87
|
+
description: '数学的な比例計算を瞬時に解決します。数量、レシピ、割引、換算を計算するための決定版ツール。',
|
|
88
|
+
ui,
|
|
89
|
+
faqTitle: 'よくある質問',
|
|
90
|
+
faq: faqData,
|
|
91
|
+
howTo: howToData,
|
|
92
|
+
bibliographyTitle: '参考文献',
|
|
93
|
+
bibliography: [
|
|
94
|
+
{ name: '比例 — Wikipedia', url: 'https://ja.wikipedia.org/wiki/%E6%AF%94%E4%BE%8B' },
|
|
95
|
+
{ name: '比と比例 — Khan Academy', url: 'https://ja.khanacademy.org/math/pre-algebra/pre-algebra-ratios-rates' },
|
|
96
|
+
],
|
|
97
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
98
|
+
seo: [
|
|
99
|
+
{
|
|
100
|
+
type: 'title',
|
|
101
|
+
text: '比例計算(三数法)は何に使われますか?',
|
|
102
|
+
level: 2,
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'paragraph',
|
|
106
|
+
html: '三数法による比例計算は、数学における「十徳ナイフ」のようなものです。3つのデータがわかっていて、4つ目を求めるあらゆる問題を解決します。<strong>A と B</strong> の関係がわかっていて、新しい値 <strong>C</strong> がある場合、この計算機は即座に <strong>X</strong> を導き出します。',
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
type: 'comparative',
|
|
110
|
+
columns: 2,
|
|
111
|
+
items: [
|
|
112
|
+
{
|
|
113
|
+
icon: 'mdi:chef-hat',
|
|
114
|
+
title: '料理とレシピ',
|
|
115
|
+
description: '4人分で小麦粉500gが必要なレシピの場合、7人分なら何グラム必要でしょうか?',
|
|
116
|
+
points: ['(500 × 7) ÷ 4 = 875g'],
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
icon: 'mdi:shopping',
|
|
120
|
+
title: '買い物と価格',
|
|
121
|
+
description: '3缶セットで250円の場合、10缶買うといくらになりますか?',
|
|
122
|
+
points: ['(250 × 10) ÷ 3 = 833.33円'],
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
icon: 'mdi:car',
|
|
126
|
+
title: '旅行と距離',
|
|
127
|
+
description: '60km進むのに45分かかる場合、140km進むには何分かかるでしょうか?',
|
|
128
|
+
points: ['(45 × 140) ÷ 60 = 105分'],
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
icon: 'mdi:monitor-screenshot',
|
|
132
|
+
title: 'デザインと画面',
|
|
133
|
+
description: '幅1920pxの画像を、比率を維持したまま幅800pxに縮小したい場合...',
|
|
134
|
+
points: ['(元の高さ × 800) ÷ 1920 = 新しい高さ'],
|
|
135
|
+
},
|
|
136
|
+
],
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
type: 'title',
|
|
140
|
+
text: '公式の仕組み',
|
|
141
|
+
level: 2,
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'paragraph',
|
|
145
|
+
html: '公式は常に同じです:<strong>対角線上の値を掛け、残りの値で割る</strong>だけです。',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'code',
|
|
149
|
+
code: '(B × C) ÷ A = X',
|
|
150
|
+
ariaLabel: '三数法の計算公式',
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'paragraph',
|
|
154
|
+
html: '計算機上では:値 <strong>B</strong> と値 <strong>C</strong> を掛け、<strong>A</strong> で割ります。その結果が <strong>X</strong> です。',
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: 'プロの現場や日常での活用',
|
|
159
|
+
level: 2,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: '学校の数学だけでなく、比例計算はいたるところで使われています。薬局での体重別投与量の計算、写真撮影時の露出時間の計算、金融での騰落率の計算、印刷でのフォーマット寸法のスケーリングなどです。',
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'tip',
|
|
167
|
+
title: '精度のヒント',
|
|
168
|
+
html: '結果は最大で小数点第4位まで表示されます。お金や正確な寸法を扱う場合は、文脈に応じて、円なら整数、ピクセルなら整数といったように、適切に四捨五入してください。',
|
|
169
|
+
},
|
|
170
|
+
],
|
|
171
|
+
};
|