Sprachliche Repräsentation

Status
Nicht offen für weitere Antworten.

manu1588

Mitglied
hi!

meine nächste frage betrifft ein programm, welches eine 4-stellige zahl einlesen soll (wie kann ich überprüfen ob sie 4-stellig ist???) und danach zb bei der eingabe von 1234 soll es eins-zwei-drei-vier zurückgeben. wie funktioniert das?

so weit hab ich es schon:

lg manu1588

import java.util.Scanner;
public class sprachliche_repraesentation {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

Scanner s = new Scanner(System.in);

int zahl;

System.out.println("Bitte geben Sie eine vierstellige Zahl ein:");
zahl = s.nextInt();
String eingabe = String.valueOf( zahl );

}
}
 

The_S

Top Contributor
Code:
if (eingabe.length() == 4) { // Eingabe ist 4 stellig
}

Und dann musst du (z. B. in einem Array) zu den jeweiligen Zahlen die gewünschte Bezeichnung dafür speichern und dann in einer Schleife die jeweilige Bezeichnung ausgeben.
 

manu1588

Mitglied
muss das eigentlich unbedingt mit einem array sein? ich habe mir gedacht, was ist wenn ich ihm sage dass von mir aus die eingabe ein string ist und dann kriegt der wert 1 einfach den neuen namen "eins" usw. und danach zerlege ich den string. geht das nicht? wie würde das gehen?

lg manu1588
 

manu1588

Mitglied
ich glaube du hast das auch falsch verstanden. der benutzer soll irgendeine 4-stellige zahl eingeben zb 7385 und es soll sieben-drei-acht-fünf zurückgegeben werden. wie funktioniert das? kann mir jemand helfen?
 
L

lohr

Gast
um die zahl zu überprüfen könntest du das eingegebene erstmal als integer wert ansehen und überprüfen ob diese zahl zwischen 1000 und 9999 liegt.

anschließend castest du das ganze in string und gibts string[0],string[1],string[2],string[3] aus.

Hat das dein Problem gelöst?
 

manu1588

Mitglied
nein nicht so ganz. es wäre nett wenn ich konkrete code-beispiele dafür bekommen würde, denn wie gesagt ich bin völlig neu. wie würde dann die ausgabe aussehen?

lg manu1588
 

The_S

Top Contributor
natürlich hab ich dich verstanden :roll:

Code:
	public static void main(String[] args) {
		
		int input = 5389;
		String inp = String.valueOf(input);
		String[] zahlen = {"null", "eins", "zwei", "drei", "vier", "fünf", "sechs", "sieben", "acht", "neun"};
		if (inp.length() == 4) {
			for (int i = 0; i < 3; i++) {
				System.out.print(zahlen[Integer.parseInt(inp.substring(i, i + 1))] + "-");
			}
			System.out.print(zahlen[Integer.parseInt(inp.substring(3, 4))]);
		}
		else {
			System.out.println("Zahl ist nicht vierstellig");
		}
	}
 
L

lohr

Gast
und wie es so geht...

Code:
import java.util.Scanner;

public class Test 
{
	public static void main(String[] args)
	{
		
		try
		{
			Scanner sEingabe = new Scanner(System.in);
			int iEingabe = 0;
			String sTemp = null;
			
			
			System.out.println("Bitte eine Zahl eingeben:");
			iEingabe = sEingabe.nextInt();
			
			if (iEingabe < 1000 || iEingabe > 9999)
				System.exit(0);
			sTemp = String.valueOf(iEingabe);
			System.out.println("Ihre Eingabe war:" +iEingabe);
			System.out.println("Zahl1:" +sTemp.charAt(0));
			System.out.println("Zahl2:" +sTemp.charAt(1));
			System.out.println("Zahl3:" +sTemp.charAt(2));
			System.out.println("Zahl4:" +sTemp.charAt(3));
		}
		catch(Exception ex)
		{
			System.out.println(ex.getMessage());
		}
		
	}
}
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben