Eingabe überprüfen

Kasperlino

Mitglied
Hallo,

ich bin gerade im ersten Semester meines Informatikstudiums und soll für eine Übung ein Programm schreiben, dass bei der Eingabe nur Zahlen und Groß, sowie Kleinbuchstaben zulässt.
Ich habe das ganze mit Scanner soweit hinbekommen, dass nur Zahlen möglich sind, aber ich weiß nicht wie ich jetzt weiterkomme.

Java:
package Übungsblatt2;
import java.util.Scanner;
public class Aufgabe4 {
	public static void main(String args[]) {
		//Eingabe 
		int a,b,c ;
		Scanner s = new Scanner(System.in);
		System.out.print("Bitte geben Sie einen Wert für a ein");
		a = s.nextInt();
		System.out.print("Bitte geben Sie einen Wert für b ein");
		b = s.nextInt();
		System.out.print("Bitte geben Sie einen Wert für c ein");
		c = s.nextInt();
		System.out.println("Sie haben folgende Werte eingegeben a=" +a +" b=" +b +" c=" +c);
			
		
		//Verarbeitung		
		if(a==b && a==c && b==c){
				System.out.println("Alle Werte sind gleich");
			} else if (a!=b && a!=c && b!=c){
				System.out.println("Alle Werte sind unterschiedlich");
			} else if(a==b | a==c | b==c){
				System.out.println("zwei Werte sind gleich");
			}
	}
	
}
 
Zuerst die Eingabe zurück auf Zeichen umstellen, sonst bekommst du keine Groß- und Kleinbuchstaben rein.
Und dann einfach testen. Die statischen Methoden in der Klasse Character dürften dir helfen. (Solange du die verwenden darfst, ansonst würde ich ein konstantes Array mit gültigen Werten machen)
 
Für Gross- und Kleinschreibung versuche folgendes:
Java:
char a= 'A';
char b= 'Z';
if(eingabe >=a && eingabe <=b) ....
 
Hallo,

Danke für die Tipps 🙂 Ich bin jetzt auf jeden Fall schon mal weitergekommen. Allerdings habe ich durch die Character ein Problem mit den Bedingungen.

Java:
package Übungsblatt2;
import java.util.*;
public class Aufgabe4 {
	public static void main(String args[]) {
		//Eingabe 
		char a,b,c ;
		Scanner s = new Scanner(System.in);
		System.out.print("Bitte geben Sie einen Wert für a ein");
		a = s.next().charAt(0);
		System.out.print("Bitte geben Sie einen Wert für b ein");
		b = s.next().charAt(0);
		System.out.print("Bitte geben Sie einen Wert für c ein");
		c = s.next().charAt(0);
		System.out.println("Sie haben folgende Werte eingegeben a=" +a +" b=" +b +" c=" +c);
		
		//Verarbeitung  
		if (Character.isLetterOrDigit(a) && Character.isLetterOrDigit(b) && Character.isLetterOrDigit(c) ) {
		{
			if('a'=='b' && 'a'=='c' && 'b'=='c'){
				System.out.println("Alle Werte sind gleich");
			} else if ('a'!='b' && 'a'!='c' && 'b'!='c'){
				System.out.println("Alle Werte sind unterschiedlich");
			} else if ('a'=='b' | 'a'=='c' | 'b'=='c'){
				System.out.println("zwei Werte sind gleich");
			}
	}
		 }
}}
 

Neue Themen


Zurück
Oben