Veröffentlicht 13. Dezember 200519 j Hallo zusammen. Von der Schule aus haben wir den Auftrag bekommen, ein C-Programm zu schreiben welches die Anzahl Möglichkeiten ausrechnet, von einer 100$ Note rückgaben in 50, 20, 10, 5, 2, und 1 Noten zu machen. Bedingung: 100$ Aufgabe: Wieviele Möglichkeiten gibt es, 100$ in anderen Noten (50, 20, 10, 5, 2, 1) zu wechseln? Die Lösung beträgt so um die 4000 Möglichkeiten, aber wie um gotteswillen kann man dies programmieren in C..? Bitte helft mir, hatte schon lange dran rum probiert aber kein richtigen Lösungsansatz gefunde. Wäre es evtl. mit Rekursiven Funktionen zu lösen..? oder nur mit Schleifen? ..leieder habe ich schon zuviel Ziet verplämpert beim selber probieren..muss das Programm schon Donnerstag (15.12.05) morgen abgeben.. Vielen, vielen Dank schon im voraus!! mfg santacruz
13. Dezember 200519 j Du kannst eigentlich alles was du rekursiv programmieren kannst auch mit Schleifen lösen und umgekehrt. Es kommt halt immer drauf an ob es auch Sinn macht. Wie kommst du auf 4000 Möglichkeiten? Welche Überlegungen hast du dazu bereits angestellt?
13. Dezember 200519 j Ah, ach soo, okay, danke. Jedoch ist Meiner Meinung nach das lösen von "Problemen" mit Schlaufen einfacher als Rekursiv.. Das hat uns der Lehrer bereits mitgeteilt, damit wir ungefähr wissen, ob wir auf dem richtigen Weg sind (beim testen des Programms). Jedoch habe ich leider vergebens schon viel versucht und Überlegungen gemacht.. ..Kann mir jemand auf die Sprünge helfen..?
14. Dezember 200519 j Hi santacruz, schau dir das mal an: http://www.laurentianum.de/backtr12.htm Das ist zwar eine Lösung in Pascal, aber dennoch ein möglicher Ansatz um es in C umzuschreiben:
14. Dezember 200519 j Hi santacruz, die Lösung ist 4562, und überraschend einfach zu programmieren! Den entscheidenten Hinweis fand ich hier (Stichwort Baumrekursion und Wechselgeld): http://hal.iwr.uni-heidelberg.de/lehre/inf1-ws02/index.html Sagt Bescheid, wenn jemand den C-Quelltext braucht.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.