Array in Spalten angeben

chillerStudent

Bekanntes Mitglied
Java:
In.open("fivePoints.txt");
	
	double[] a;
	a= new double[5];
		
	
	for(int i=0; i<10; i++)
	{
		double v = In.readDouble();
		Out.println(v);
		
		Out.println();
		
		a[i]=In.readDouble();
		Out.println(a[i]);
	}

Hallo,

ich muss das a in einer anderen Spalte ausgben, sodass:

x-Koordinaten:
4.323378810163563
0.692942257399981
6.07836792051402
8.956672396946054
3.02658460021892

und

y-Koordinaten:
7.2753451415524175
0.23052983340252853
8.033930064917836
4.944743812499384
4.195128084444047

Muss ich da eine seperate for-schleife machen?
 

XHelp

Top Contributor
Dieser Code wird dir eine ArrayIndexOutOfBounds-Exception schmeißen, da du 10 Werte in ein Array packen willst, was du 5 Werte aufnehmen kann.
Du kannst entweder ein Array von 2dimensionalen Arrays machen, oder ein Array von Point's oder ein Array wo x und y aufeinander folgen, oder....
 

chillerStudent

Bekanntes Mitglied
Sry wegen den Werten, hab da viel ausprobiert, daher diese unterschiedlichen Werte.
Und nochmal sorry, ich hab nichts verstanden was du geschrieben hast. Das Thema ist für mich ziemlich neu.
Was meinst du mit 2demensionalen Arrays?
 

XHelp

Top Contributor
Java:
double[][] werte = new double[5][];
double xwert = 22.0;
double ywert = 21.43;
werte[0] = new double[2];
werte[0][0] = xwert;
werte[0][1] = ywert;

sowas meinte ich. Ist aber nicht gerade schön.
 

chillerStudent

Bekanntes Mitglied
Java:
double[][] werte = new double[5][];
double xwert = 22.0;
double ywert = 21.43;
werte[0] = new double[2];
werte[0][0] = xwert;
werte[0][1] = ywert;

sowas meinte ich. Ist aber nicht gerade schön.

sry, damit kann ich nichts anfangen. Kannst du mir vielleicht anders helfen? Das muss doch irgendwie einfacher gehen
 

XHelp

Top Contributor
Fang doch erstmal an, alle Werte in das Array einzulesen OHNE dass du die ausgibst.
Dannach gibst du zunächst alle geraden werte aus, dannach alle ungeraden.
 

chillerStudent

Bekanntes Mitglied
Ist das einlesen so richtig?
Java:
double[] x= In.readDouble();
	double[] y= In.readDouble();
	
	x = new double[5];
	x[a]=In.readDouble();
	
	y = new double[5];
	y[b]=In.readDouble();
 

chillerStudent

Bekanntes Mitglied
Java:
In.open("fivePoints.txt");
	
	double[] x;
	x= new double[5];
	
	double[] y;
	y= new double[5];
	
		
	
	for(int i=0; i<5; i++)
	{
		x = In.readDouble();
		y = In.readDouble();	
		
	}

Ich habe nur 5 zahlen, in der txt datei, die dieses Programm lesen soll, daher die 5 Elemente
 

XHelp

Top Contributor
Ok, du hast dich für die Lösung mit 2 Arrays entschieden.
Dann musst du auch die Zahl in die Arrays speichern, da müsste also irgendwas mit
Code:
x[i]=...
stehen
 

XHelp

Top Contributor
"jetzt" bezieht sich vermutlich auf den jetztigen Quellcode... Also könnte es vllt durch aus Sinn machen, diesen auch zu zeigen?
 

chillerStudent

Bekanntes Mitglied
"jetzt" bezieht sich vermutlich auf den jetztigen Quellcode... Also könnte es vllt durch aus Sinn machen, diesen auch zu zeigen?

Java:
In.open("fivePoints.txt");
	
	double[] x;
	x= new double[5];
	
	double[] y;
	y= new double[5];
	
		
	
	for(int i=0; i<5; i++)
	{
		x[i] = In.readDouble();
		y[i] = In.readDouble();
		Out.println(x[i]);
		Out.println(" "+y[i]);
		
	}

	In.close();

Übrigens:
In der txt Datei stehen die Werte nebeneinander. Jetzt möchte ich Untereinander.
 

Michael...

Top Contributor
Wenn Du die Werte in der selben Schleife ausgibst, in der Du sie einliest, ist es kein Wunder, das Sie wieder genau in der Reihefolge stehen. ;-)
 

chillerStudent

Bekanntes Mitglied
Funktioniert nicht.

Java:
double[] x;
	x= new double[5];
			
	
	for(int i=0; i<5; i++)
	{
		x[i] = In.readDouble();
		Out.println(x[i]);
		
		
	}

	double[] y;
	y= new double[5];
	
	for(int i=0; i<5; i++)
	{
		
		y[i] = In.readDouble();
		Out.println(" "+y[i]);
		
	}
 

XHelp

Top Contributor
Weil du wieder einließt und gleichzeitig ausgibst.
erst nur einlesen: OHNE println oder sonstwas da stehen zu haben
DANN ausgeben: OHNE readDouble da stehen zu haben.
 

Final_Striker

Top Contributor
Ich wiederhole mich gerne zum 5 Mal. Erst einlesen dann ausgeben.

x = In.readDouble(); <- das ist einlesen
Out.println(x); <- das ist ausgeben


Was du machen musst:

1. x und x Werten in die Arrays einlesen
2. x Werte ausgeben
3. y Werte ausgeben
 

chillerStudent

Bekanntes Mitglied
Vielen Danke für eure Hilfe Leute, ich habe es hin bekommen :toll:
Java:
double[] x;
	x= new double[5];
	
	double[] y;
	y= new double[5];
	
	for(int i=0; i<5; i++)
	{
		x[i] = In.readDouble();
		y[i] = In.readDouble();
	}
		
	Out.println("x-Koordinaten");
	for(int i=0; i<5; i++)
	{		
		Out.println(x[i]);
	}
	
	Out.println("\n"+"y-Koordinaten");
	for(int i=0; i<5; i++)
	{		
		Out.println(+y[i]);
	}

Kann ich die letzten beiden for-schleifen nicht vereinfachen? Wenn ja, wie?
 

Final_Striker

Top Contributor
du könntest anstatt:

Code:
double[] y;
Code:
y= new double[5];

auch einfach

Code:
double[] y = new double[5];


Was willst du denn bei den Schleifen vereinfachen???
Ist doch nur einer Anweisung drin.
 

Michael...

Top Contributor
Was will man an den paar Zeilen noch vereinfachen?

Grundsätzlich sollte man, wenn man keinen Iterator o.ä. verwendet, die Abbruchbedinung über die Länge definieren.
Java:
for(int i=0; i<x.length; i++)       
    Out.println(x[i]);

Out.println("\n"+"y-Koordinaten");
for(int i=0; i<y.length; i++)
    Out.println(y[i]);
 

chillerStudent

Bekanntes Mitglied
Dann verstehe ich meine Aufgabe nicht:
Das Programm soll aus einer txt Datei zahlen einlesen und ausgeben. Aber in der txt Datei können sich beliebig viele Zahlen drin stehen.
Wie soll ich dann folgendes Array mit beliebigen Elementen schreiben?
Java:
In.open("points.txt");
	
	double[] x;
	x= new double[10];

Andere Arrays darf ich nicht verwenden
 
B

bone2

Gast
wie wäre es das array so groß zu machn wie die geöffnete datei zeilen hat?

edit: wie man das "schön" umsetzt wird dir bei bedarf aber jemand anders sagen müssen.
 

Andi_CH

Top Contributor
Dann verstehe ich meine Aufgabe nicht:
Das Programm soll aus einer txt Datei zahlen einlesen und ausgeben. Aber in der txt Datei können sich beliebig viele Zahlen drin stehen.
Wie soll ich dann folgendes Array mit beliebigen Elementen schreiben?

Das ist unmöglich ... bei Arrays musst du von Anfang an wissen wieviele Werte du speichern willst.
Das ist ein Naturgesetz - äh die Definition von array.

Vom Mechanismus zu erkennen wann ein Array voll ist, einen neuen grösseren zu allozieren, den alten zu kopieren und wegzuwerfen und dann den zusätzlichen Inhalt anzuhängen verschone ich dich lieber.

Wie wärs mit Arrays der Grösse 1'000, 10'000 oder gar 100'000? Die dürften reichen, du musst so oder so mitzählen wieviele der Werte wirklich eingelesen wurden.

EDIT: Ok bones, auf die Idee wär ich echt nicht gekommen ;-) erst mal duchgehen und zählen, dann array allozieren, dann lesen. Tja noch einfacher gehts nur mit Vectoren o.ä. ;-)
 

Final_Striker

Top Contributor
Du könntest z.B. ein Anfangsarray des Größe 10 erzeugen und die Werte einlesen. Wenn das Array voll ist, erzeugst du ein Array das doppelt so groß ist, kopiert die Werte aus dem alten Array in das neue und ließt weitere Werte ein, usw...
 

chillerStudent

Bekanntes Mitglied
Ok. Verstehe.
Wenn ich statt den Wert, zb oben 10, 100 eingebe und in der txt Datei 50 werte drin sind, dann gibt er die restlichen 50 Werte als 0.0 an.
Wie bekomme ich diese weg?
 
B

bone2

Gast
Wurde schon gesagt, zähl beim einlesen die zeilen mit du du gelesen hast und benutze dann nur die anzahl werte aus dem array.
 

Andi_CH

Top Contributor
Ok. Verstehe.
Wenn ich statt den Wert, zb oben 10, 100 eingebe und in der txt Datei 50 werte drin sind, dann gibt er die restlichen 50 Werte als 0.0 an.
Wie bekomme ich diese weg?

Wie wärs mit Lesen? Ich hab doch gesagt: Du musst MITZÄHLEN wieviele Werte gelesen wurden

und

JA dazu brauchst du möglicherweise eine spezielle Variable

Zur Erinnerung:
Wie wärs mit Arrays der Grösse 1'000, 10'000 oder gar 100'000? Die dürften reichen, du musst so oder so mitzählen wieviele der Werte wirklich eingelesen wurden.
 

Andi_CH

Top Contributor
if-schleife.de

Einfach beim einlesen hochzählen - wobei, wenn du ja genau weisst wieviel Werte du einliest ......


Ich kanns wirklich nicht mehr unterdrücken sonst dreh ich noch im roten Bereich - vor Inbetriebname der Tastatur Gehirn aktivieren
Ja ich weiss dass du Java-Anfänger bist, aber das hat nun wirklich nicht viel mit --- opps jetzt bin ich wieder der Böse :autsch:
 

Michael...

Top Contributor
Da Dir scheinbar das grundlegende Verständnis fürs Programmieren fehlt, würde ich das ganze mal per Hand und auf Papier versuchen nachzustellen.

Ansonsten: Wenn Du es Dir einfach machen willst, lese die Datei in einer ersten Schleife ein und zähle mit einer Zählvariablen einfach nur mit wieviel Zahlen darin enthalten sind - ohne die Zahlen in ein Array o.ä zu speichern.

Anhand der Zählvariablen weisst Du dann wie groß Deine Arrays sein müssen und kannst diese dementsprechend dimensionieren. Danach wie bisher Einlesen und Ausgeben.
Du benötigst also nur eine weitere Schleife und eine zusätzliche Variable vorab.

Übrigens if-Schleifen gibt es nicht ;-)
 
B

bone2

Gast
*kaffe rüberschieb*

pseudocode

Java:
int zähler = 0;
while (array[i] = textDatei.ZeileLesen() != 0.0) {
        zähler++;
}

for (i < zähler) {
    machWas(array[i]);
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
districon 2D Array - Zeilen und Spalten durchsuchen Java Basics - Anfänger-Themen 3
P JSON-Array auf Excel-Spalten verteilen? Java Basics - Anfänger-Themen 5
G DefaultTableModel Spalten in Array schreiben Java Basics - Anfänger-Themen 4
R Erste Schritte 2D-Array: Zeilen & Spalten ohne schleife übergeben? Java Basics - Anfänger-Themen 3
E Array mit Zahlen von 1-(Zeilen*Spalten) befüllen Java Basics - Anfänger-Themen 8
T Array verkleinern Java Basics - Anfänger-Themen 2
J Array aus Numberfield Eingaben Java Basics - Anfänger-Themen 7
D Array List mit Objekten sortieren Java Basics - Anfänger-Themen 2
onlyxlia Anzahl Random Zahlen mit Scanner abfragen und in Array speichern Java Basics - Anfänger-Themen 10
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
Ü Zweidimensionales Array in der ersten Zeile deklarieren Java Basics - Anfänger-Themen 13
Thomas Uppe 2D Array Reihenfolge vermischen Java Basics - Anfänger-Themen 4
T array auslesen Java Basics - Anfänger-Themen 2
Nitrogames Variablen Variable aus JOptionPane Abfrage in Array einfügen Java Basics - Anfänger-Themen 4
moini Auf Array aus Superklasse zugreifen? Java Basics - Anfänger-Themen 2
J ArrayList in 2D-Array konvertieren. Java Basics - Anfänger-Themen 48
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
P Wieso kann ich als Index für einen Array einen Char angeben? Java Basics - Anfänger-Themen 3
Finn_lol Fehlermeldung bei Schleife mit Array Java Basics - Anfänger-Themen 4
Proxy Chars vor array übergabe toLowerUpcase Java Basics - Anfänger-Themen 14
iAmFaiinez Primzahlen Tester ohne Array Java Basics - Anfänger-Themen 4
S array 2 dimensional treppe Java Basics - Anfänger-Themen 3
S Array 2x2 Blöcke mit 0 und 1 Java Basics - Anfänger-Themen 10
C Array von Klassen Java Basics - Anfänger-Themen 2
julian0507 2Dim-Array Spaltensummen Java Basics - Anfänger-Themen 1
XWing Doppelte Zahlen im Array Java Basics - Anfänger-Themen 8
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
Proxy Stack erweitern mit neuem Array falls der alte voll ist!? Java Basics - Anfänger-Themen 5
E Array, nächste Zahl zur 5 ausgeben, wie? Java Basics - Anfänger-Themen 42
J Array.list vergleichen Java Basics - Anfänger-Themen 1
W Java-Code mit Array Java Basics - Anfänger-Themen 14
D Reflections & Generisches Array Java Basics - Anfänger-Themen 4
T Array Java Basics - Anfänger-Themen 2
T Array Java Basics - Anfänger-Themen 15
T Wörteranzahl im Array zählen Java Basics - Anfänger-Themen 9
Ostkreuz Zweidimensionaler Array Index Java Basics - Anfänger-Themen 2
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
R 2d Array individuell machen Java Basics - Anfänger-Themen 4
D 2D Char Array into String Java Basics - Anfänger-Themen 2
J Array Median bestimmen Java Basics - Anfänger-Themen 6
S Array Maximum bestimmen mit for und foreach Java Basics - Anfänger-Themen 7
S Prüfen ob ein zweidimensionales Array rechteckig ist Java Basics - Anfänger-Themen 4
N Array Java Basics - Anfänger-Themen 1
J Array Mittleren Wert bestimmen Java Basics - Anfänger-Themen 2
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
S Inhalte aus Array vergleichen und Max ausgeben Java Basics - Anfänger-Themen 3
M 2d array ohne längen anlegen Java Basics - Anfänger-Themen 4
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
E Reihenfolge der Werte umdrehen (mittels statischem int-Array Java Basics - Anfänger-Themen 3
O 2 Dimensionales Array Java Basics - Anfänger-Themen 6
M Bubble Sort - Int[] Array sortieren Java Basics - Anfänger-Themen 2
javaBoon86 Array mehrere Dimensionen Java Basics - Anfänger-Themen 10
B Array nach Elementwerten sortieren? Java Basics - Anfänger-Themen 1
B Explizit Array definieren geht nicht? Java Basics - Anfänger-Themen 14
D Kleinste Zahl in Array finden die vorher noch errechnet werden müssen. Java Basics - Anfänger-Themen 4
L Gegebenes Array sortieren, indem zufällige Zahlenpaare aus Array ausgewählt werden Java Basics - Anfänger-Themen 14
Say 2-DIM Array Code lesen und verstehen Java Basics - Anfänger-Themen 5
N Array beim erstellen mit Werten füllen Java Basics - Anfänger-Themen 6
C Java Array Struktur, welche ist wann besser? Java Basics - Anfänger-Themen 12
Temsky34 Array IndexOf nicht verfügbar Java Basics - Anfänger-Themen 18
belana wie am besten 2D Array von String to Integer Java Basics - Anfänger-Themen 18
S Array mit Methode löschen Java Basics - Anfänger-Themen 2
J Java To String Methode, Array mit For-Schleife Java Basics - Anfänger-Themen 2
E Durch Muster in Array iterieren Java Basics - Anfänger-Themen 3
L Frage zum Array Java Basics - Anfänger-Themen 1
C 2D Array Ausgabe mit for-Schleife i,j Java Basics - Anfänger-Themen 4
D Methode: Array Reihenfolge tauschen Java Basics - Anfänger-Themen 3
julian0507 Array aus Methode in anderer Methode sichtbar machen Java Basics - Anfänger-Themen 10
P Array vom Typ Klasse Java Basics - Anfänger-Themen 18
Lion.King Array deklarieren und initialisieren Java Basics - Anfänger-Themen 5
P Array-Objekte-Aufruf Java Basics - Anfänger-Themen 22
A CSv.Datei einlesen und die werte in zweidemosional Int Array speichern Java Basics - Anfänger-Themen 9
M Methoden Zweidimensionaler Array mit Setter Methode ändern Java Basics - Anfänger-Themen 4
AkiJou Zeile in 2d Array löschen Java Basics - Anfänger-Themen 2
LilliCherry Array in einer Zeile ausgeben Java Basics - Anfänger-Themen 6
A Elemente in einem Array Java Basics - Anfänger-Themen 5
A Vorkommende Farben ermittel und als Array zurückgeben Java Basics - Anfänger-Themen 7
AhmadSlack Array Java Basics - Anfänger-Themen 7
Jambolo Kartenhand Array Java Basics - Anfänger-Themen 14
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
T String Array Fehler beim Index Java Basics - Anfänger-Themen 3
krgewb byte-Array, das ein Bild repräsentiert Java Basics - Anfänger-Themen 1
1 Array rekursiv durchlaufen Java Basics - Anfänger-Themen 8
I Methoden Wieso wird mein Array "a" verändert und meine Variable "a" nicht? Java Basics - Anfänger-Themen 4
EykS 3D Druckdatei basierend auf 3D Array? Java Basics - Anfänger-Themen 3
sserio Array funktioniert nicht Java Basics - Anfänger-Themen 2
sserio Iterierung über ein zweidimensionales Array Java Basics - Anfänger-Themen 16
sserio Zweidimensionales Array [][] wird untereinander ausgegeben Java Basics - Anfänger-Themen 14
Chris.089 2 Werte im Array tauschen Java Basics - Anfänger-Themen 6
D EinMalEins mithilfe einer for-Schleife und Array Java Basics - Anfänger-Themen 1
L Unbekanntes Problem mit 2d Array Java Basics - Anfänger-Themen 6
L Gridmuster in einem Array Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben