Autor |
Beitrag |
ChuckNorris
Hält's aus hier
Beiträge: 4
|
Verfasst: Sa 24.05.03 21:24
Hallo, ich mach mich gleich mal unbeliebt, indem ich Fragen stelle, die euch wahrscheinlich ankotzen. Also gut, am Montag werde ich vor einer Info-Klausur sitzen und wahrscheinlich keine Ahnung haben, es sei denn einer hier kann mir helfen. Wir haben bisher nur sehr einfache Programme gemacht, hauptsächlich im Bereich von geometrischen Figuren wir Dreieck, Quadrat und so weiter.Außerdem haben wir ein Programm zum pascalschen Dreieck gemacht, eins zum Thema magisches Dreieck und eins, in dem wir ein Feld mit Zufallszahlen verwendet haben. Leider hat sich niemand im Kurs die Mühe gemacht, irgendwas mitzuschreiben. Heute hatten wir dann ne Mail im Kasten, in der die Klausur-Themen mitgeteilt wurden. Aber seht selbst:
U-Inhalte - Wiederholung für die Klausur
1.Zauberquadrate - ungerade
a)Verfahren am Beispiel demonstrieren und die wesentlichen Schritte
nennen können
b)Programm dazu angeben können
2.Pascalsche Dreieck
a)Verfahren zur Erzeugung am Beispiel demonstrieren können
b)Prozedur Berechnung angeben können
3.Delphi-Programmierung
a)die entscheidenden Ausführprozeduren zu den bisher besprochenen Programmen (Rechteck, Quader, Dreieck, Zahlenraten) angeben können. Gemeint sind jeweils die "rechnenclick"- bzw. die "ratenclick"-Prozeduren.
b)Separate Berechnungsprozeduren, wie die Procedur dreieck, für die anderen geometrischen Programme zusammen mit den Ausführungsprozeduren (vgl. a)) angeben können. Das wären Prozeduren "rechteck" und "quader",die wie in dem Dreieckbeispiel die dort zu berechnenden Größen (flaeche, umfang, diagonale beim Rechteck und oberflaeche, volumen, raumdiagonale beim Quader) separat berechnen.
4.Ein- und Ausgabe-Prozeduren für zweidimensionale Felder kennen und angeben können.
5.die Befehle zur Erzeugung von Zufallszahlen kennen und angeben können.
Ich und alle meine Freunde sind gerade in irgendwelchen Foren unterwegs, um die Lösungen dieser Aufgaben zu finden. Da ihr euch hier ja schon Delphi-Forum nennt, gehe ich mal davon aus, dass zumindest ein kleiner Teil meiner Probleme hier gelöst werden könnte. Auch wenn ihr nur einen einzigen Punkt auf meiner Liste erklären könnt, bitte postet es! Oder wenn ihr wirklich nichts wisst, dann sagt mir vielleicht, in welchen anderen Foren ich mich umsehen könnte.
Danke im voraus, ChuckNorris.
|
|
Alibi
      
Beiträge: 458
Win2K SP3
Delphi 6 Ent
|
Verfasst: Sa 24.05.03 21:35
Wie soll man dir zu 1,2 und 3 helfen können, ohne das ganze nicht zu kennen? Ohne "Hintergrund"informationen wohl garnicht.
Zufallsfunktionen:
randomize: Initialisiert den Zufallsgenerator, sollte im Programm nur einmal aufgerufen werden, idealerweise im OnCreate des Formulars.
random(x): Gibt eine Zufallszahl zwischen 0 und x wieder.
|
|
ChuckNorris 
Hält's aus hier
Beiträge: 4
|
Verfasst: Sa 24.05.03 22:43
OK, du willst "Hintergrund"? Kein Problem:
1.) Zauberquadrat:
Falls du nicht weißt, was ein Zauberquadrat iat, hier die Kurzfassung: Ein Quadrat mit (in unserem Fall) 3x3 Feldern, in denen die Zahlen von 1 bis 9 stehen. wenn man die 3 Zahlen in jeder Reihe addiert, kommt immer als Ergebnis 15 (egal ob vertikal, horizontal oder diagonal). Und wir hatten ein Programm, dass das Einsetzen der Zahlen automatisch erldigt hat. Es gab da einen gewissen Rhytmus, der mir aber nicht mehr einfällt. Es war in etwa so: man fing bei 1 an und ging dann nach rechts oben, setzte die 2 ein, oder jedenfalls irgendwie so.
2.) pascalsches Dreieck
Was das ist weißt du ja wohl, ansonsten auch hier die Kurzfassung:
Quelltext 1: 2: 3: 4: 5:
| 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 |
usw. Man muss immer die beiden oberen Zahlen zu der darunter zusammenziehen. Auch hierfür hatten wir ein Programm, wobei unser Lehrer besonders auf die Prozedur Berechnung Wert legt.
3.) Programmierung
Wir hatten drei Programme, die Rechteck, Quader und Dreieck hießen. Die funktionierten aber alle gleich: Man gab die Kantenlängen der Figuren ein und bekam die entsprechenden Diagonalen, Rauminhalte usw ausgegeben.
Das Programm Zahlenraten ging folgendermassen: Man agb eine Zahl ein und bakem ausgegeben, ob die gesuchte Zahl oberhalb oder unterhalb dieser Zahl lag. Und das machte man solange, bis man die gesuchte Zahl gefunden hatte.
Moderiert von tommie-lie: Code-Tags hinzugefügt -> pascalsches Dreieck
|
|
bis11
      
Beiträge: 1247
Erhaltene Danke: 2
Apple Mac OSX 10.11
|
Verfasst: Sa 24.05.03 23:02
Ich finde das hier alles etwas komisch, korrigiere mich, wenn ich da falsch liege, aber Du möchtest, das wir hier Dir den Sourcecode presentieren für Deine Funktionen ?
|
|
Alibi
      
Beiträge: 458
Win2K SP3
Delphi 6 Ent
|
Verfasst: Sa 24.05.03 23:07
Und du meinst, dem Lehrer fällt nicht auf, wenn völlig andere Procedures/Funktionen kommen?
|
|
ChuckNorris 
Hält's aus hier
Beiträge: 4
|
Verfasst: Sa 24.05.03 23:24
Hört zu, ich kann schon verstehen, was ihr euch jetzt denkt. Der Idiot ist zu blöd dafür, und im Prinzip habt ihr Recht. Ich hab keinen Peil mehr davon, und ich dachte, ihr hättet vielleicht ne Ahnung von der Sache, aber dem scheint ja nicht so zu sein. Ich werds wohl woanders versuchen müssen....
|
|
bis11
      
Beiträge: 1247
Erhaltene Danke: 2
Apple Mac OSX 10.11
|
Verfasst: Sa 24.05.03 23:28
Das hat ja keiner gesagt, das wir keine Ahnung haben. Nur Du solltest den Code schon selber schreiben, denn wenn Dich Dein Lehrer fragt, warum hast Du das jetzt so geschrieben und nicht sorum, was antwortest Du dann ? Den Code habe ich aus dem Internet aber keinen Plan davon. Es wird Dir hier jeder weiterhelfen wenn Du hier eigenen Code schreibst und sagst in Zeile X bekomme ich den Fehler XY.
|
|
tommie-lie
      
Beiträge: 4373
Ubuntu 7.10 "Gutsy Gibbon"
|
Verfasst: Sa 24.05.03 23:50
Also irgendwie verstehe ich die Fragen nicht.
Wenn ihr etwas programmiert habt, werdet ihr sicherlich den Quellcode haben. Kein Info-Lehrer stellt sich vorne hin, wirft Quellcode an die Wand und erklärt den Schülern, was der genau macht, führt anschließend das Programm aus und lässt sich von den Schülern feiern. Normalerweise werden die Grundlagen vermittelt und die Schüler machen den Rest dann selbst, evtl kriegen sie Tipps.
Was also deine ganzen programmspezifischen Fragen angeht, so sollten diese im Quellcode beantwortet werden, udn nur dort. Den Rhytmus in diesem magischen Quadrat gibt es wirklich, müsste aber selbst erst nachgucken; zu finden ist er logischerweise im Quellcode des entsprechenden Programmes.
Was die dritte Frage angeht, so ist das reine Mathematik:
Der Benutzer gibt in einem Editfeld die Zahl ein. Diese wird in die aus der spätestens 9. Klasse bekannten Formeln eingesetzt. Das Ergebnis gibt man wieder irgendwo aus (Label, anderes Edit oder wo auch immer). Für die Diagonale eines Quaders mit den Kantenlängen a, b und c (Variablen sind bereits gesetzt) wäre die Berechnung schlichtweg:
Delphi-Quelltext 1:
| d := sqrt(sqr(a) + sqr(b) + sqr(c)); |
Die Funktionen befinden sich in der Unit Math, die man entsprechend einbinden muss.
Was hier aber der springende Punkt ist, ist, daß unsere Prozeduren, die wir posten würden, vielleicht ganz anders aussehen als die vom Lehrer. Der hat nämlich mit an Sicherheit grenzender Wahrscheinlichkeit versucht, den Code so nachvollziehbar wie möglich zu machen, damit er das ganze noch erklären kann und die Schüler dem Code folgen können. Optimiert ist der Code dadurch noch lange nicht. Obiges Beispiel hätte man zum Beispiel auch mir Zwischenwerten realisieren können, und zwar so:
Delphi-Quelltext 1: 2: 3: 4: 5:
| temp1 := sqr(a); temp2 := sqr(b); temp3 := sqr(c); temp4 := temp1 + temp2 + temp3; d := sqrt(temp4); |
Lässt sich leichter nachvollziehen, bzw nachverfolgen, der obige Einzeiler ist aber wesentlich optimierter. Genauso sieht es beim pascalschen Dreieck und dem magischen Quadrat aus: Man kann das ganze unglaublich kompakt realisieren, mit minamelen Speicheranforderungen, aber ein Anfänger würde da nie durchblicken. Verstehst du jetzt, daß man dir auf diese Weise einfach nciht helfen kann? Theoretische Antworten sind das einzige, was man dir geben kann, und die stehen genauso in jedem Mathe-Buch (selbst in meinen Schüleruden Mathematik).
Wie bis11 schon gesagt hat, wenn du deine Prozeduren versuchst, selbst zu rekonstruieren (irgendwas wird ja wohl im Hirn hängengeblieben sein), und du stößt auf Fehler, werden wir dir jederzeit helfen, aber einen kompletten Quellcode können wir dir einfach nicht liefern.
_________________ Your computer is designed to become slower and more unreliable over time, so you have to upgrade. But if you'd like some false hope, I can tell you how to defragment your disk. - Dilbert
|
|
ChuckNorris 
Hält's aus hier
Beiträge: 4
|
Verfasst: Sa 24.05.03 23:57
OkOk, ich verstehe. Danke erstmal. Aber bei uns läuft der Unterricht eh seltsam ab. Unser Lehrer wirft einiges an die Tafel, und lässt uns den Rest selbst erschließen. Dabei hat man nicht die Möglichkeit, großartig was zu notieren, da viel zu schnell das nächste Thema drankommt. Und längst nicht alle bei uns haben überhaupt Delphi, ich habs zum Glück, aber nur die Trial von 7. Naja, ich hock mich hin. Vielleicht peil ichs ja noch. Achso, wegen dem Quellcode. Wär ja schön, wenn ich den hätte. Dann bräuchte ich hier keinem auf die Nerven zu gehen, weil ich dann zur Not alles auswendig lernen würde.
|
|
bis11
      
Beiträge: 1247
Erhaltene Danke: 2
Apple Mac OSX 10.11
|
Verfasst: So 25.05.03 00:00
Ein Tipp noch von mir. Wenn es Dir gefällt in Delphi zu programmieren, kannst Du ja auch 25 € investieren und das Buch Delphi für Kids kaufen. Dort ist eine Delphi 3 Version dabei, womit Du das Programm erstellen kannst und auch ausprobieren kannst und bist nicht auf die 30 Tage Testversion angewiesen.
|
|
tommie-lie
      
Beiträge: 4373
Ubuntu 7.10 "Gutsy Gibbon"
|
Verfasst: So 25.05.03 00:52
Oder du ziehst dir eine etwas neuere Variante, aber kostenlos:
link entfernt
Das ist Delphi 6 Personal, zwar darf man damit seine Programme nciht verkaufen oder sonstwas machen, und es fehlt zum Beispiel eine Datenbankanbindung, aber für die Schule reicht die allemal. Der Link bewegt sich in einer rechtlichen Grauzone, ganz legal ist er nicht, aber ich würde sagen, richtig illegal auch nicht...
Aber dafür läuft das Teil im Vergleich zur 7er Trial unbegrenzt.
Moderiert von tommie-lie: Link entfernt...
_________________ Your computer is designed to become slower and more unreliable over time, so you have to upgrade. But if you'd like some false hope, I can tell you how to defragment your disk. - Dilbert
Zuletzt bearbeitet von tommie-lie am So 25.05.03 12:05, insgesamt 1-mal bearbeitet
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 25.05.03 04:18
Ein Anruf eines Freudes bei Borland hat das ergeben:
Zitat: |
Es ist tatsächlich so, dass sie auch die Personal-Version von Delphi _nur noch_ verkaufen. Für 129,- EUR.
Wenn man selber noch einen Link von _früher_ hat, dann darf man sich diese Version auch noch heute holen.
ABER: Sich jetzt diesen Link aus Google oder einem Forum zu organisieren, ist NICHT gestattet.
Er musste aber zugeben, dass sie natürlich auch nichts machen können, wenn man sie sich jetzt einfach herunterlädt. Warum sie noch auf dem Server ist und Borland keine Schutzmaßnahmen ergriffen hat, konnte er auch nicht sagen.
|
Empfehlung an die Verantwortlichen: Link entfernen!
|
|
GSE
      
Beiträge: 740
Win 2k, Win XP Pro
D5 Prof, D6 Ent, D2k5 PE
|
Verfasst: So 25.05.03 12:04
Um mal was zum Pascalschen Dreick zu sagen:
Das ist eigentlich relativ einfach:
Ich hab´dazu 2 For-Schleifen und ´ne Funktion Fakultaet gebraucht:
Die Variable der ersten For-Schleife ist die Zeile, die der zweiten die Spalte.
Nun kannst du dir jede Zahl ausrechnen mithilfe der Formel:
Fakultaet(zeile) / (akultaet(spalte) * Fakultaet(zeile-spalte)).
hoffe hat was geholfen
mfg
GSE
_________________ Programming today is a race between software engineers striving to build bigger and better idiot-proof programs
and the universe trying to produce bigger and better idiots. So far, the universe is winning. (Richard Cook)
|
|
|