Hi Leute,
ich habe irgendwo in der for schleife algorithmische fehler und komme nicht dazu wo
Es liefert nicht den gewünschten wert
public class StringAufgaben{
// Der Benutzer übergibt einen Text, gebe jedes Zeichen dieses Textes in einer Zeile aus.
public static void textAusgeben(String text){
char c = ' ';
for(int i = 0; i < text.length(); i++){
c = text.charAt(i);
System.out.print(c);
}
}
//2a Gebe einen Text wie in Beispiel oben mit einem Zeichen pro Zeile aus,
//drehe aber die Reihenfolge um, so dass das letzte Zeichen zuerst ausgegeben wird und das erste im Wort zuletzt.
public static void textRueckwertsAusgeben( String text){
String str ="";
for(int i = text.length() -1; i >= 0; i--){
char c = text.charAt(i);
str = "" + c;
System.out.println(str);
}
}
//Ändere die Methode aus Beispiel 2a so, dass der Text nicht mehr auf die Konsole ausgegeben wird,
//sondern dass die Methode nun den übergebenen Text umdreht und danach zurück gibt.
public static char textRueckwertsAusgeben2( String text){
char c =' ';
for(int i = text.length() -1; i >= 0; i--){
c = text.charAt(i);
System.out.println(c);
}
return c;
}
//Übernehme vom Benutzer einen Text und einen Buchstaben. Zähle, wie oft dieser Buchstabe im Text vorkommt,
//und gebe die Anzahl zurück an den Aufrufer.
public static int buchstabenZaehlen(String text, char s){
int menge = 0;
for(int i = 0; i < text.length() ; i++){
char c = text.charAt(i);
if(c == s){
menge ++;
}
}
return menge;
}
//Der Benutzer übergibt einen Text und einen Buchstaben. Durchlaufe den Text und lösche
//jedes Vorkommen des übergebenen Buchstabens aus dem Text. Gebe den neuen Text zurück.
public static String buchstabeEntfernen(String text, char s ){
String str = "";
for (int i = 0; i < text.length(); i++){
char c = text.charAt(i);
if(c != s){
str += c;
System.out.print(str);
}
}
return str;
}
//Übergeben werden ein Text, und zwei Buchstaben. Ersetze alle Vorkommen des ersten Buchstabens im Text
//durch den zweiten Buchstaben und gebe den neuen Text zurück.
public static String buchstabeEntfernen(String text, char s ,char b){
String str= "";
for (int i = 0; i < text.length(); i++){
char c= text.charAt(i);
if(c == s){
c = b;
str += c;
System.out.print(str);
}else {
System.out.print(str + c);
}
}
return str;
}
public static void main(String args[]){
String s = "java";
textAusgeben(s);
System.out.println();
System.out.println("--------");
textRueckwertsAusgeben("khato");
System.out.println();
System.out.println("--------");
buchstabenZaehlen("jaaaaaaaava", 'a');
System.out.println("--------");
System.out.println(textRueckwertsAusgeben2("java"));
System.out.println("--------");
System.out.println(buchstabeEntfernen("java", 'a'));
System.out.println(buchstabeEntfernen("java", 'a' ,'k'));
}
}
danke vielmal
ich habe irgendwo in der for schleife algorithmische fehler und komme nicht dazu wo
Es liefert nicht den gewünschten wert
public class StringAufgaben{
// Der Benutzer übergibt einen Text, gebe jedes Zeichen dieses Textes in einer Zeile aus.
public static void textAusgeben(String text){
char c = ' ';
for(int i = 0; i < text.length(); i++){
c = text.charAt(i);
System.out.print(c);
}
}
//2a Gebe einen Text wie in Beispiel oben mit einem Zeichen pro Zeile aus,
//drehe aber die Reihenfolge um, so dass das letzte Zeichen zuerst ausgegeben wird und das erste im Wort zuletzt.
public static void textRueckwertsAusgeben( String text){
String str ="";
for(int i = text.length() -1; i >= 0; i--){
char c = text.charAt(i);
str = "" + c;
System.out.println(str);
}
}
//Ändere die Methode aus Beispiel 2a so, dass der Text nicht mehr auf die Konsole ausgegeben wird,
//sondern dass die Methode nun den übergebenen Text umdreht und danach zurück gibt.
public static char textRueckwertsAusgeben2( String text){
char c =' ';
for(int i = text.length() -1; i >= 0; i--){
c = text.charAt(i);
System.out.println(c);
}
return c;
}
//Übernehme vom Benutzer einen Text und einen Buchstaben. Zähle, wie oft dieser Buchstabe im Text vorkommt,
//und gebe die Anzahl zurück an den Aufrufer.
public static int buchstabenZaehlen(String text, char s){
int menge = 0;
for(int i = 0; i < text.length() ; i++){
char c = text.charAt(i);
if(c == s){
menge ++;
}
}
return menge;
}
//Der Benutzer übergibt einen Text und einen Buchstaben. Durchlaufe den Text und lösche
//jedes Vorkommen des übergebenen Buchstabens aus dem Text. Gebe den neuen Text zurück.
public static String buchstabeEntfernen(String text, char s ){
String str = "";
for (int i = 0; i < text.length(); i++){
char c = text.charAt(i);
if(c != s){
str += c;
System.out.print(str);
}
}
return str;
}
//Übergeben werden ein Text, und zwei Buchstaben. Ersetze alle Vorkommen des ersten Buchstabens im Text
//durch den zweiten Buchstaben und gebe den neuen Text zurück.
public static String buchstabeEntfernen(String text, char s ,char b){
String str= "";
for (int i = 0; i < text.length(); i++){
char c= text.charAt(i);
if(c == s){
c = b;
str += c;
System.out.print(str);
}else {
System.out.print(str + c);
}
}
return str;
}
public static void main(String args[]){
String s = "java";
textAusgeben(s);
System.out.println();
System.out.println("--------");
textRueckwertsAusgeben("khato");
System.out.println();
System.out.println("--------");
buchstabenZaehlen("jaaaaaaaava", 'a');
System.out.println("--------");
System.out.println(textRueckwertsAusgeben2("java"));
System.out.println("--------");
System.out.println(buchstabeEntfernen("java", 'a'));
System.out.println(buchstabeEntfernen("java", 'a' ,'k'));
}
}
danke vielmal
Zuletzt bearbeitet: