Felder

Beispiel

int[] note = new int[6];
 
note[0] = 1;
note[1] = 2;
note[2] = 4;
note[3] = 3;
note[4] = 6;
note[5] = 3;
 
int i = 0;
double summe = 0;
while(i < 6) {
 
   summe = summe + note[i];
 
   i++;
}
 
double mittelwert = summe / note.length;
 
println("Mittelwert: " + mittelwert);

Aufgabe 1

a) Deklariere ein Feld werte, das 10 double-Werte enthält und fülle es mit den Werten sin(0), sin(1), …, sin(10). Verwende dazu eine while- oder for-Schleife.
b) Ergänze Dein Programm, so dass es den größten der 10 Werte findet und ausgibt!

double[] werte = new double[10];
 
for(int i = 0; i < 10; i++) {
 
   werte[i] = Math.sin(i);
 
}
 
// Jetzt das Maximum finden:
 
double maximum = werte[0];
 
for(int i = 0; i < 10; i++) {
 
   if(werte[i] > maximum) {
      maximum = werte[i];
   }
 
}
 
println("Maximum: " + maximum);

Aufgabe 2

a) Deklariere ein Feld test mit 10 int-Werten und fülle es mit den Zweiterpotenzen 1, 2, 4, 8, 16, … 512. Verwende dazu eine while- oder for-Schleife!
b) Erweitere das Programm, so dass es die Summe aller Feldwerte berechnet.

Sieb des Eratosthenes

int max = 1000;
// false bedeutet: Zahl ist gestrichen
boolean[] sieb = new boolean[max + 1];
 
for(int i = 0; i < max + 1; i++) {
   sieb[i] = true;
}
 
int p = 2;
while(p < Math.sqrt(max)) {
 
   // Vielfache von p streichen
   for(int i = p * 2; i < max + 1; i = i + p) {
      sieb[i] = false;
   }
 
   // nächste freie Zahl suchen:
   int i = p + 1;
   while(sieb[i] == false && i < max + 1) {
 
      i++;
 
   }
 
   p = i;
 
}
 
 
// Primzahlen ausgeben:
for(int i = 2; i < max + 1; i++) {
   if(sieb[i] == true) {
      print(i + ", ");
   }
}
Drucken/exportieren
QR-Code
QR-Code schule:klassen:2019:10abc:felder (erstellt für aktuelle Seite)