From 03f4a41580a01e2ea03c187962e0d8f049896d44 Mon Sep 17 00:00:00 2001 From: 202410715246 KOMARA ABDULQODIR <202410715246@mhs.ubharajaya.ac.id> Date: Mon, 28 Apr 2025 12:10:39 +0700 Subject: [PATCH] Upload files to "/" --- ..._Warna_Dominan_DesainAnalisisAlgoritma.cpp | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 Komara_Abdulqodir_4.62_Warna_Dominan_DesainAnalisisAlgoritma.cpp diff --git a/Komara_Abdulqodir_4.62_Warna_Dominan_DesainAnalisisAlgoritma.cpp b/Komara_Abdulqodir_4.62_Warna_Dominan_DesainAnalisisAlgoritma.cpp new file mode 100644 index 0000000..a546176 --- /dev/null +++ b/Komara_Abdulqodir_4.62_Warna_Dominan_DesainAnalisisAlgoritma.cpp @@ -0,0 +1,50 @@ +#include +#include +#include +#include + +using namespace std; + +// Fungsi untuk mengkonversi hex ke desimal +int hexToDec(const string& hexCode) { + int decimalValue; + stringstream ss; + ss << hex << hexCode; + ss >> decimalValue; + return decimalValue; +} + +// Fungsi utama untuk mencari warna dominan +char findDominantColor(const vector& colorCodes) { + int R = 0, G = 0, B = 0; + + // Iterasi melalui daftar warna + for (const string& code : colorCodes) { + if (code.size() == 6) { // Pastikan format HEX benar + R += hexToDec(code.substr(0, 2)); + G += hexToDec(code.substr(2, 2)); + B += hexToDec(code.substr(4, 2)); + } + } + + // Menentukan warna dominan + if (R > G && R > B) return 'R'; + else if (G > R && G > B) return 'G'; + else if (B > R && B > G) return 'B'; + else return 'X'; // Jika tidak ada warna dominan +} + +int main() { + vector colorCodes = { + "004455", "3321FE", "EE6633", + "A07689", "550055", "333333", + "333333", "444444", "555555", + "980000", "DD0000", "FE5689", + "000000", "00A900", "0CC000" + }; + + char dominantColor = findDominantColor(colorCodes); + cout << "Warna Dominan: " << dominantColor << endl; + + return 0; +} \ No newline at end of file