hilfe hausaufgabe python

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

HerrHagen hat geschrieben:Klar war es das. Mal abgesehen davon, dass alle Befehle groß geschrieben waren, ist alles dabei was in den Beispiel enthalten ist. :wink:
Es mag ja sein, dass die Befehle und Schlüsselwörter alle gleich sind - das heißt aber nicht, dass es sich auch wirklich um denselben BASIC-Dialekt handelt ;-)
Barabbas
User
Beiträge: 349
Registriert: Dienstag 4. März 2008, 14:47

Ich würde euch wirklich gerne bei der Lösung dieses Problemes helfen - leider brauche ich aber "Das Grosse Commodore 64 Buch" um meinen Monitor damit auf Augenhöhe zu bringen und kann entsprechend nicht reinschauen ;)

Gruß,

brb
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Barabbas hat geschrieben:Ich würde euch wirklich gerne bei der Lösung dieses Problemes helfen - leider brauche ich aber "Das Grosse Commodore 64 Buch" um meinen Monitor damit auf Augenhöhe zu bringen und kann entsprechend nicht reinschauen ;)
Kein Problem, bei mir steht es im Regal. Auf Seite 279 liest man ebenfalls Remark :-)

Um Speicherplatz zu sparen und die Ausführungsgeschwindigkeit zu erhören kann man übrigens auch so vorgehen:

Code: Alles auswählen

10 :
20 REM Wichtiger Kommentar
30 :
40 print "hier gehts weiter"
BlackJack

Wie gesagt, dafür habe ich immer ein Programm verwendet, das Kommentare und überflüssige Leerzeichen entfernt und möglichst viele Zeilen zusammenfasst.

Danach sieht das Programm aus meinem letzten Beitrag so aus:

Code: Alles auswählen

1 data500,200,100,50,20,5:dimnw(6):fori=1to6:readnw(i):next:dimaz(6):fori=1to6:az(i)=1000:next:dimz(6)
2 print:print:print"geldautomat":print"-----------":print:gs=0:fori=1to6:gs=gs+az(i)*nw(i):next:print"inhalt =";gs;"euro":print:input"auszahlbetrag";b
3 ifb>gsthenprint"nicht genug geld vorhanden":goto2
4 fori=1to6:z(i)=0:next:fori=1to6:n=int(b/nw(i)):ifn>az(i)thenn=az(i)
5 az(i)=az(i)-n:z(i)=n:b=b-n*nw(i):nexti:ifb>0thenprint"kann nicht passend auszahlen":goto2
6 print"auszahlung:":fori=1to6:ifz(i)>0thenprint" ";z(i);"x";nw(i)
7 nexti:goto2
Bringt teilweise sogar einen leichten Schutz gegen Veränderungen, denn Zeile 2 kann man so gar nicht per Hand eingeben, selbst mit Abkürzungen ist das immer noch länger als 80 Zeichen.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

BlackJack hat geschrieben: Bringt teilweise sogar einen leichten Schutz gegen Veränderungen, denn Zeile 2 kann man so gar nicht per Hand eingeben, selbst mit Abkürzungen ist das immer noch länger als 80 Zeichen.
Ist ja interessant. Liegt das daran, dass einige Abkürzungen länger als 1 Byte sind?
BlackJack

Die Zeile ist einfach zu lang um sie normal eingeben zu können. Für die Eingabe hat man nur 80 Zeichen auf dem Bildschirm, technisch sind aber 251 Bytes pro BASIC-Zeile möglich, wobei jedes Schlüsselwort nur ein Byte belegt.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Wie wir sehen kommt die Quellcodekomprimierung mit JavaScript wieder in Mode..
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
KlaliB
User
Beiträge: 50
Registriert: Mittwoch 13. Mai 2009, 13:28

was ist denn dieses c64 von dem ihr redet ?
war das nicht mal eine videospielkonsole oder so?
was hat da smit programmieren zu tun :?:
problembär

KlaliB hat geschrieben:was ist denn dieses c64 von dem ihr redet ? war das nicht mal eine videospielkonsole oder so?
Ja, genau:

http://www.zock.com/8-Bit/D_GS64.HTML
http://www.jbrain.com/vicug/gallery/c64dtv?page=1

Gruß
Zuletzt geändert von problembär am Samstag 16. Mai 2009, 19:11, insgesamt 1-mal geändert.
KlaliB
User
Beiträge: 50
Registriert: Mittwoch 13. Mai 2009, 13:28

problembär hat geschrieben:
KlaliB hat geschrieben:was ist denn dieses c64 von dem ihr redet ? war das nicht mal eine videospielkonsole oder so?
Ja, genau:

http://www.zock.com/8-Bit/D_GS64.HTML

Gruß
und was hat es mit phyton zu tun?
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

KlaliB hat geschrieben:und was hat es mit phyton zu tun?
Mit phyton? - Nichts! :D
problembär

und was hat es mit phyton zu tun?
Na ja, ich denke mal, man konnte die Phyton-Programmiergeräte

http://www.elhof.de/html/phyton.html

damit verbinden, und dann das Ding doch programmieren.

Gruß

Edit: Schade, numerix war schneller ...
Zuletzt geändert von problembär am Samstag 16. Mai 2009, 19:16, insgesamt 1-mal geändert.
KlaliB
User
Beiträge: 50
Registriert: Mittwoch 13. Mai 2009, 13:28

numerix hat geschrieben:
KlaliB hat geschrieben:und was hat es mit phyton zu tun?
Mit phyton? - Nichts! :D
ich check garnix mehr :?
problembär

Na gut, will mal nicht so sein:
Der C64 war wohl der meistverkaufteste Heimcomputer in den 1980er Jahren. Man konnte ihn in BASIC programmieren.
BlackJack hat ein Code-Listing Deines Problems in dieser Sprache gepostet.
Python ist auch eine Sprache.
Man könnte den Code dorthin übersetzen.

Wenn man denn nur ein wenig von Programmierung verstünde.

Gruß
KlaliB
User
Beiträge: 50
Registriert: Mittwoch 13. Mai 2009, 13:28

ach sag das doch so 8)
ich hab die ganze zeit versucht irgendeinen fehler zu finden dort weil das nicht ging
wie übersetz ich das jetzt?
BlackJack

Also "Videospielekonsole" verbitte ich mir! Das ist ein vollwertiger Heimrechner, auf dem man auch seriös arbeiten konnte. Der hat mir damals in der Schule jedenfalls bei Textverarbeitung und auch in Mathe gute Dienste geleistet.

http://www.c64-wiki.de/index.php/C64
http://www.c64-wiki.de/index.php/C64_II

Was das mit Programmieren zu tun hat? Nunja es ist ein Rechner, also kann man den auch programmieren. Die Programmiersprache BASIC ist fest eingebaut, das heisst man kann gleich nach dem Einschalten BASIC-Programme eingeben und ausführen. Und ich habe halt mal Deine Aufgabe in ein paar Zeilen BASIC auf dem C64 gelöst. Zumindest denke ich das war die Aufgabe, denn die wurde bisher ja eher etwas schwammig von Dir formuliert.

Das wäre IMHO auch für Dich der erste Schritt: Die Aufgabe präzise formulieren. Was ist gegeben, was soll heraus kommen. Welche Anforderungen werden an das Programm gestellt.
KlaliB
User
Beiträge: 50
Registriert: Mittwoch 13. Mai 2009, 13:28

also ich hab so einen zettel auf dem steht:
schreibe ein Phytonprogramm zur stücklung beliebiger beträge!
das gesamt thema ist Der geldautomat
BlackJack

@KlaliB: Das ist ziemlich knapp formuliert. Im einfachsten Fall kann dass dann ja wirklich einfach nur das Stückeln eines Betrags sein, ohne dass man zum Beispiel berücksichtigt wieviel im Geldautomaten von jedem Schein vorhanden ist. Habe ich also sogar etwas zu viel gemacht in dem BASIC-Programm. :-)

Wenn man es etwas ausbaut, kann man dann noch, wie in meinem Programm, den Inhalt des Bankautomaten berücksichtigen, und auch die schon angesprochene "Haushaltsmischung", also verschiedene Strategien um den Betrag zu stückeln.

Du müsstest jetzt also bestimmen welche Eingangsgrössen Du hast, sowohl (relativ) feste, als auch Variable, und was aus dem Algorithmus heraus kommen soll.
problembär

KlaliB hat geschrieben:also ich hab so einen zettel auf dem steht:
schreibe ein Phytonprogramm zur stücklung beliebiger beträge! das gesamt thema ist Der geldautomat
Womit man wieder beim Anfang wäre :P.

Schätze mal, wenn man "100" eingibt, soll er "50, 20, 20, 10" ausgeben, usw..
Das für die üblichen Eingabeträge (50, 100, 150, 200, 250, 300, 350, 400, 450, usw.).
BlackJack hat geschrieben:Also "Videospielekonsole" verbitte ich mir! Das ist ein vollwertiger Heimrechner, auf dem man auch seriös arbeiten konnte.
Ja nee, is' klar. Mit Aussagen wie "mit dem Ding kann man doch nur spielen" konnte man ja damals die Leute richtig ärgern. Fand ich witzig, daß heute nochmal über den C64 zu hören (ich hatte mich ja schon als Speccianer geoutet).
Die uralte Rivalität ist heute natürlich völlig obsolet, beide Kisten leben (bei mir) heute in der Emulation friedlich nebeneinander.
Übrigens hatte eine Kommilitonin von mir Anfang der 1990er all' ihre Universitätshausarbeiten (teilweise > 100 Seiten, mit Fußnoten) auf einem C64 geschrieben. Hat mich damals gewundert, aber anscheinend ging sogar das.

Gruß
derdon
User
Beiträge: 1316
Registriert: Freitag 24. Oktober 2008, 14:32

Warum nicht? Wenn die das mit LaTeX gemacht hat, war das doch reiner Text. Ob Fußnoten dabei waren oder nicht, spielt dann keine Rolle. Viel Platz nehmen solche Dateien auch nicht ein.
Antworten