Veröffentlicht 18. November 20222 j Hallo, ich habe an der Uni einen Informatikkurs und dort haben wir jetzt eine Aufgabe, bei der wir ein Wort einlesen lassen sollen. Der erste Buchstabe, welcher nicht wiederholt wird, soll in einen Großbuchstaben geändert werden. Bsp. Einlesen: brettspiele Originalstring: brettspiele Buchstabe: B Ergebnisstring: Brettspiele Das ist der bisherige Ansatz: #include <iostream> #include <string> using namespace std; string text = "rentnerin"; int zaehler[26]; char einfach[26]; for (int pos = 0; pos < text.length(); pos++) { int ord = text[pos] - 'a'; zaehler[ord] = zaehler[ord]+1; } for (int ord = 0; ord < 26; ord = ord+1 ) { cout << (char) (ord+'a') << " : " << zaehler[ord] << endl; } bool einzelnerchar = false; for (int pos2 = 0; pos2 < 26; pos2 = pos2 + 1 ) { if (zaehler[pos2] == 1) { einfach[pos2] = (char) (pos2+'a'); } } while (einzelchar == false) { for (int zaehler3 = 0; zaehler3 < text.length; zaehler3++) { a = zaehler[zaehler3]; if } } Momentan bekommen wir so immer die einzelnen Buchstaben untereinander ausgegeben mit der Anzahl der Buchstaben. Die Buchstaben, welche einmal vorkommen haben werden auch festgestellt. Nun ist aber die Frage, wie wir es hinbekommen, die irrelevanten Buchstaben "wegzulassen". Außerdem müssen wir es noch schaffen mit Hilfe des Ascii Codes die Kleinbuchstaben in Großbuchstaben umzuwandeln (-32). Wenn irgendwer Tipps geben kann wären wir sehr Happy. Bearbeitet 18. November 20222 j von Jarmila
18. November 20222 j vor 3 Minuten schrieb Jarmila: die Kleinbuchstaben in Großbuchstaben umzuwandeln (-32). einfach 32 abziehen wäre falsch. Denn so würde man bei einem 'A' = 65 auf 33 kommen. Und da steht dann in der ASCII '!'. Such mal nach der Möglichkeit den ASCII Wert durch eine bitweise Manipulation zu beeinflussen. Tip an der 32er Stelle das Bit sicher auf 0 ändern.
18. November 20222 j vor 15 Minuten schrieb elgorgo: einfach 32 abziehen wäre falsch. Denn so würde man bei einem 'A' = 65 auf 33 kommen. Und da steht dann in der ASCII '!'. Such mal nach der Möglichkeit den ASCII Wert durch eine bitweise Manipulation zu beeinflussen. Tip an der 32er Stelle das Bit sicher auf 0 ändern. Wir haben ja Kleinbuchstaben, die ir in Großbuchstaben umändern wollen, deswegen -32 (z ist 122 und Z ist 90).
19. November 20222 j Wie wäre die Nutzung von ToUpper(), um die Buchstaben in Großbuchstaben zu wandeln?
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.