<sub class="descriptionSection">18-12-2024 02:02:pm // #Tag // [[Link]]</sub> ____ ## Aufgabe 1 ```cpp #include <iostream> #include <string> #include <vector> #include <fstream> #include <map> using namespace std; int main(){ int temperatur[] = {17, 17, 17, 16, 16, 17, 15, 15, 15, 15, 15, 15, 14, 14, 15, 15, 13, 13, 13, 13, 13, 12, 13, 14, 13, 12, 12, 12, 12, 11}; map<int, int> tempAusgabe; int i = 1; pair<int, int> waermsterTag = make_pair(0, 0); vector<int> tageAnDenenMindestens15GradWar; int completeTempCount = 0; for(int temp : temperatur){ tempAusgabe[temp]++; if(temp >= waermsterTag.second){ waermsterTag = make_pair(i, temp); } if(temp >= 15){ tageAnDenenMindestens15GradWar.push_back(i); } completeTempCount += temp; i++; } int durchschnitt = completeTempCount / std::size(temperatur); cout << "Durchschnittstemperatur: " << durchschnitt << endl; cout << "Tage an denen mindestens 15 Grad waren: " << tageAnDenenMindestens15GradWar.size() << endl; cout << "Der waermste Tag war: " << waermsterTag.first << ". Oktobor mit " << waermsterTag.second << " Grad." << endl; return 0; } ``` ## Aufgabe 2 ```cpp #include <iostream> #include <string> #include <vector> #include <fstream> #include <map> using namespace std; int main(){ float kontostaende[10]; for(int i = 0; i < 10; i++){ cout << "Bitte Kontostand Nr. " << i+1 << " eingeben: "; cin >> kontostaende[i]; cout << endl; } float lastKontostand = kontostaende[0]; for(float kontostand : kontostaende){ cout << "Kontostand: " << kontostand << endl; if(kontostand < lastKontostand){ cout << "Fehler: Kontostand " << kontostand << " ist kleiner als " << lastKontostand << endl; return 1; } } return 0; } ``` ## Zusatzaufgabe ```cpp #include <iostream> #include <string> #include <vector> #include <fstream> #include <map> using namespace std; string stringToMorse(string inputString, map<char, string> charMorseCodeMap){ string morseCodeString; for(int i = 0; i < inputString.size(); i++){ inputString[i] = tolower(inputString[i]); } for(char c : inputString){ morseCodeString += charMorseCodeMap[c] + " "; } return morseCodeString; } string morseToString(string inputMorseCodeString, map<string, char> morseCodeCharMap){ string stringToSearch; string newString; bool lastwasspace = false; for(char c : inputMorseCodeString){ if(c != ' '){ stringToSearch += c; lastwasspace = false; } else if(c == ' ' && lastwasspace){ newString += " "; lastwasspace = false; } else if (c == ' ' && !lastwasspace){ newString += morseCodeCharMap[stringToSearch]; stringToSearch = ""; lastwasspace = true; }; } newString += morseCodeCharMap[stringToSearch]; return newString; } int main(){ char inputArray[] = {'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'}; string inputString = "Hello World"; string inputMorseCodeString = ".... . .-.. .-.. --- .-- --- .-. .-.. -.."; map<char, string> charMorseCodeMap{ {'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', "--.."}, {' ', " "} }; map<string, char> morseCodeCharMap; for(auto const& [key, val] : charMorseCodeMap){ morseCodeCharMap[val] = key; } cout << stringToMorse(inputString, charMorseCodeMap) << endl; cout << morseToString(stringToMorse(inputString, charMorseCodeMap), morseCodeCharMap) << endl; return 0; } ```