Zum Inhalt springen

Cryver

Mitglieder
  • Gesamte Inhalte

    12
  • Benutzer seit

  • Letzter Besuch

  1. Vielen Dank, ich hab das Beispiel jetzt auf dem Papier beim Wert "3" und "4" komplett richtig, lediglich einige kleinere Denkfehler gehabt, die ich aber verstehen und berichtigen konnte. Mal schauen, ob ich während meines Eigenstudiums noch einmal etwas fragen muss *schmunzel* Ich wünsche allen zusammen einen schönen Feierabend und einen angenehmen Tag noch, Cryv
  2. @baphomet: Soweit hab ich rekursive Funktionen verstanden, dass ist für mich alles noch ganz verständlich gewesen. Aber danke dir für deine Mühe Das Problem, wo ich einfach nicht hinter komme (und ich bin bei sowas sehr ehrgeizig) ist das Verständnis von diesen "Türmen von Hanoi". Ich hab mir den Tipp von flashpixx gestern durch den Kopf gehen lassen, hab nu von 8 Uhr an darüber gegrübelt und bin alles durchgegangen, aber ich krieg es einfach nicht hin. HIer einfach mal mein Gedankengang, wie er generell anfängt. Beginn: Die Methode „move( int n, String fromPeg, String toPeg, String usingPeg ) “ wird aufgerufen, mit den Parametern 3, „Kupfersäule“, „Goldsäule“, „Silbersäule“. Der Parameter „n“ ist größer als als 1, somit ist die Bedingung true. Es wird das erste Mal die move(n-1,fromPeg,usingPeg,toPeg) Methode in sich selbst aufgerufen, dieser Aufruf sieht wie folgt aus: move(3-1,“Kupfersäule“,“Silbersäule“,“Goldsäule“). 1. Aufruf in sich selbst: Der Parameter „n“ ist erneut größer als 1, wieder ist die Bedingung true. Dieses Mal lautet der Aufruf der Methode move(2-1,“Kupfersäule“,“Goldsäule“,“Silbersäule“). 2. Aufruf in sich selbst: Der Parameter „n“ ist diesmal gleich 1, und somit nicht größer als 1- die Bedingung ist also false. Es erfolgt die Ausgabe „Bewege Scheibe 1 von der Kupfersäule zur Goldsäule.“ Jetzt kommt es zu einem rekursiven „Aufstieg“, wenn ich es richtig verstanden habe, und die letzten Ausgaben sollten erscheinen- das hieße, es müsste folgendes ausgegeben werden: „Bewege Scheibe 2 von der Kupfersäule zur Silbersäule.“ Nun wird die zweite, erwähnte, move(n-1,usingPeg,toPeg,fromPeg) Methode ausgeführt, was dem Aufruf von move(2-1,“Goldsäule“,“Silbersäule“,“Kupfersäule“) entspricht. 3. Aufruf in sich selbst: Der Parameter „n“ ist erneut gleich 1, kleiner als 1 und die Bedingung ist false. Es erfolgt die Ausgabe „Bewege Scheibe 1 von der Goldsäule zur Silbersäule“. Nun switcht er wieder zum 2. Aufruf von move(n-1,usingPeg,toPeg,fromPeg). ---- Und da fängt nun mein Problem an. In meiner Logik geh ich nun wieder einen Schritt zurück- und habe für den Aufruf die Parameterliste move(2-1,“Kupfersäule“,“Silbersäule“,“Goldsäule“). Fakt ist jedoch, dass die nächste Ausgabe für „n“ den Integer „3“ einsetzt. Wenn ich dies nun einfach hinnehme (ohne es zu verstehen, muss ich sagen; ich geh nun halt nicht einen sondern zwei Schritte zurück) passt die Ausgabe von „Bewege Scheibe 3 von der Kupfersäule zur Goldsäule.“, es entspricht dem beginnenden Aufruf. Zeitgleich hieße das, die nächste Ausgabe müsste eine 2 beinhalten. Tatsächlich jedoch enthält es eine 1, statt einer 2. Egal wie verbissen ich darüber nachdenke, ich krieg einfach nicht genau raus, wie der Sprung, nach diesem 3. Aufruf, genau aussieht. Ich hab es mir auf Papier „ausgemalt“, auf dem Computer und auch einen Bekannten gefragt (der zwar keine Erfahrung mit Java hat, jedoch mit der Sprache Delphi und ein wenig C[++], wie er sagt). Wenn ich die zwei Schritte, für die „3“ zurück gehe, muss ich daraufhin auch zwei Schritte nach vorne gehen, dass ich auf die 1 komme- und somit die „2“ erst im darauf folgenden Aufruf nutze? *sich die Haare rauf*
  3. Stimmt, in dem Buch steht dieses Beispiel unter dem Titel. Was ich allerdings nicht verstehe (zugegeben, da hab ich mich unklar ausgedrückt, entschuldige), wann genau wird der zweite Aufruf von "move()" ausgeführt? Ich vermute, daran scheitert es bei mir. Nach meinem Verständnis eines Programmablaufs, geht er zum ersten Aufruf von move(), fängt von vorne an und so geht´s dann weiter. Aber irgendwann kommt auch der zweite Aufruf- nur, wann kommt er?
  4. Einen schönen guten Tag zusammen, ich hab die Suche und Google verwendet, in der Hoffnung, zu diesem Thema eine für mich verständliche Antwort zu finden- leider war dem nicht so. Ich beschäftige mich seit einigen Tagen mit Java und lese hierzu ein Buch (bzw. E-Book). Da ich jetzt nicht weiß, inwiefern es Werbung ist, lasse ich den Namen weg, reiche Ihn aber, wenn gewünscht, gerne nach. Nun kam ich am Samstag auf das Thema "Rekursive Methode". Ich komme soweit klar, bis ich als Beispiel einen solchen Code (Anmerkung: Ich verwende den NetBeans Editor, der mir von einem Bekannten empfohlen wurde; Version 7.0.1) sehe: package rekursiondemo; public class RekursionDemo { static void move( int n, String fromPeg, String toPeg, String usingPeg ) { if (n > 1) { move(n-1,fromPeg,usingPeg,toPeg); System.out.println("Bewege Scheibe " + n + " von der " + fromPeg + " zur " + toPeg + "."); move(n-1,usingPeg,toPeg,fromPeg); } else { System.out.println("Bewege Scheibe " + n + " von der " + fromPeg + " zur " + toPeg + "."); } } /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here move(3,"Kupfersäule","Goldsäule","Silbersäule"); } } Dieses Beispiel ist aus dem oben genannten E-Book. Ich verstehe, dass eine rekursive Methode nichts anderes ist, als eine Methode, die sich bis zur Abbruch Bedingung immer wieder selbst aufruft. Aber, was ich einfach nicht verstehe, ist, wie genau der Vorgang läuft- spezifisch auf dieses Beispiel gemünzt. Die ersten 3 Zeilen, die ausgegeben werden, krieg ich so auf dem Papier hin- bei den folgenden Ergebnissen verfehle ich total. n-1: 3 fromPeg: Kupfersäule toPeg: Goldsäule usingPeg: Silbersäule n-1: 2 fromPeg: Kupfersäule toPeg: Silbersäule usingPeg: Goldsäule n-1: 1 fromPeg: Kupfersäule toPeg: Goldsäule usingPeg: Silbersäule // Bis hierhin mach ich auf dem Papier alles richtig // Das ist das Ergebnis, wie es weitergehen würde: n-1: 1 fromPeg: Goldsäule toPeg: Silbersäule usingPeg: Kupfersäule n-1: 2 fromPeg: Silbersäule toPeg: Goldsäule usingPeg: Kupfersäule n-1: 1 fromPeg: Silbersäule toPeg: Kupfersäule usingPeg: Goldsäule n-1: 1 fromPeg: Kupfersäule toPeg: Goldsäule usingPeg: Silbersäule Ich würde mich sehr freuen, wenn mir jemand auf irgendeine Art und Weise helfen könnte. Mit freundlichen Grüßen, Cryv
  5. Ich schließe mich gizmo an. Ich habe meine Prüfung vor ca. 2 Monaten erfolgreich bestanden und dieses Buch benutzt. Ich habe mich eine Woche vorher hingesetzt, Zettelchen reingeklebt (vorallem farbige, um die Seiten auch noch nach Thema zu unterscheiden) und dann noch darin geschmöckert. Mir hat´s geholfen, ich hab mit meinen knapp 90% doch ganz gut bestanden (und das Buch hat nicht gerade einen unwesentlichen Teil dabei ausgemacht).
  6. Ich hab meine Prüfung dieses Jahr bestanden (der Tag... der Tag... keine Ahnung, ich hab an dem Tag meinen eigenen Namen vergessen *schmunzel*). Lernen ist natürlich Pflicht Ich glaube, ich hab ca. 6 Monate vor der Prüfung mit den Vorbereitungen angefangen. - Wenn du was nicht weißt- notieren und nachschauen. - Versuch dir Eselsbrücken zu merken (Hachja...OSI-Referenzmodell...) Ich habe die Erfahrung gemacht, dass alles, was ich mir ab 16 Uhr angeschaut habe, besser hängen geblieben ist (Evtl. weißt du ja schon aus der Schule oder sonst woher, dass ein Mensch um ca. 16 Uhr normalerweise wieder den optimalen Stand erreicht hat, was die Aufnahmefähigkeit anbelangt). Und ansonsten...Ähm... Fang nicht 2 Tage vor der Prüfung an zu lernen, dass ist 2 bei mir aus der Klasse seinerzeit mehr als schlecht bekommen
  7. Achso, ich hab das so verstanden, dass du das nochmal wiederholt hast- wie wenn man nochmal auf einen Fehler eingehen will, und dann hin und wieder wiederholt, was da nun los war. Dann sag ich mal vielen dank, du hast mir sehr geholfen
  8. Wenn ich ehrlich sein soll, hab ich an diese Möglichkeit gar nicht gedacht (also die mit dem hidden Feld). Das könnte ich auch machen. Die Daten bräuchte ich (bzw. "spezifische" Daten wie z.B. den einzigartig benannten submit Button) um eine Funktion auszuführen. Allerdings kann ich das auch mit dem hidden Feld machen, so bräuchte ich den submit button nicht. Allerdings, weiß jemand, warum der submit Button nicht erkannt wird? Mein Auftraggeber wird zwar nicht bemerken, dass der Submit Button nicht mitgesendet wird, jedoch bin ich trotzdem neugierig, um ehrlich zu sein.
  9. Danke Lucius, Reinhold, hat prima geklappt edit: Also, es ist ein input type="submit", aye (ich hab immer nur die Bezeichnung "submit-Button" gehört, gibt es eine andere/ korrektere?). Ich schau mir aufjedenfall mal "onSubmit" an. Vielleicht klappt das ja so.
  10. Guten Morgen miteinander, ich habe folgendes Problem: Ich habe eine Seite programmiert, die soweit einwandfrei funktioniert- sollte man meinen Im FireFox, Opera und Co funktioniert alles einwandfrei. Nur, wie soll es auch anders sein, im Internet Explorer funktionieren 2 Dinge nicht. Nachdem ich schon mit meinem Ausbilder geguckt habe, und selber seit Montag am tüfteln bin, wollte ich jetzt einfach mal hier fragen- ich komme absolut nicht mehr weiter. Wir nutzen PhP Version 5.2.5. Da es ein Betriebsinternes Tool wird, auch noch den Standard hier: Internet Explorer 6 (damit teste ich auch) Die 2 Probleme: 1.) Ich habe eine kleine JavaScript Funktion geschrieben, um bei einem Klick auf eine Checkbox ein Feld an zuzeigen, bzw. zu verstecken. Aufgerufen wird diese Funktion bei „onChange“. Im Internet Explorer ist das aber so: Ich klicke auf die checkbox… Nichts passiert. Ich klicke irgendwo anders hin, auf der Seite selbst natürlich, und die JavaScript Funktion wird ausgeführt. Zugegeben, ich kenne mich mit JavaScript nicht so gut aus. Liegt das am Event Handler, oder worauf muss ich genau achten? Oder darf man einfach keine Checkbox nehmen? Das kam so vom „Auftraggeber“, dass ich es machen muss- gibt es hierbei einen anderen/ besonderen/ bestimmten Event Handler, damit es funktioniert? Die Teile (ich will nicht das „ganze“ script zeigen, weil das einfach zu lang wäre) sehen so aus: Es ist von der Position her auch so im Script zu finden, versteht sich (sprich, die Funktion ist definitiv vorhanden- ansonsten würde FireFox das ja auch falsch machen). <script language="javascript"> function changing() { for(var i = 0; i<=1;i++) if(document.erschaffen.stat.checked == false) { document.getElementById('dauer').style.display='none'; } if(document.erschaffen.stat.checked == true) { document.getElementById('dauer').style.display='block'; } } </script> <input type="checkbox" name="stat" value="Administrator" onChange="changing()" tabindex="6"> Administrator <div id="dauer" style="display: none;"> <input type="text" value="LDAP Name" tabindex="7" readonly> <input type="text" name="kuerzel" value="" tabindex="8"> <br><br> </div> 2.) Wenn ich mich zum Beispiel auf meiner Seite einlogge und dann auf den submit Button klicke wird dieser noch mit „verarbeitet“. Wenn ich allerdings mit Enter abschicke, dann „bemerkt“ die Seite den submit Button scheinbar gar nicht, und schickt das ganze dann, ohne den submit button ab. Da die Funktionen fast alle darauf aufbauen, dass eben ein submit button (bzw. ein bestimmter- halt von Funktion zu Funktion unterschiedlich) existent ist/ benutzt wurde (also isset() ), wird dann natürlich nichts ausgeführt. Komischerweise ist das nur bei einem einzigen Button so. Irritierend an der Sache ist, dass alles wie immer ist. Mein Ausbilder findet soweit auch keinen Fehler und die anderen Kollegen hier finden ebenfalls keinen Fehler, und können sich das nicht erklären (vorallem, weil es ja an anderen Stellen klappt). Ich freue mich über jede Hilfe und eine eventuelle Erklärung dazu (damit ich auch erklären kann, warum etwas so klappt und nicht so. Kommt ja immer gut ). Vielen dank für jede Hilfe. Mit freundlichen Grüßen, Cryver P.S.: Hoffe, es ist soweit alles verständlich, und es besteht kein Fehler.
  11. Cryver

    Multiprozessing

    Hallo Victorinox, Zu a.) Ja, dass habe ich bisher gelernt. Zu b.) Wie gesagt, Wikipedia wird bei mir im Betrieb nur äußerst ungerne als Quelle gesehen. Gestern hat ein anderer Azubi ein Referat zu RAID- Systemen gehalten, als die Gesellen dann gesehen haben, dass Wikipedia die Quelle von allem ist, waren sie absolut gar nicht erfreut. Wir müssen ebenfalls eine Quelle angeben. Ich habe deshalb gar nicht erst bei Wikipedia geschaut, sorry :/ Mit freundlichen Grüßen, Cryver
  12. Cryver

    Multiprozessing

    Ich wünsche einen schönen Vormittag, Ich bin Azubi zum Fachinformatiker, nun soll ich ein Referat zu Multiprocessing machen. Ich habe davon bisher absolut keine Ahnung und hab mich durchgegooglet, nun schon seit Freitag. Auf der Arbeit hat niemand ein Buch oder ähnliche Nachschlage Werke. Ich habe mir natürlich auch Englische Seiten angeschaut. Wikipedia wollte ich möglichst vermeiden, da diese Quelle bei uns im Betrieb nur ungerne gesehen wird. Über Google hab ich hierher gefunden, allerdings geht der von DerAlex gepostete Link nicht. Kann mir jmd. vielleicht einen Link geben, oder ähnliche Hilfestellung, um mir weiter zu helfen? Das Referat soll ca. 15 Minuten lang sein und am Freitag um 11 Uhr vorgestellt werden. Ich wollte das Referat im Grunde schon alleine machen, aber ich finde einfach nichts, wo Multiprocessing auch nur annähernd (bzw. für mich verständlich) geklärt wird. Kurz zum Referat, Zitat von der Aufgabenbeschreibung: Ich hab meine Frage hier im Thread gestellt, weil ich nicht extra einen neuen aufmachen wollte, hoffe, es ist so in Ordnung. Mit freundlichen Grüßen, Cryver

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