Buchstabenprogramm2
-
Hi
ich soll ein Programm schreiben das ach ist mir jetzt zu blöde...;)
seht selber:[java]
class Buchstaben2 {public static void main(String args[]) throws java.io.IOException {
char ch = ' ';
while (ch != '.') {
ch = (char)System.in.read();
if (97 <= ch && ch <= 122) {
System.out.print((char)(ch - 32));
}if (65 <= ch && ch <= 90) {
System.out.print((char)(ch + 32));
}if (ch == 10) {
System.out.println();
}
}
}
}[/code]so nun das Programm am Ende anzeigen, wie oft die Schreibweise geändert wurde.
Ich hab daran gedacht das mit ner Schleife zu lösen oder???
Oder hab ihr ne bessere Idee?Danke!
-
davor:
alteSchreibweise=schreibweise;
drin:
schreibweise=klein; bzw schreibweise=gross;
danach:
if(schreibweise!=alteSchreibweise) { anzahlAenderungen=anzehlAenderungen+1; }
aber alles noch in deiner schleife, die mit dem while (ch != '.'), würd ich sagen tun.
-
@volkard ich finde deine Schreibweise bei diesem Beitrag sehr lustig.
Wortarm aber doch Präzise!
-
ja die Idee ist net schlecht..nur ein bissel durcheinander...
ich weiß, gar net wo etwas hinkommt...na ja.ich hab jetzt am anfang 2 variablen gesetzt und zwar:
[java]
class Buchstaben2 {public static void main(String args[]) throws java.io.IOException {
char ch = ' ';
int zaehler1 = '0'; //neue variablen gesetz
int zaehler2 = '0';while (ch != '.') {
ch = (char)System.in.read();
if (97 <= ch && ch <= 122) { //hier muss der zaehler1 inkrementiert
// werden, nur wie??
System.out.print((char)(ch - 32));
}if (65 <= ch && ch <= 90) { //hier muss der zaehler2 inkrementiert
// werden, nur wie??
System.out.print((char)(ch + 32));
}if (ch == 10) {
System.out.println();
}
} //ausgabe wie oft was geändert wurde das bezieht sich auf die
// Groß & Kleinschreibung!
}
}[/code]Ich wäre euch sehr Dankbar, wenn mir jemand helfen könnte...:)
-
Hrhr, also ich find volkards Beitrag echt genial
Ich versuch mal seine Überlegungen in deinen Quellcode einfliessen zu lassen
class Buchstaben2 { public static void main(String args[]) throws java.io.IOException { char alteSchreibweise = ' ', schreibweise = ' '; int anzahlAenderungen = 0; while (alteSchreibweise != '.') { schreibweise = (char) System.in.read(); alteSchreibweise = schreibweise; if (97 <= alteSchreibweise && alteSchreibweise <= 122) { schreibweise = (char) (schreibweise - 32); System.out.print( schreibweise ); } if (65 <= alteSchreibweise && alteSchreibweise <= 90) { schreibweise = (char) (schreibweise + 32); System.out.print( schreibweise ); } if (alteSchreibweise == 10) { System.out.println(); } if(schreibweise != alteSchreibweise) { anzahlAenderungen = anzehlAenderungen + 1; } } //ausgabe wie oft was geändert wurde das bezieht sich auf die // Groß & Kleinschreibung! System.out.println( anzahlAenderungen ); } }
-
Hi!!
vielen Dank für die Antwort und die Lösung!
Aber ich hab noch ne Frage zu der Zeile:char alteSchreibweise = ' ', schreibweise = ' '; // Warum das Leerzeichen ' '?
Müssen die Variablen nicht mit dem Wert Groß & Klein belegen?
Hm...(aso hab leider immer noch n' paar Fehler...)
Exception in thread "main" java.lang.NoClassDefFoundError: Buchstaben5/java
-
Zu deiner Exception: Die kommt wohl vom Start deines Programms. Du darfst wenn du mit java.exe dein Programm aufrufen willst nicht .java am Schluss angeben...