[C++] Convert sun/snow to morse to text[C++] Convert sun/snow to morse to text

☎️

Some Mars

Week 15, 2026

#include #include //using namespace std; void morseToText(std::string morseCode); int main() { std::string morseCode = "- .... . / .-- --- .-. .-.. -.. / -.-. .... .- -. --. . -.. / .-- .... . -. / ... .- -- ..- . .-.. / -- --- .-. ... . / ... . -. - / - .... . / ..-. .. .-. ... - / .-.. --- -. --. / -.. .. ... - .- -. -.-. . / -- . ... ... .- --. . / .-- .... .- - / .... .- - .... / --. --- -.. / .-- .-. --- ..- --. .... - / ....- ....- / -- .. .-.. . ... / -... . - .-- . . -. / .-- .- ... .... .. -. --. - --- -. / .- -. -.. / -... .- .-.. - .. -- --- .-. . / .- .-.. --- -. --. / .- / - . .-.. . --. .-. .- .--. .... / .-.. .. -. . / --- -. / ..--- ....- / -- .- -.-- / .---- ---.. ....- ....- / - --- / .- .-.. ..-. .-. . -.. / ...- .- .. .-.."; morseToText(morseCode); return 0; } void morseToText(std::string morseCode) { std::map morseCodeDict = { { ".-", 'a' }, { "-...", 'b' }, { "-.-.", 'c' }, { "-..", 'd' }, { ".", 'e' }, { "..-.", 'f' }, { "--.", 'g' }, { "....", 'h' }, { "..", 'i' }, { ".---", 'j' }, { "-.-", 'k' }, { ".-..", 'l' }, { "--", 'm' }, { "-.", 'n' }, { "---", 'o' }, { ".--.", 'p' }, { "--.-", 'q' }, { ".-.", 'r' }, { "...", 's' }, { "-", 't' }, { "..-", 'u' }, { "...-", 'v' }, { ".--", 'w' }, { "-..-", 'x' }, { "-.--", 'y' }, { "--..", 'z' }, { "-----", '0' }, { ".----", '1' }, { "..---", '2' }, { "...--", '3' }, { "....-", '4' }, { ".....", '5' }, { "-....", '6' }, { "--...", '7' }, { "---..", '8' }, { "----.", '9' }, { "/", ' ' } }; size_t pos = 0; while ((pos = morseCode.find(' ')) != std::string::npos) { std::string token = morseCode.substr(0, pos); if (morseCodeDict.find(token) != morseCodeDict.end()) { std::cout << morseCodeDict[token]; } else { std::cout << " "; } morseCode.erase(0, pos + 1); } std::cout << morseCodeDict[morseCode] << std::endl; }