Der folgende Beitrag wurde am 09. 02. 2004, 10:29 Uhr von steffen veröffentlicht.
hi,
import java.io.*;
public class array {
public static void main (String argv[]) throws IOException {
// Variablendeklarationen:
int anzahlNoten;
float summe = 0;
float [] notenfeld;
BufferedReader eingabe = new BufferedReader (
new InputStreamReader (System.in));
// Eingaben:
System.out.print ("Wieviele Noten? ");
anzahlNoten = Integer.parseInt (eingabe.readLine());
notenfeld = new float [anzahlNoten];
while(notenfeld[i]) {
System.out.print ((i+1) + ".Note: ");
notenfeld [i] = Float.parseFloat (eingabe.readLine());
summe = summe + notenfeld [i]; // Noten aufsummieren
i++;
} // for...
// Ausgaben:
System.out.println ("Durschnitt: " +(summe/anzahlNoten)+ "\n");
System.out.println ("Kontrollausgabe: ");
for(int i = 0; i < anzahlNoten ; i++)
System.out.println (notenfeld [i]);
} // main
} // class
Diese kleine jedoch sinnlose Programm kann man doch noch irgendwie verbessern. Bin jetzt kein JAVA held, aber in PHP geht das
summe = summe + notenfeld [i];
zB so:
$summe .= notenfeld[i];
und das man eingeben muss wieviele Noten da sind geht in PHP auch einfacher
while($notenfeld[$i]){
....
$i++;
}
Wieso geht das in JAVA nicht und wie bekomme ich so etwas hin?
thx
Steffen
Der folgende Beitrag wurde am 09. 02. 2004, 11:18 Uhr von Daniel Petratsch veröffentlicht.
Hi Steffen
> float [] notenfeld;
Da würde ich eher einen Vector bzw eine ArrayList nehmen, weil soweit ich weiss unterstützt Java keine dynamischen "normalen Arrays"
> BufferedReader eingabe = new BufferedReader (
> new InputStreamReader (System.in));
> // Eingaben:
> System.out.print ("Wieviele Noten? ");
> anzahlNoten = Integer.parseInt (eingabe.readLine());
>
> notenfeld = new float [anzahlNoten];
> while(notenfeld[i]) {
> System.out.print ((i+1) + ".Note: ");
> notenfeld [i] = Float.parseFloat (eingabe.readLine());
> summe = summe + notenfeld [i]; // Noten aufsummieren
> i++;
> }// for...
>
Wenn du es mit einem Array löst kannst du alle Elemente so auslesen:
for(int i=0; i<notenfeld.length; i++){
summe += notenfeld[i];
}
> Diese kleine jedoch sinnlose Programm kann man doch noch irgendwie verbessern. Bin jetzt kein JAVA held, aber in PHP geht das
Es ist immer ein Problem ein sinnloses Programm zu verbessern :)
Informier dich in der Javadoc einmal über die Klassen Vector() und ArrayList() , das sind Listenimplementierungen, mit denen es einfach ist Datenansammlungen mit Dynamischer Grösse zu erzeugen.
freundliche Grüsse,
Daniel
--
Das ist der ganze Jammer, die Dummen sind immer so sicher und die Gescheiten so voller Zweifel.
[Bertrand Russell]
© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4