Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo!

Ich studiere in Mannheim Wirtschaftspädagogik (Bachelor) und habe das Modul Wirtschaftsinformatik mit Wifo I und Wifo II.

Leider bin ich net soo der Proo in Informatik.

Und bei dem Thema Terminierung/Terminiertheit komme ich nicht ganz klar...

Ich habe hier mal eine Aufgabe :

http://www.bilder-space.de/show.php?file=02.06MVYGLiYAlFDLlKf.JPG

Als was man sofort siehtm, ist ja , dass durch dieses k<0 und x = 0-k das k bei negativen Werten immer Positiv wird.

Ab diesem x = 0-k gehen Werte für X (0,1,2,3,4,5) nicht mehr in die Schleife rein --> Return Res!

Terminiert heißt ja, dass er nach einer bestimmten ANzahl von Schritten zu einem Ergebnis kommt.

Nur weiss ich jetzt nicht genau, für welche K's jetzt genau terminiert wird.

Wäre sehr froh über Hilfe!

Geschrieben

Es terminert für alle k in N und die math. Funktion dazu lautet:

f(x) = |k|-5 für |k| > 5 und 0 für |k| <= 5

Phil

P.S.: Ich hoffe ich hab es auf die Schnelle korrekt gesehen

Vielen Dank für deine schnelle Antwort!

Kannst du mir auch kurz erklären, wie du auf dieses

,,f(x) = |k|-5 für |k| > 5 und 0 für |k| <= 5'' kommst?

Da bei k < = 5 das k eben nicht größer als 5 ist, geht man zwar in die IF-Schleife aber nicht in die While-Schleife rein und bekommt deshalb return res = 0 ?

Also wissen wir bei k< = 5 --> 0

Aber dann müsste man doch bei X Werten ab -6 in beiden Schleifen kommen.

If k< 0 --> trifft zu bei x=k = -6

X = 0 - k --> X = 0- - 6 = 6

While X> 5 --> trifft zu weil X = 6

Und wie kommst du auf : f(x) = |k|-5 für |k| > 5 ??

Und wieso muss man sagen: Es wird für alle K terminiert, wenn man bei manchen k in die Schleife geht und bei manchen nicht?

ciao

Geschrieben

Bitte benutze die Quotefunktion des Forum um richtig zu zitieren !

Da bei k < = 5 das k eben nicht größer als 5 ist, geht man zwar in die IF-Schleife aber nicht in die While-Schleife rein und bekommt deshalb return res = 0 ?

Was bitte ist eine If-Schleife if-schleife.de

Schau Dir einmal die Einrückung an und da es sich anscheinend um Javacode handelt, solltest Du auch diesen lesen können. Deine Vermutung ist falsch.

Und wieso muss man sagen: Es wird für alle K terminiert, wenn man bei manchen k in die Schleife geht und bei manchen nicht?

Deine Funktion terminiert für alle k aus dem Zahlenbereich int

Phil

Geschrieben

allo AbiAb und willkommen auf dem MP smile

Der Algo kann ja nur dann nicht terminieren, wenn die while-Schleife nicht verlassen wird. Sie wird aber in jedem Fall verlassen, da innerhalb der Schleife x immer um 1 dekrementiert wird und die Bedingung x <= 5 daher irgendwann erfüllt ist - unabhängig davon, welchen Wert x vor dem Betreten der Schleife hatte (es ist also egal, welche Anweisungen vor der Schleife stehen).

Ähm kann ich denn sagen:

Ein Algorithmus wird terminiert, wenn die While-Schleife verlassen wird!

Und da innerhalb der Schleife x immer um 1 abnimmt und daher x<5 irgendwann erfüllt ist, wird sie verlassen und daher terminiert!

Kann ich allein nur diese Aussage darauf schließen, dass dieser alg dann für alle k's terminiert?

ciao

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...