Aufgaben von Fab an den Marc < LOGO < Programmiersprachen < Praxis < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 18:24 Mi 25.06.2003 | Autor: | Fab |
Also fangen wir mal mit etwas leichtem an . . .
In der folgenden Prozedur soll ein Rechteck gezeichnet werden, welches zwei weitere Rechtecke enthält !
Die Längen der kürzeren Rechteckseiten betragen 20, 40 und 60 Einheiten, die der längeren Rechtckseiten 60, 80 und 120 Einheiten !
Pr Rechtecke
wh 2 [vw 20 re 90 vw 60 re 90]
sh
li 90
vw 10
li 90
vw 10
aufkurs 0
sa
wh 2 [vw 40 re 90 vw 80 re 90]
li 90
sh
vw 30
li 90
vw 20
sa
aufkurs 0
wh 2 [vw 80 re 90 vw 140 re 90]
ende
So das war Nummer 1 !
2.
Zeichen eine Prozedur die eine Raute erzeugt (Seitenlänge 40 Winkel : 30 und 150)
Pr Raute
li 30 vw 40 re 60 vw 40 re 120 vw 40 re 60 vw 40
ende
oder mal wieder elegant
pr Raute
wh 2 [li 30 vw 40 re 60 vw 40 re 150]
ende
So nächste . . .
ne Raute mit beliebiger Seitenlänge und beliebigem Winkel
Parameter: :l = Länge :w = Winkel
Pr Raute :l :w
wh 2 [li :w vw :l re 90 - :w vw :l re 180 - :w]
ende
Mmh also ich habe gerade das mit Raute ausprobiert aber das funktioniert nicht !
Habe aber jetzt eine Pruzedur für Vielecke geschrieben !
Pr Vieleck :l :e
wh :e [vw :l re 360 / :e]
ende
Parameter :
:l = Länge
:e = Anzahl der Ecken bzw. Winkel
Diese Prozedur bewirkt(so hoffe ich), dass eine Figur mit der eingegebenen Länge und mit der Anzahl der eingegebenen Winkel erschaffen wird.
Bsp.: Vieleck 100 3,
schafft ein gleichseitiges Dreieck mit der Seitenlänge 100 ! ! !
Nu mal wieder was Einfaches !
Einen Kreis
Pr Kreis
wh 360 [vw 1 re 1]
ende
*G*
Jetzt ein Fenster mit Kreuz drin
Pr Fenster :l
wh 4 [re 90 wh 4 [vw :l re 90]]
ende
Jetzt mal drei Nikolaushäuser nebeneinander
Pr niklaushäuser
wh 3 [Nikolaushaus li 90]
ende
Nun zwei 6-Ecke nebeneinander und dann eines mittig drunter
Pr Sechsecke
Vieleck 100 6
re 120
Vieleck 100 6
Sh
vw 100
li 60
Vieleck 100 6
Ende
Aaaaaaaah die Raute mit beliebigem Winkel und beliebiger Länge
Pr Raute :l :w
wh 2 [vw :l re :w vw :l re 180 - :w]
ende
Mit Hilfe Dieser Prozedur kann ich nun auch eine andere Prozedur schreiben,
nämlich eine Blume, bestehend aus vielen Rauten, mit 12 Zacken
Pr Blume
Wh 12 [Raute 100 30 re 30]
ende
So jetzt mache ich erstmal Nachhilfe und dann mache ich mal später weiter mit den etwas komplizierteren Prozeduren ! ! !
Der Fab
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 18:35 Mi 25.06.2003 | Autor: | Marc |
Hallo Fab,
ich hab' jetzt keine Zeit mehr, die Aufgaben anzusehen, werde das aber bis morgen Mittag geschafft haben.
Ich finde es aber schon mal sehr gut, dass du überhaupt Aufgaben gemacht hast .
Bis morgen,
Der Marc
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 10:23 Do 26.06.2003 | Autor: | Marc |
Hallo Fab,
> In der folgenden Prozedur soll ein Rechteck gezeichnet werden,
> welches zwei weitere Rechtecke enthält !
> Die Längen der kürzeren Rechteckseiten betragen 20, 40 und 60
> Einheiten, die der längeren Rechtckseiten 60, 80 und 120
> Einheiten !
Mmh, die Aufgabenstellung ist mir noch nicht ganz klar. Die Rechtecke sollen also ineinander geschachtelt sein? Und die wahrscheinlich sollen sie dann mittig inm jeweilig äußeren Rechteck liegen.
> Pr Rechtecke
> wh 2 [vw 20 re 90 vw 60 re 90]
erstes und kleinstes Rechteck mit den Seitenlängen 20 und 60
> sh
> li 90
> vw 10
> li 90
> vw 10
> aufkurs 0
> sa
Die Kröte steht auf der linken unteren Ecke des zweigrößten Rechtecks, und schaut nach "oben".
> wh 2 [vw 40 re 90 vw 80 re 90]
Zweigrößtes Rechteck gezeichnet.
> li 90
> sh
> vw 30
> li 90
> vw 20
> sa
> aufkurs 0
> wh 2 [vw 80 re 90 vw 140 re 90]
> ende
>
> So das war Nummer 1 !
OK, das konnte ich sehr gut nachvollziehen und müßte richtig sein.
Da hätte ich noch eine Idee für eine ähnliche Aufgabe.
Zeichne fünf Dreiecke, deren Seitenlängen 20x40, 40x60, 60x80, 80x100 und 100x120 betragen.
a) Welche drei verschiedene Möglichkeiten, das in LOGO zu programmieren, fallen dir ein? (Grobe Umschreibung reicht).
b) Realisiere die eleganteste Möglichkeit in LOGO!
Später dann zu den anderen Aufgaben.
Gruß,
Marc
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 15:47 Do 26.06.2003 | Autor: | Fab |
Also zu den Dreiecken!
Da gibt es einmal die Version ohne Variablen und ohne whd. und so
also jeden Schritt einzeln...
Dann gibt es die, wo man jedes Dreick zwar mit wdh. macht aber trotzdem noch einzeln
Und dann die Masterlösung . . .
Äääääh Momentmal wie soll denn da die Dritte Seite aussehen
und was für'n Dreieck soll des denn sein?!Gleichschenklig, beliebig oder Rechtwinklig ? !
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 13:27 Do 26.06.2003 | Autor: | Marc |
Hallo Fab,
> 2.
> Zeichen eine Prozedur die eine Raute erzeugt (Seitenlänge 40
> Winkel : 30 und 150)
>
> Pr Raute
> li 30 vw 40 re 60 vw 40 re 120 vw 40 re 60 vw 40
> ende
Das ist doch aber jetzt eine Raute mit den Innenwinkeln 60° und 120°, oder? Sollten nicht aber 30° und 150° die Innenwinkel sein?
> oder mal wieder elegant
Elegant ist immer gut...
> pr Raute
> wh 2 [li 30 vw 40 re 60 vw 40 re 150]
> ende
OK, das ergibt die gleiche Raute wie oben, aber immer noch nicht die Raute aus der Aufgabenstellung... oder ich habe die Winkelangaben falsch interpretiert und es sind nicht die Innenwinkel.
Bis gleich,
Marc
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 15:51 Do 26.06.2003 | Autor: | Fab |
Ääääääääähm
also wenn da ein 30° Winkel hinsollte habe ich einfach mal re 30 gemacht!
Und wenn jetzt da am Anfang erst li 30 is, dann muss ich doch, um 30° in die andere Richtung zu kommen re 60 machen weil wen ich nu(h)r *G* 30 mache dann ist der ja wieder gerade....
Obwohl wenn der gerade ist geht das ja auch!!!
Ok beim nächsten mal denke ich erst bevo ich was mache ...
:-(
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 13:33 Do 26.06.2003 | Autor: | Marc |
Hallo Fab,
> ne Raute mit beliebiger Seitenlänge und beliebigem Winkel
>
> Parameter: :l = Länge :w = Winkel
>
> Pr Raute :l :w
> wh 2 [li :w vw :l re 90 - :w vw :l re 180 - :w]
> ende
>
>
>
> Mmh also ich habe gerade das mit Raute ausprobiert aber das
> funktioniert nicht !
Die Rechtsdrehung um "90 -:w" Grad würde ich noch mal überdenken, das kommt meiner Meinung nach nicht hin.
Probier's doch noch mal
Gruß,
Marc
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 14:48 Do 26.06.2003 | Autor: | Marc |
Hallo Fab,
> Habe aber jetzt eine Pruzedur für Vielecke geschrieben !
>
> Pr Vieleck :l :e
> wh :e [vw :l re 360 / :e]
> ende
>
> Parameter :
> :l = Länge
> :e = Anzahl der Ecken bzw. Winkel
Das sehe ich so auch nicht ein...
Also, allgemein hat ein Vieleck mit e Ecken eine Innenwinkelsumme von (e - 2)*180°; ein Innenwinkel w ist dann w = (e-2)*180° / e groß.
(Die Innenwinkelsumme hängt natürlich davon ab, wie viele Ecken das Vieleck hat: Beim Dreieck haben wir eine Innenwinkelsumme von 180°, bei Viereck schon 360°, beim Fünfeckl 540° etc.)
Um das Vieleck mit der Kröte zu zeichnen, braucht man aber die Außenwinkel, also den Nebenwinkel zum Innenwinkel.
Das heißt, ist eine Seite des Vielecks fertig gezeichnet, dann muß sich die Kröte um 180°-w nach rechts drehen. ich würde also so vorgehen:
Pr Vieleck :l :e
setze :w = (:e-2)*180 / e (Innenwinkel)
setze :a = 180-w (Außenwinkel)
wh :e [vw :l re :a]
ende
(Die genaue syntax von "setze" kenn ich leider nicht, aber es dürfte klar sein, was ich meine.
> Diese Prozedur bewirkt(so hoffe ich), dass eine Figur mit der
> eingegebenen Länge und mit der Anzahl der eingegebenen Winkel
> erschaffen wird.
>
> Bsp.: Vieleck 100 3,
> schafft ein gleichseitiges Dreieck mit der Seitenlänge 100 ! !
Probieren wir das mal mit meiner Prozedur:
w = (3-2)*180 / 3 = 180/3 = 60
a = 180-w = 180-60 = 120
Das kommt meiner Meinung nach hin, probier' es doch mal am Rechner aus.
Gruß,
Marc
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 16:03 Do 26.06.2003 | Autor: | Fab |
Ausprobieren kann ich es leider nich da LOGO setze nicht erkennt!
Dennoch glaube ich, das meine Prozedur funktioniert, denn wir haben z.B. in der Schule eine Prozedur für ein 20-Eck geschrieb die wie folgt aussah, bzw. auszusehen hatte.
Pr 20eck :l
wh 20 [vw:l re 360 / 20]
ende
bezogen auf meine Prozedur wäre das dann
Pr Vieleck :l :e
wh :e [vw :l re 360 / :e]
ende
Nur das hier anstelle von 20, ":e" gesetzt wird ! ! !
Naja ...
|
|
|
|