// Data nutrient
struct Nutrient {
String satuanUkuran;
int usiaLebihDari4;
int usia0Hingga12Bulan;
int usia1Hingga3Tahun;
int hamilAtauMenyusui;
String jenisNilai; // Contoh: "RDA", "UL", dll.
String sumber;
String efekKekurangan;
String efekKelebihan;
String sumberAlternatif; // Contoh: "Kedelai, Tahu, Tempe"
String waktuKonsumsi; // Contoh: "Setelah makan, pagi hari"
};
// Data nama nutrient
const String namaNutrient[] = {
"vitamin a", "vitamin c", "kalsium", "zat besi", "vitamin d", "vitamin e",
"vitamin k", "tiamin", "riboflavin", "niasin", "vitamin b6", "folat",
"vitamin b12", "biotin", "asam pantotenat", "fosfor", "iodium",
"magnesium", "seng", "selenium", "tembaga", "mangan", "kromium",
"molibdenum", "klorida", "kalium", "kolin"
};
const int nutrientCount = sizeof(namaNutrient) / sizeof(namaNutrient[0]);
// Database nutrient
Nutrient nutrients[] = {
{"mcg", 900, 500, 300, 1300, "RDA", "Wortel, Ubi Jalar, Bayam", "Rabun malam, kulit kering", "Mual, sakit kepala", "Bayam, Kale", "Pagi hari setelah sarapan"},
{"mg", 90, 50, 15, 120, "RDA", "Buah jeruk, Paprika, Brokoli", "Skorbut, gusi berdarah", "Gangguan perut, diare", "Strawberry, Kiwi", "Setelah makan"},
{"mg", 1300, 260, 700, 1300, "RDA", "Produk susu, Sayuran hijau, Makanan fortifikasi", "Kelemahan tulang, rakitis", "Batu ginjal, sembelit", "Susu Almond, Kale", "Malam hari sebelum tidur"},
{"mg", 18, 11, 7, 27, "RDA", "Daging merah, Kacang-kacangan, Bayam", "Anemia, kelelahan", "Masalah pencernaan, kerusakan hati", "Kacang-kacangan, Bayam", "Setelah makan"},
{"mcg", 20, 10, 15, 15, "RDA", "Sinar matahari, Ikan berlemak, Susu fortifikasi", "Rakitis, nyeri tulang", "Mual, kerusakan ginjal", "Jamur, Susu kedelai", "Pagi hari"},
{"mg", 15, 5, 6, 19, "RDA", "Kacang-kacangan, Biji-bijian, Minyak nabati", "Kelemahan otot, masalah penglihatan", "Masalah perdarahan", "Minyak Zaitun, Alpukat", "Setelah makan"},
{"mcg", 120, 2.5, 30, 90, "RDA", "Sayuran hijau, Brokoli, Tauge", "Gangguan perdarahan", "Tidak ada toksisitas yang diketahui", "Sayuran hijau, Brokoli", "Malam hari"},
{"mg", 1.2, 0.3, 0.5, 1.4, "RDA", "Biji-bijian utuh, Daging babi, Kacang-kacangan", "Beriberi, kerusakan saraf", "Tidak ada toksisitas yang diketahui", "Biji-bijian utuh, Daging babi", "Pagi hari"},
{"mg", 1.3, 0.4, 0.5, 1.6, "RDA", "Produk susu, Telur, Sayuran hijau", "Gangguan kulit, radang tenggorokan", "Tidak ada toksisitas yang diketahui", "Produk susu, Telur", "Siang hari"},
{"mg", 16, 4, 6, 18, "RDA", "Daging, Ikan, Biji-bijian utuh", "Pellagra, dermatitis", "Kemerahan, kerusakan hati", "Daging, Ikan", "Setelah makan"},
{"mg", 1.7, 0.3, 0.5, 2, "RDA", "Unggas, Ikan, Pisang", "Anemia, depresi", "Kerusakan saraf", "Unggas, Pisang", "Pagi hari"},
{"mcg", 400, 80, 150, 600, "RDA", "Sayuran hijau, Kacang-kacangan, Buah jeruk", "Cacat lahir, anemia", "Tidak ada toksisitas yang diketahui", "Sayuran hijau, Kacang-kacangan", "Malam hari"},
{"mcg", 2.4, 0.5, 0.9, 2.8, "RDA", "Daging, Produk susu, Telur", "Anemia, kerusakan saraf", "Tidak ada toksisitas yang diketahui", "Daging, Telur", "Siang hari"},
{"mcg", 30, 6, 8, 35, "RDA", "Telur, Kacang-kacangan, Biji-bijian", "Rambut rontok, ruam kulit", "Tidak ada toksisitas yang diketahui", "Telur, Kacang-kacangan", "Pagi hari"},
{"mg", 5, 1.8, 2, 7, "RDA", "Daging, Alpukat, Biji-bijian utuh", "Kelelahan, mudah tersinggung", "Diare", "Alpukat, Biji-bijian utuh", "Setelah makan"},
{"mg", 1250, 275, 460, 1250, "RDA", "Daging, Produk susu, Kacang-kacangan", "Tulang lemah, kelelahan", "Kerusakan ginjal", "Daging, Produk susu", "Malam hari"},
{"mcg", 150, 130, 90, 290, "RDA", "Garam beryodium, Makanan laut, Produk susu", "Gondok, hipotiroidisme", "Disfungsi tiroid", "Garam beryodium, Makanan laut", "Siang hari"},
{"mg", 420, 75, 80, 400, "RDA", "Kacang-kacangan, Biji-bijian utuh, Sayuran hijau", "Kram otot, gangguan mental", "Diare, mual", "Kacang-kacangan, Sayuran hijau", "Setelah makan"},
{"mg", 11, 3, 3, 13, "RDA", "Daging, Kerang, Kacang-kacangan", "Fungsi kekebalan tubuh terganggu, rambut rontok", "Mual, muntah", "Daging, Kerang", "Siang hari"},
{"mcg", 55, 20, 20, 70, "RDA", "Kacang Brasil, Makanan laut, Daging", "Sistem kekebalan tubuh lemah, penyakit jantung", "Bau napas seperti bawang putih, rambut rontok", "Kacang Brasil, Makanan laut", "Pagi hari"},
{"mg", 0.9, 0.2, 0.3, 1.3, "RDA", "Kerang, Kacang-kacangan, Biji-bijian", "Anemia, kelainan tulang", "Kerusakan hati, gangguan pencernaan", "Kerang, Kacang-kacangan", "Setelah makan"},
{"mg", 2.3, 0.6, 1.2, 2.6, "RDA", "Biji-bijian utuh, Kacang-kacangan, Sayuran hijau", "Gangguan tulang, intoleransi glukosa", "Masalah neurologis", "Biji-bijian utuh, Kacang-kacangan", "Siang hari"},
{"mcg", 35, 5.5, 11, 45, "RDA", "Daging, Biji-bijian utuh, Buah-buahan", "Toleransi glukosa terganggu", "Tidak ada toksisitas yang diketahui", "Daging, Biji-bijian utuh", "Pagi hari"},
{"mcg", 45, 3, 17, 50, "RDA", "Kacang-kacangan, Biji-bijian, Kacang-kacangan", "Tidak ada efek kekurangan yang diketahui", "Gejala mirip asam urat", "Kacang-kacangan, Biji-bijian", "Siang hari"},
{"mg", 2300, 570, 1500, 2300, "RDA", "Garam meja, Makanan olahan, Makanan laut", "Ketidakseimbangan asam-basa", "Tekanan darah tinggi", "Garam meja, Makanan olahan", "Setelah makan"},
{"mg", 4700, 700, 3000, 5100, "RDA", "Pisang, Kentang, Sayuran hijau", "Kelemahan otot, kram", "Masalah jantung, mual", "Pisang, Kentang", "Siang hari"},
{"mg", 550, 150, 200, 550, "RDA", "Telur, Daging, Kedelai", "Kerusakan hati, masalah memori", "Bau badan amis, gangguan pencernaan", "Telur, Daging", "Pagi hari"}
};
// Fungsi untuk mencari nutrient berdasarkan nama
void cariNutrient(String nama) {
nama.toLowerCase();
bool found = false;
for (int i = 0; i < nutrientCount; i++) {
if (nama == namaNutrient[i]) {
found = true;
Serial.println("Informasi Nutrient:");
Serial.print("Nama: ");
Serial.println(namaNutrient[i]);
Serial.print("Satuan Ukuran: ");
Serial.println(nutrients[i].satuanUkuran);
Serial.print("RDA untuk Usia > 4 Tahun: ");
Serial.print(nutrients[i].usiaLebihDari4);
Serial.println(" " + nutrients[i].satuanUkuran);
Serial.print("RDA untuk Usia 0-12 Bulan: ");
Serial.print(nutrients[i].usia0Hingga12Bulan);
Serial.println(" " + nutrients[i].satuanUkuran);
Serial.print("RDA untuk Usia 1-3 Tahun: ");
Serial.print(nutrients[i].usia1Hingga3Tahun);
Serial.println(" " + nutrients[i].satuanUkuran);
Serial.print("RDA untuk Hamil/Menyusui: ");
Serial.print(nutrients[i].hamilAtauMenyusui);
Serial.println(" " + nutrients[i].satuanUkuran);
Serial.print("Jenis Nilai: ");
Serial.println(nutrients[i].jenisNilai);
Serial.print("Sumber Utama: ");
Serial.println(nutrients[i].sumber);
Serial.print("Efek Kekurangan: ");
Serial.println(nutrients[i].efekKekurangan);
Serial.print("Efek Kelebihan: ");
Serial.println(nutrients[i].efekKelebihan);
Serial.print("Sumber Alternatif: ");
Serial.println(nutrients[i].sumberAlternatif);
Serial.print("Waktu Konsumsi Optimal: ");
Serial.println(nutrients[i].waktuKonsumsi);
break;
}
}
if (!found) {
Serial.println("Nutrient tidak ditemukan.");
}
}
void setup() {
Serial.begin(9600);
Serial.println("Silakan masukkan nama nutrient untuk mendapatkan informasinya:");
}
void loop() {
if (Serial.available() > 0) {
String input = Serial.readStringUntil('\n');
input.trim();
cariNutrient(input);
}
}