Zahlen und buchstaben gemeinsam in ein array?

  • Themenstarter Themenstarter KlemensyXYZ
  • Beginndatum Beginndatum
K

KlemensyXYZ

Gast
Moin,

ich soll ein Array bauen, in dem Zahlen und Buchstaben vorhanden sind.
Zum Schluss soll ausgegeben werden: 1 5 7 S X 2

habe da schon was probiert:

Java:
import java.io.*;

class arrtest
{
	public static void main (String args []) throws IOException
	{
		int zahlenFeld[];
		int zahl;
		int anzahlElemente = 0;
		char bs;
		String inData;
		
		BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
		
		System.out.println("Ausgegeben werden soll: 1 5 7 S X 2");
		
		anzahlElemente = 6;
		
		System.out.println();									//Ausgabe Feldgröße
		System.out.println("Feldgroesse: " + anzahlElemente);
		
		zahlenFeld = new int[anzahlElemente];
		
		for (int i = 0; i < anzahlElemente; i++)
		{
			if (i == 1 && i == 2 && i == 3 && i == 5)
			{
				System.out.println();
				System.out.println("Geben Sie die Zahl ein!");
				inData = stdin.readLine();
				zahl = Integer.parseInt(inData);
			
				zahlenFeld[i] = zahl;
			}
			
			if (i == 3 && i == 4)
			{
				System.out.println();
				System.out.println("Geben Sie die Buchstaben ein!");
				bs = System.in.read();
				
				(char)zahlenFeld[i] = bs;
			}
		}
		
		for (int i = 0; i < zahlenFeld.length; i++)
		{
			System.out.print(zahlenFeld[i] + " ");
		}
	}
}

nur das funktioniert noch nicht.
Habe heute erfahren, dass ich morgen einen Test mit dieser oder einer ähnlichen Aufgabe schreiben werde und weis nicht was daran falsch ist.

Kann mir wer helfen?

Habe bis jetzt noch nix mit char gemacht

Danke

KlemensyXYZ
 
Zuletzt bearbeitet von einem Moderator:
if (i == 1 && i == 2 && i == 3 && i == 5) ?????

if (i == 3 && i == 4) ?????

wie kann ein primitiver Datentyp gleichzeitig mehrere Werte haben?
 
i kann nicht mehrere Zustände gleichzeig annahemen

(i == 1 && i == 2 && i == 3 && i == 5)



Diese Zeile ist noch nicht korrekt:

Code:
(char)zahlenFeld[i] = bs;



wenn dann musst du bs nach char casten.
Code:
(char)bs
;

Ich würde für das einlesen einen Scanner verwenden.
 
Zuletzt bearbeitet von einem Moderator:
wie les ich denn einen char ein??

habe das noch nie gemacht

edit:
habe grade von nem klassenkameraden erfahren, dass wir das nicht einlesen müssen

hier ein zweiter versuch der if schleife:

Java:
for (int i = 0; i < anzahlElemente; i++)
		{
			if (i == 0)
			{
				zahlenFeld[i] = 1;
			}
			
			if (i == 1)
			{
				zahlenFeld[i] = 5;
			}
			
			if (i == 2)
			{
				zahlenFeld[i] = 7;
			}
			
			if (i == 3)
			{
				char x;
				x = s;
				
				zahlenFeld[i] = x;
			}
			
			if (i == 4)
			{
				char y;
				y = x;
				
				zahlenFeld[i] = y;
			}
			
			if (i == 5)
			
			{
				zahlenFeld[i] = 2;
			}	
			
		}

das mit dem char funzt aber immer noch nicht
 
Zuletzt bearbeitet von einem Moderator:
Also wenn ich genau hinschaue machst du es schon -> Zeile 30 in deinem Code

In dem String hast du ganz viele characters drin ;-)

dann wandelst du die in int ...... (was du nicht zwingend musst)

--

So, Andi is goin home - it's Fire evening (oder so ähnlich) 🙂
 
wenn es nur so kleine zahlen sind, speicher sie doch auch als char. und mach ein char[] drauß.
alternativ ein Object[] mit Integer und Character füllen.
Java:
                char y;
                y = 'x';
da müssn hochkommata rum um den char
 
Zuletzt bearbeitet von einem Moderator:
ok danke an alle

ich denke ich werde die Lösung von tuttle64 verwenden.
Dann kann er nicht sagen ich hätte nichts versucht.
und es funktioniert ja auch:applaus:

edit: außerdem is es die kürzeste Lösung und für mich am besten zu merken
 
hä?

kann das da oben bitte mal wer berichtigen?
Wäre echt super:toll:

Dein Code:
Java:
                System.out.println();
                System.out.println("Geben Sie die Zahl ein!");
                inData = stdin.readLine();
                zahl = Integer.parseInt(inData);
            
                zahlenFeld[i] = zahl;

Du wolltest Buchstaben und Ziffern mischen (Annahme von mir, der benutzer gibt nichtnur ziffern sondern auch Buchstaben ein und die sollen gespeichert werden)

Du liest die Eingaben 3. Zeile und wandelst die auf der 4. in Zahlen um

Wenn jetzt also der Benutzer auch Buchstaben eingibt braucht es Änderungen:

Ziel muss jetzt ein char[], String o.ä. sein
Die Umwandlung in eine Zahl ist unnötig

und zu guter letzt - du brauchst das alles ger nciht mehr zu tun,weil es ja schon im inData so drin ist, aber das habe ich damals nicht geschrieben, weil du sellbst auf die Idee kommen solltest.

Soooo falsch liege ich nicht oder du hast das Problem unverständlich beschrieben
 

Neue Themen


Zurück
Oben