Guten Tag/Nacht,
unzwar lerne ich in der Schule Javaprogrammierung und wir haben jetzt die Aufgabe gestellt bekommen, ein Programm zu schreiben, das Primzahen errechnet mit Arrays.
Ok!
Meine Idee:
Ich nehme als erstes die Zahl 2 und nehme die immer wieder +2 und setze die Arrays die die 2 trifft auf 0,sagen wir mal bis 10000. Danach setze ich die 3 und nehme die immer +3, das bis 10000 und dann nehme ich die 4 und nehme die immer +4 ... das bis 10 und dann dürfte ich genug ausgesiebt haben.
So das Programm was ich schon geschrieben hab:
so ok, ich hoffe das Programm ist so ok geschrieben, ich kann es gerade nicht Prüfen, hab es ausn Kopf auf der Arbeit rausgeschrieben.
Jetzt kommt aber das Problem, die ersten 10 werden nicht ausgeben, also 2,3,5 und 7. Ist ja auch nur logisch, aber wie ich das Sinnvoll ändern kann?
Jetzt zu euch, könnt ihr mir ein Tipp geben ?
Ich möchte keine Lösung eher ein Hinweis oder Tipp ; )
Vielen Dank schonmal im Vorraus.
lg
blub ; )
unzwar lerne ich in der Schule Javaprogrammierung und wir haben jetzt die Aufgabe gestellt bekommen, ein Programm zu schreiben, das Primzahen errechnet mit Arrays.
Ok!
Meine Idee:
Ich nehme als erstes die Zahl 2 und nehme die immer wieder +2 und setze die Arrays die die 2 trifft auf 0,sagen wir mal bis 10000. Danach setze ich die 3 und nehme die immer +3, das bis 10000 und dann nehme ich die 4 und nehme die immer +4 ... das bis 10 und dann dürfte ich genug ausgesiebt haben.
So das Programm was ich schon geschrieben hab:
Code:
static int a = 10001;
static int[] AStack= new int [a];
public static void eingabe()
{
for(it i=1;i<y;i++)
{
AStack[i] = i;
}
}
public static void rechnen()
{
int z=10;
for(int d=2;d<z;d++)
{
for(int e=0;e<y;e=d+d)
{
AStack[e] = 0;
}
}
public static void ausgeben()
{
for(int u=1;u<y;u++)
{
if(AStack[u] = 0)
{}
else
{
System.out.Println(AStack[u]);
}
}
}
public static void main ( String[] args )
{
eingabe();
rechnen();
ausgeben();
}
so ok, ich hoffe das Programm ist so ok geschrieben, ich kann es gerade nicht Prüfen, hab es ausn Kopf auf der Arbeit rausgeschrieben.
Jetzt kommt aber das Problem, die ersten 10 werden nicht ausgeben, also 2,3,5 und 7. Ist ja auch nur logisch, aber wie ich das Sinnvoll ändern kann?
Jetzt zu euch, könnt ihr mir ein Tipp geben ?
Ich möchte keine Lösung eher ein Hinweis oder Tipp ; )
Vielen Dank schonmal im Vorraus.
lg
blub ; )