Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo, könnte mir bitte jemand diesen Quelltext erklären. Ich schreibe am Donnerstag eine Klausur und so eine Aufgabe wird sicherlich drannkommen.

Vielen Dank


function main()

{

	var a,b,n,u,j,i,z;

	n = document.Formular.a.value;

	z = new Array(n+1);

	b=""

	for (i=1;i<=n;i++)

	{ 

		z[i]=1;

	}

	for (i=2;i<=n;i++)

	{

		if (z[i]==1)

		{

			b= b+ i+ "| ";

		}

		for(j=2*i;j<=n;j=j+i)

		{				

			z[j]=0;


		}

	}

	document.Formular.b.value= b

}

Geschrieben

function main()

{

var a,b,n,u,j,i,z;

n = document.Formular.a.value;

z = new Array(n+1);

b=""

for (i=1;i<=n;i++) Warum wird hier ein Array verwendet?

{

z=1; Werden den Werten im Array die Zahl 1 zugeordnet?

}

for (i=2;i<=n;i++)

{

if (z==1) Könnten Sie mir bitte erklären, warum die Arrays verwendet werden und was sie hier bewirken?

{

b= b+ i+ "| ";

}

for(j=2*i;j<=n;j=j+i)

{

z[j]=0; Hier kapier ich auch nicht, warum nun eine

neue Variable verwendet wird.

}

}

document.Formular.b.value= b

}

Geschrieben (bearbeitet)

also wenn ich das richtig verstehe ist z ein int Array in dem für jede Zahl zw. 0 und dem max Wert (n bzw. a) eine 0 für keine Primzahl und eine 1 für eine Primzahl stehen.

if (z[i]==1)
wenn die Zahl eine Primzahl ist wird sie an b (String denke ich mal) angehängt und ein logisches Oder (|) als Trennzeichen
for(j=2*i;j<=n;j=j+i)

{

z[j]=0;


}

hier werden die vielfachen der ersten, zweiten, dritten, usw. Primzahl jeweils als keine Primzahl markiert

ich hoffe ich konnte dir etwas weiter helfen, wenn nicht les dir einfach mal den von Klotzkopp verlinkten Wikipedia Artikel durch bzw. schau dir das schöne GIF an.

Bearbeitet von Der_Lampe
Geschrieben

Ich hätte noch eine kurze Frage.

Wie würde ein Quelltext aussehen, wenn man die Zahl 100-1 runterzählen lassen würde?

Es wird anscheinend mit 2 Arrays gemacht.

Aber ich komme nur auf eine For-Schleife

for(i=100; i>=0; i--)

{Ich denke, dass man nun hir iwas mit nem Array machen müsste

}

Geschrieben
Wie würde der Quellcode dann aussehen?
Das hängt von der verwendeten Programmiersprache und vom Umfeld des Programms ab.

Vermutlich in etwa so:

function main()
{
var b,i;
b=""
for(i=100; i>=0; i--) {
b= b+ i+ "| ";
}
document.Formular.b.value= b
}[/code]

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...