hmm da sagt er mir jetzt, dass er Array nicht kennen würde...
kenne den befehl nicht, daher weiß ich nicht, ob ich vllt noch mehr librarys reinpacken muss
die sind bis jetzt drinimport java.io.*;
import java.util.*;
edit: @ sp1nny so hatte ich das mit dem fehler auch verstanden.
ich dachte das mein array a zu klein wäre, da er in a ja den string getrennt reinschreibt und dann unten die einzelnen teile durchgeht.
I wird immer weiter erhöht und somit checkt er auch einen teil vom array, der vllt nicht existiert, daher hab ich ja das array a oben so griß gemacht (mit leerzeichen)
und hab als bediengung für die while schleife gesagt, er soll aufhören, wenn ein leerzeichen im array steht, nur leider wills nicht so, wie ich das will :-)
edit2: ok habs für java heißt der befelht dann "a.length" sprich: name_des_arrays.length
aber danke für den tipp, fehler kommt nicht mehr...
nächstes problem, jetzt waren ja nur zahlen im array, wenn ich jetzt noch sage, dass im array noch ein symbol auftacht, was ein leerzeichen sein soll, wie kann ich das abfangen?
ich editier gleich mal meinen ansatz
edit3:
das ist mein ansatz.Code:while (i < a.length) { if (a[i] == "/") { System.out.print(" "); } else if (a[i]!="--") { b[i]=Integer.parseInt(a[i])-1; c[i]= alphabet[b[i]]; System.out.print(c[i]); } else { break; } i++; }
leider kommt, wenn ich jedoch ein "/" reinbauen will kommt folgender fehler:
vllt kann mir ja jmd da weiterfelhen, ich tüftel selbst mal ein wenig rum
edit 4:
ok habs...
if (a[i].equals("/"))
muss ich nehmen, dann gehts auch ;-)
---------- Post added at 13:42 ---------- Previous post was at 12:51 ----------
neuer post da es sonst unübersichtlich wird:
zum üben :-)Code:import java.io.*; import java.util.*; public class Raetsel { public static void main(String argv[]) throws Exception { String str; int[] b = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; int i=1; String[] c = {" "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "}; String[] a = {" "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "}; BufferedReader input=new BufferedReader(new InputStreamReader(System.in)); String[] alphabet = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"}; System.out.print("Texteingabe: "); str = input.readLine(); java.util.Arrays.toString(a=str.split("--")); while (i < a.length) { if (a[i].equals("//")) { System.out.print(""); } else if (a[i].equals("/")) { System.out.print(" "); } else if (a[i]!="--" && (a[i] != "/")) { b[i]=Integer.parseInt(a[i])-1; c[i]= alphabet[b[i]]; System.out.print(c[i]); } else { break; } i++; } System.out.println(); System.out.print("Programmende Raetsel"); } }
das einzigste was mich noch stört, ist dass ich a,b und c schon vorher füllen muss...



Zitieren