CodeGym
Promotion
CodeGym University
Lernen
Kurs
Aufgaben
Umfragen & Quizze
Spiele
Hilfe
Zeitplan für einen Tritt in den Hintern
Community
Benutzer
Forum
Chat
Artikel
Erfolgsstorys
Aktivität
Rezensionen
Abonnements
Helles Design
Frage
  • Rezensionen
  • Über uns
Start
Jetzt lernen
Jetzt lernen
  • Alle Fragen
Sakka Mouid
Level 19
Hannover
  • 28.03.2022
  • 288Aufrufe
  • 1Kommentar

Alles ist korrekt . Das Output ist korrekt . Ich weiß nicht warum eine Anforderung nicht erfüllt ist.

Frage zur Aufgabe Vokale und Konsonanten
Java Syntax,  Level 9,  Lektion 11
Gelöst


Schreibe ein Programm, das eine Zeichenkette von der Tastatur liest.
Das Programm muss zwei Zeilen anzeigen:
1. Die erste Zeile enthält nur die Vokale der eingegebenen Zeichenkette.
2. Die zweite enthält nur die Konsonanten und Satzzeichen der eingegebenen Zeichenkette.
Die Buchstaben müssen durch ein Leerzeichen getrennt sein, jede Zeile muss mit einem Leerzeichen enden.

Beispiel-Eingabe:
Sam i am.

Beispiel-Ausgabe:
a I A
S m m .

Anforderungen:
  • Das Programm muss Daten von der Tastatur einlesen.
  • Das Programm muss zwei Zeilen anzeigen.
  • Die erste Zeile darf nur die Vokale aus der eingegebenen Zeichenkette enthalten, getrennt durch ein Leerzeichen.
  • Die zweite Zeile darf nur die Konsonanten und Satzzeichen der eingegebenen Zeichenkette enthalten, getrennt durch ein Leerzeichen.
  • Jede Zeile muss mit einem Leerzeichen enden.
package de.codegym.task.task09.task0923; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.lang.Character; import java.util.Iterator; /* Vokale und Konsonanten */ public class Solution { public static char[] vokale = new char[]{'a', 'e', 'i', 'o', 'u'}; public static void main(String[] args) throws Exception { // schreib hier deinen Code try { BufferedReader reader = new BufferedReader (new InputStreamReader(System.in)); String s = reader.readLine(); ArrayList<Character> liste = new ArrayList<Character>(); ArrayList<Character> vliste = new ArrayList<>(); ArrayList<Character> kliste = new ArrayList<>(); for ( int i = 0; i<s.length() ; ++i){ liste.add(s.charAt(i)); } for( Character element : liste ){ if (istVokal(element) && element != ' '){ vliste.add(element); } } for( Character element :vliste){ element = (vliste.indexOf(element)==0) ? Character.toLowerCase(element) : Character.toUpperCase(element); System.out.print(element+" "); } System.out.println(""); for( Character element : liste ){ if (!istVokal(element) && element != ' '){ kliste.add(element); } } for( Character element :kliste){ element = (kliste.indexOf(element)==0) ? Character.toUpperCase(element) : Character.toLowerCase(element); System.out.print(element+" "); } } catch (NullPointerException e) { System.out.println(e); } } // Die Methode überprüft, ob ein Buchstabe ein Vokal ist public static boolean istVokal(char c) { c = Character.toLowerCase(c); // In Kleinbuchstaben umwandeln for (char d : vokale) // Suche im Array nach Vokalen { if (c == d) return true; } return false; } }
0
Kommentare (1)
  • Beliebt
  • Neu
  • Alt
Du musst angemeldet sein, um einen Kommentar schreiben zu können
Lisa L
Level 47 , Nuremberg, Germany
28 März 2022, 16:24Lösung
Das CG Beispiel ist wohl nicht korrekt. Sam i am. sollte ergeben: a i a S m m . Sam I Am. a I A S m m . Auf jeden Fall solltest du nicht Groß - oder Kleinschreibung ändern. Ganz einfach irgendwie so in der Richtung
String vocal = "",
       consonant = "";

    for (char c : s.toCharArray())
        if (istVokal(c))
            vocal += c + " ";
        else if (c != ' ')
            consonant += c + " ";

    System.out.println(vocal + "\n" + consonant);
+3
Lernen
  • Registrierung
  • Java-Kurs
  • Hilfe zu Aufgaben
  • Preise
  • Spieleprojekte
  • Java Syntax
Community
  • Benutzer
  • Artikel
  • Forum
  • Chat
  • Erfolgsstorys
  • Aktivität
  • Affiliate Program
Unternehmen
  • Über uns
  • Kontakt
  • Rezensionen
  • Medien
  • CodeGym im Bildungsbereich
  • FAQ
  • Support
CodeGym CodeGym ist ein Java-Tutorial zum Lernen von Java von Grund auf. Dieser Kurs ist perfekt dafür geeignet, Java von Beginn an zu meistern. Er enthält über 1200 Aufgaben mit Sofortüberprüfung und grundlegende Theorie zu den Java-Grundlagen. Damit auch du bei deinem Kurs erfolgreich bist, haben wir eine ganze Reihe motivierender Inhalte: Quizfragen, Programmierprojekte, Inhalte zu effizientem Lernen und zum Berufseinstieg als Java-Entwickler.
Folgen
Sprache der Oberfläche
Programmierer werden gemacht, nicht geboren © 2023 CodeGym
MastercardVisa
Programmierer werden gemacht, nicht geboren © 2023 CodeGym
This website uses cookies to provide you with personalized service. By using this website, you agree to our use of cookies. If you require more details, please read our Terms and Policy.