Java Aufgabe fürs Studium (bitte um Hilfe)

Status
Nicht offen für weitere Antworten.

dj_g

Mitglied
Hi alle miteinander!

Ich bin neu hier! Kurz etwas über mich: Ich habe gerade angefangen, Wirtshaftsinformatik an der FH Augsburg zu studieren (d.h. ich bin Erstsemester also bitte etwas Nachsicht mit mir). Als einführungsprogrammiersprache lernen wir Java. Bisher hatte ich damit auch keine Probleme bis zu dieser Praktikumsaufgabe:

Schreiben Sie ein Programm mit folgender Funktionalität:
a) Einlesen von zwei Zeichen von der Tastatur
b) Ausgabe einer Fehlermeldung, wenn die Zeichen keine Buchstaben sind.
c) Ausgabe, ob c1 kleiner, gleich oder größer als c2 ist (gem. Alphabet).
d) Erweitern Sie das Programm derart, dass Groß- / Kleinschreibung der Buchstaben
ignoriert wird.
Die Überprüfungen können einerseits auf Basis von Bitoperationen und einer Maske
durchgeführt werden (vgl. Vorlesung) oder mit Vergleichen auf Basis der Zeichen.
Implementieren Sie beide Varianten.

Vielleicht kann mir da ja jemand helfen....Der Prof meinte wir sollten das selbst hinkriegen und er hilft nur wenn es echt nicht mehr geht...und jetzt geht es bei mir nicht mehr...

Das Einlesen erledigen wir über ein zusätzliches Toolpacket von www.grundkurs-java.de !!! Es kann dort heruntergeladen werden (unter Download, ist dieProg1Tools.zip Datei). Das Programm sollte unter Verwendung dieser Bibliothek geschrieben werden. Einleiten mit: import Prog1Tools.IOTools;

Ich fange das Programm wie folgt an:


Code:
import Prog1Tools.IOTools;

public class Aufgabe8
{
public static void main(String[] args)
{

char c1,c2;

System.out.print("Bitte den ersten Buchstaben eingeben:");
c1=IOTools.readChar();

/*Jetzt müsste die Überprüfung aus b) folgen d.h. es muss eine 
Fehlermeldung ausgegeben werden wenn kein BUCHSTABE eingegeben 
wird (dabei auch zu beachten: Klein und Großbuchstaben sollen gleich 
wertig sein d.h. a=A usw. siehe Unterpunkt d) und dann die Eingabe 
des Zweiten Buchstabens usw.*/


Würde mich freuen, wenn mir jemand bei dem Programm helfen könnte!!!

P.S. Tut mir leid, wenn das hier die falsche Rubrick war oder die Frage unangemessen oder zu komplex...wie gesagt...ich bin neu...

Bis dann!
dj_g
 
Also hier mal ausnahmsweise ein Quick-And-Dirty-mäßig zusammengeschustertes _Beispiel_, das dir vielleicht weiterhilft für deinen Aufgabenteil a) und den -teil b) (kommt ohne deine IOTools aus) - bitte als Anregung betrachten; keiner wird hier direkt deine Aufgaben lösen:

Code:
public class Aufgabe8 {
	private Aufgabe8(char inputChar) {
		char letter = inputChar;
		switch (letter) {
		case 'A':
		case 'B':
		case 'C':
		case 'D':
		case 'E':
		case 'F':
		case 'G':
		case 'H':
		case 'I':
		case 'J':
		case 'K':
		case 'L':
		case 'M':
		case 'N':
		case 'O':
		case 'P':
		case 'Q':
		case 'R':
		case 'S':
		case 'T':
		case 'U':
		case 'V':
		case 'W':
		case 'X':
		case 'Y':
		case 'Z':
			System.out.println("Eingabezeichen ist '" + letter
					+ "' und ein Grossbuchstabe");
			break;
		default:
			System.out.println("Eingabezeichen ist  '" + letter
					+ "' und KEIN (Gross-)Buchstabe");
		}
	}

	public static void main(String[] args) {

		char c1, c2;
		BufferedReader r = new BufferedReader(new InputStreamReader(System.in));
		
		char eingabe1 = ' ';
		char eingabe2 = ' ';
		try {
			System.out.print("Bitte das erste Zeichen eingeben: ");
			eingabe1 = r.readLine().charAt(0);

			Aufgabe8 z1 = new Aufgabe8(eingabe1);
			System.out.print("Bitte das zweite Zeichen eingeben: ");
			eingabe2 = r.readLine().charAt(0);

			Aufgabe8 z2 = new Aufgabe8(eingabe2);
		} catch (IOException e) {
			System.err.println("Eingabe-Fehler!");
		}
		System.out.println("Das war es schon ...");
	}
}

PS: Das nächste Mal Code-Tags verwenden!
 
a) Also das sürfte wolh nicht zu schwer sein.

b) Also da gibt es eine gute Methode der Klasse Charachter die das für dich tut. Einfach mal in die API gucken:
http://java.sun.com/j2se/1.4.2/docs/api/

c) Also zu integer casten ist ne nette möglichkeit

d) wurde ja schon erwähnt: Character.toLowerCase()


Ich hoffe mal, ich hab dir n bischen helfen können
 
>>Ausgabe einer Fehlermeldung, wenn
>>die Zeichen keine Buchstaben sind.

wenn du diese Aufgabe gelöst hast und wenn du Zeit hast und dich auch sonst für Informatik interssierst (aber nur dann!) , kannst du ja mal versuchen

String.valueOf(c1).matches("\\p{Alpha}")

zu verstehen (schau mal in java.util.regex)

Grund für diese Anmerkung: Viele Anfänger machen um regexe einen grossen Bogen und lernen es dann nie mehr 🙂
 
Hi Leute! 😀

Danke für eure vielen tollen Antworten!!! Sorry, dass ich nicht alles perfekt geschrieben haben (wie gesagt ich bin Erstsemester und hab erst ein paar Vorlesungen Java hinter mir...)! Hat mir sehr weitergeholfen (auch speziell die Links!!!)! :toll:
 
dj_g hat gesagt.:
Hi Leute! 😀

Danke für eure vielen tollen Antworten!!! Sorry, dass ich nicht alles perfekt geschrieben haben (wie gesagt ich bin Erstsemester und hab erst ein paar Vorlesungen Java hinter mir...)! Hat mir sehr weitergeholfen (auch speziell die Links!!!)! :toll:

Auch als Erstsemester kennt man die Grundlagen, Habe das auch schon hinter mir.
Kleiner Tip: Nicht immer gleich verzweifeln, sondern durchbeisen, dann lernst du am meisten.
 
@Bleiglanz
Ich wollte mir gerade die Klasse regex anschauen, finde sie aber nicht. Gibt es sie erst ab 1.5? Hab das nämlich nicht.
Was macht die Klasse denn?
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben