Hi @ all,
hab folgendes Problem.
Mein Programm soll die Zahlen von 0 bis 9 in "Digitalschrift" anzeigen.
Z.B. so für 2:
###
#
###
#
###
Jede Zahl habe ich schon so gestaltet:
[HIGHLIGHT="Java"]
private int number[]= {0,1,2,3,4,5,6,7,8,9};
private char zero[][]= {{'#','#','#'},{'#',' ','#'},{'#',' ','#'},{'#',' ','#'},{'#','#','#'}};
private char one[][]= {{' ',' ','#'},{' ','#','#'},{' ',' ','#'},{' ',' ','#'},{' ',' ','#'}};
private char two[][]= {{'#','#','#'},{' ',' ','#'},{'#','#','#'},{'#',' ',' '},{'#','#','#'}};
private char three[][]= {{'#','#','#'},{' ',' ','#'},{'#','#','#'},{' ',' ','#'},{'#','#','#'}};
private char four[][]= {{'#',' ','#'},{'#',' ','#'},{'#','#','#'},{' ',' ','#'},{' ',' ','#'}};
private char five[][]= {{'#','#','#'},{'#',' ',' '},{'#','#','#'},{' ',' ','#'},{'#','#','#'}};
private char six[][]= {{'#','#','#'},{'#',' ',' '},{'#','#','#'},{'#',' ','#'},{'#','#','#'}};
private char seven[][]= {{'#','#','#'},{'#',' ','#'},{' ',' ','#'},{' ',' ','#'},{' ',' ','#'}};
private char eight[][]= {{'#','#','#'},{'#',' ','#'},{'#','#','#'},{'#',' ','#'},{'#','#','#'}};
private char nine[][]= {{'#','#','#'},{'#',' ','#'},{'#','#','#'},{' ',' ','#'},{'#','#','#'}};
[/HIGHLIGHT]
In meine Methode mache ich eine If-Anweisung und lasse das entsprechende Array ausgeben:
[HIGHLIGHT="Java"]
public void testausgabe() throws IOException
{
BufferedReader con = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Zahl eingeben: ");
p = Integer.parseInt(con.readLine());
if (p == 0)
{
for (int i=0;i<=4;i++)
{ System.out.println();
for (int j=0;j<=2;j++)
{
System.out.print(zero[j]);
}
}
}
if (p == 1)
// usw...bis p == 9
[/HIGHLIGHT]
Da diese Methode eigentlich rel umständlich ist, da ich 10 If-Anweisungen brauche, und
dadurch eine rießen Methode habe, probiere ich nun ständig folgende
Anweisungen aus:
[HIGHLIGHT="Java"]
public void zifferausgabe() throws IOException
{
BufferedReader con = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Zahl eingeben: ");
p = Integer.parseInt(con.readLine());
for(int i=0;i<=9;i++)
{
if (p == number)
{
for (i=0;i<=4;i++)
{ System.out.println();
for (int j=0;j<=2;j++)
{
System.out.print(zero[j]); //zero gilt hier logischerweise nur für die 0, anstatt zero brauche ich hier den Array namen der für number richtig wäre
}
}
}
}
}
[/HIGHLIGHT]
Kann mir da jemand helfen??
hab folgendes Problem.
Mein Programm soll die Zahlen von 0 bis 9 in "Digitalschrift" anzeigen.
Z.B. so für 2:
###
#
###
#
###
Jede Zahl habe ich schon so gestaltet:
[HIGHLIGHT="Java"]
private int number[]= {0,1,2,3,4,5,6,7,8,9};
private char zero[][]= {{'#','#','#'},{'#',' ','#'},{'#',' ','#'},{'#',' ','#'},{'#','#','#'}};
private char one[][]= {{' ',' ','#'},{' ','#','#'},{' ',' ','#'},{' ',' ','#'},{' ',' ','#'}};
private char two[][]= {{'#','#','#'},{' ',' ','#'},{'#','#','#'},{'#',' ',' '},{'#','#','#'}};
private char three[][]= {{'#','#','#'},{' ',' ','#'},{'#','#','#'},{' ',' ','#'},{'#','#','#'}};
private char four[][]= {{'#',' ','#'},{'#',' ','#'},{'#','#','#'},{' ',' ','#'},{' ',' ','#'}};
private char five[][]= {{'#','#','#'},{'#',' ',' '},{'#','#','#'},{' ',' ','#'},{'#','#','#'}};
private char six[][]= {{'#','#','#'},{'#',' ',' '},{'#','#','#'},{'#',' ','#'},{'#','#','#'}};
private char seven[][]= {{'#','#','#'},{'#',' ','#'},{' ',' ','#'},{' ',' ','#'},{' ',' ','#'}};
private char eight[][]= {{'#','#','#'},{'#',' ','#'},{'#','#','#'},{'#',' ','#'},{'#','#','#'}};
private char nine[][]= {{'#','#','#'},{'#',' ','#'},{'#','#','#'},{' ',' ','#'},{'#','#','#'}};
[/HIGHLIGHT]
In meine Methode mache ich eine If-Anweisung und lasse das entsprechende Array ausgeben:
[HIGHLIGHT="Java"]
public void testausgabe() throws IOException
{
BufferedReader con = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Zahl eingeben: ");
p = Integer.parseInt(con.readLine());
if (p == 0)
{
for (int i=0;i<=4;i++)
{ System.out.println();
for (int j=0;j<=2;j++)
{
System.out.print(zero[j]);
}
}
}
if (p == 1)
// usw...bis p == 9
[/HIGHLIGHT]
Da diese Methode eigentlich rel umständlich ist, da ich 10 If-Anweisungen brauche, und
dadurch eine rießen Methode habe, probiere ich nun ständig folgende
Anweisungen aus:
[HIGHLIGHT="Java"]
public void zifferausgabe() throws IOException
{
BufferedReader con = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Zahl eingeben: ");
p = Integer.parseInt(con.readLine());
for(int i=0;i<=9;i++)
{
if (p == number)
{
for (i=0;i<=4;i++)
{ System.out.println();
for (int j=0;j<=2;j++)
{
System.out.print(zero[j]); //zero gilt hier logischerweise nur für die 0, anstatt zero brauche ich hier den Array namen der für number richtig wäre
}
}
}
}
}
[/HIGHLIGHT]
Kann mir da jemand helfen??