#include <iostream>
#include <string>
#include <cctype> // Diperlukan untuk fungsi isupper(), islower(), dan isdigit()
int main() {
// 1. Deklarasi Variabel
std::string kataSandi;
int jumlahHurufKapital = 0;
int jumlahHurufNonKapital = 0;
int jumlahAngka = 0;
int jumlahSimbol = 0;
// 2. Minta dan Baca Input dari Pengguna
std::cout << "Masukkan sebuah kata sandi: ";
std::getline(std::cin, kataSandi);
// 3. Iterasi melalui setiap karakter dalam kata sandi
for (char karakter : kataSandi) {
// 4. Periksa jenis karakter
if (isupper(karakter)) {
// Karakter adalah huruf kapital
jumlahHurufKapital++;
} else if (islower(karakter)) {
// Karakter adalah huruf non-kapital
jumlahHurufNonKapital++;
} else if (isdigit(karakter)) {
// Karakter adalah angka
jumlahAngka++;
} else {
// Jika bukan ketiganya, maka itu adalah simbol
jumlahSimbol++;
}
}
// 5. Tampilkan Hasil Analisis
std::cout << "\n--- Hasil Analisis Kata Sandi ---" << std::endl;
std::cout << "Jumlah Huruf Kapital : " << jumlahHurufKapital << std::endl;
std::cout << "Jumlah Huruf Non-Kapital : " << jumlahHurufNonKapital << std::endl;
std::cout << "Jumlah Angka : " << jumlahAngka << std::endl;
std::cout << "Jumlah Simbol : " << jumlahSimbol << std::endl;
std::cout << "---------------------------------" << std::endl;
return 0;
}