Standard Pascal! < Pascal < Programmiersprachen < Praxis < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 20:20 Do 06.05.2004 | Autor: | Julchen |
Hallo! Ich hab mich gerade hier angemeldet, in der Hoffnung von Euch Hilfe zu bekommen.Ich gestehe auch gleich,dass ich die Frage auch bei matheskripten.de gestellt hatte,dort aber keine Antwort bekommen habe. Da ich das Übungsblatt aber schon am Montag abgeben muss, bräuchte ich dringend Hilfe bei folgender Aufgabe:
Geben Sie für die folgenden arithmetischen Ausdrücke die entsprechenden Ausdrücke im Standardpascal an:
a) Zehnerstelle einer dreistelligen natürlichen Zahl n
b)Zweite Nachkommatstelle einer reellen Zahl x>0
c) arcsin x (Betrag von x ist kleiner 1)
d) [mm] log_a [/mm] x (a,x>0)
e) tanx (x im Gradmaß!!!)
f) [mm] \wurzel[m]{a} [/mm]
g) [mm] {n \choose 3}[/mm] n>3
h) [mm] ( \bruch{e^x}{\phi}) [/mm] phi: 180° im Bogenmaß
Vielen Dank schon mal Voraus an denjenigen,der mir helfen kann!
Julia
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 20:45 Do 06.05.2004 | Autor: | Marc |
Hallo Julchen!
Willkommen im MatheRaum !
Könntest du dann noch bei matheskripten.de bzw. onlinemathe.de einen Hinweis mit einen Link hierher posten, damit sich jemand dort nicht die gleiche Arbeit macht oder zumindestes auf meine Antwort aufbauen kann.
> Geben Sie für die folgenden arithmetischen Ausdrücke die
> entsprechenden Ausdrücke im Standardpascal an:
Ich weiß leider im Augenblick noch nicht, welche Funktionen im Standard-Pascal vorhanden sind; hast du eine Liste bzw. hast einen Link zu einer Liste?
> a) Zehnerstelle einer dreistelligen natürlichen Zahl n
Das könnte man z.B. mit der Modulo Funktion "MOD" von Pascal machen:
Zuerst entferne ich die Einerziffer, indem ich den Rest, der bei der Division durch 10 entsteht, von n subtrahiere:
n - (n MOD 10)
Division durch 10 geht nun ohne Rest auf:
(n - (n MOD 1)) DIV 10
Die ehemalige Zehnerstelle ist so zur Einerstelle geworden, der Rest der Division durch 10 ist also die gesuchte Zahl:
((n - (n MOD 1)) DIV 10) MOD 10
Einfacher --fällt mir gerade ein-- ist es wohl, zunächt die Hunderterziffer loszuwerden
n MOD 100
und dann ganzzahlig durch 10 zu dividieren:
(n MOD 100) DIV 10
> b)Zweite Nachkommatstelle einer reellen Zahl x>0
Zunächst verschiebe ich das Komma um zwei Stellen nach rechts, so dass die gesuchte Ziffer zur Einerziffer wird:
n*100
Nun werfe ich die Nachkommastellen weg:
TRUNC(n*100)
Die gesuchte Ziffer ist der Rest, der bei der Division durch 10 bleibt:
TRUNC(n*100) MOD 10
> c) arcsin x (Betrag von x ist kleiner 1)
Noch keine Idee, außer vielleicht die Potenzreihenentwicklung von arcsin zu Rate zu ziehen...
> d) [mm] log_a [/mm] x (a,x>0)
Hat Standard-Pascal wenigstens eine Logarithmus-Funktion eingebaut, sagen wir "LOG(x)", oder "LN(X)"?
Falls ja, kannst du diese Beziehung ausnutzen
[mm] $\log_a b=\bruch{\log{b}}{\log{a}}$
[/mm]
> e) tanx (x im Gradmaß!!!)
Falls Standard-Pascal sin(x) und cos(x) kennt, könntest du rechnen
SIN(x)/COS(x)
> f) [mm]\wurzel[m]{a} [/mm]
Kennt Standard-pascal den Potenzierungsoperator "**"?
Falls ja, könntest du rechnen:
a**(1 / m)
> g) [mm]{n \choose 3}[/mm] n>3
Hier würde ich eine kleine Funktion für n! ("n Fakultät") schreiben und dann die Definition des Binomialkoeffizienten
${n [mm] \choose k}:=\bruch{n!}{k!*(n-k)!}$
[/mm]
benutzen.
Ich schlage vor, du versuchst das erst mal alleine.
> h) [mm]( \bruch{e^x}{\phi})[/mm] phi: 180° im Bogenmaß
[mm] \phi [/mm] ist also eine Konstante, also [mm] $\phi=180°$?
[/mm]
Falls Standard-Pascal den Potenzierungoperator "**" kennt, könntest du ja rechnen
(2.718281**x) / 180
Versuch' doch mal die Sachen, die ich offengelassen habe, selbst zu probieren, wir helfen dir auch gerne weiter.
Das gleiche gilt natürlich für weitere Fragen
Viele Grüße,
Marc
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 08:22 Fr 07.05.2004 | Autor: | Julchen |
Hi!
Danke! Bei dem Rest seh ich zwar keine Hoffnung,es selber zu können,aber einen Großteil hab ich jetzt ja.Ich hab übrigens keine Liste zu den Funktionen von Standardpascal,denn sonst hätte ich die Frage ja nicht gestellt.
Julchen
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 08:51 Fr 07.05.2004 | Autor: | nils |
Ich hab grad mal fix mal das Google-Orakel befragt und folgendes gefunden:
Funktionsliste
Da stehen einige Standardfunktionen, damit solltest du ja dann mit marcs Beitrag deine Lösung zusammen bekommen.
Nils
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 11:28 Fr 07.05.2004 | Autor: | Marc |
Hallo Julchen!
Schade, dass du so wenig kooperativ bist. Wir versuchen hier eigentlich, Aufgaben im Dialog zu lösen.
Wenn du magst, kannst du ja Fragen zu meinen Lösungen stellen, vielleicht schaffst du es ja so, dich mit den Aufgaben auseinanderzusetzen.
Danke an nils für die Liste der Standard-Funktionen!
> a) Zehnerstelle einer dreistelligen natürlichen Zahl n
(n MOD 100) DIV 10
> b)Zweite Nachkommatstelle einer reellen Zahl x>0
TRUNC(x*100) MOD 10
> c) arcsin x (Betrag von x ist kleiner 1)
ARCTAN(x/sqrt(1-sqr(x))
> d) [mm] log_a [/mm] x (a,x>0)
LN(x)/LN(a)
> e) tanx (x im Gradmaß!!!)
SIN(x)/COS(x)
> f) [mm]\wurzel[m]{a} [/mm]
EXP(LN(a)*(1/m))
> g) [mm]{n \choose 3}[/mm] n>3
n*(n-1)*(n-2)/(3*2*1)
> h) [mm]( \bruch{e^x}{\phi})[/mm] phi: 180° im Bogenmaß
EXP(x)/phi
Gruß,
Marc
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 15:58 Sa 08.05.2004 | Autor: | Julchen |
Hi!
Ich hab mir das jetzt alles angescahut und fast alles verstanden.
Zunächst hab ich mal eine Frage zu arcsinx. Wie hängts das denn mit arctanx zusammen?? Ich versteh den Lösungsvorschlag nämlich so gar nicht.
tanx ist mir auch noch unklar,denn bei dem, was ich mir bis jetzt über Standard Pascal angeeigent habe, weiß ich ziemlich sicher,dass dieses Programm nur Angaben im Bogenmaß macht.Stimmt das??Wenn ja,könnte ich dann (denn ich benötige ja das Gradmaß) erst das Gradmaß ins Bogenmaß umrechnen,dann den tan berechnen und dann wieder zurück ins Gradmaß rechnen?
Für Hilfe wäre ich dankbar oder zumindest über eine Antwort,ob meine Überlegungen nicht völlig aus der Luft gegriffen sind!
Grüße von Julchen!
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 16:10 Sa 08.05.2004 | Autor: | Marc |
Hallo Julchen!
Danke übrigens für deine Erklärung (per PM) zu der kleinen Verstimmung. Jetzt ist ja alles wieder gut.
> Ich hab mir das jetzt alles angescahut und fast alles
> verstanden.
> Zunächst hab ich mal eine Frage zu arcsinx. Wie hängts das
> denn mit arctanx zusammen?? Ich versteh den
> Lösungsvorschlag nämlich so gar nicht.
Die Formel kannte ich auch nicht auswendig, und ich weiß jetzt auch nicht, ob ich sie beweisen kann. Sie steht aber in meinem Programmierhandbuch zu AmigaBASIC
> tanx ist mir auch noch unklar,denn bei dem, was ich mir
> bis jetzt über Standard Pascal angeeigent habe, weiß ich
> ziemlich sicher,dass dieses Programm nur Angaben im
> Bogenmaß macht.Stimmt das??Wenn ja,könnte ich dann (denn
Sorry, dass x im Gradmaß angegeben ist, hatte ich überlesen.
Die Umrechnung ist aber ganz einfach, denn es gilt ja:
[mm] $b=\bruch{\alpha}{360°}*2\pi$
[/mm]
Also lautet die Lösung nun:
SIN(x*3.1415/180)/COS(x*3.1415/180)
> ich benötige ja das Gradmaß) erst das Gradmaß ins Bogenmaß
> umrechnen,dann den tan berechnen und dann wieder zurück ins
> Gradmaß rechnen?
Die erste Umrechnung ist richtig, die zweite Umrechnung (also "den tan berechnen und dann wieder zurück ins Gradmaß") ist aber gar nicht möglich und gar nicht nötig.
Das Ergebnis des tan(x) ist ja eine einheitenlose Zahl (eben das Verhältnis von Gegenkathete zur Ankathete), und kann daher nicht "umgerechnet" werden.
Viele Grüße,
Marc
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 16:38 Sa 08.05.2004 | Autor: | Paulus |
Hallo Julchen
> tanx ist mir auch noch unklar,denn bei dem, was ich mir
> bis jetzt über Standard Pascal angeeigent habe, weiß ich
> ziemlich sicher,dass dieses Programm nur Angaben im
> Bogenmaß macht.Stimmt das??Wenn ja,könnte ich dann (denn
> ich benötige ja das Gradmaß) erst das Gradmaß ins Bogenmaß
> umrechnen,dann den tan berechnen und dann wieder zurück ins
> Gradmaß rechnen?
Ja, Pascal rechnet im Bogenmass. Das heisst dann auch, dass der Arctan(x) einen Wert im Bogenmass liefert. Für die Umrechnung ins Bogenmass halt einfach noch mal 180 durch Pi:
[mm]\bruch{180}{\pi}*\arctan{x}[/mm]
Beim Zusammenhang zwischen arcsin und arctan habe ich im Moment auch noch nicht den ganzen Durchblick, da muss wohl noch jemand anders ran. (Sorry)
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 16:58 Sa 08.05.2004 | Autor: | Paulus |
Hallo Julchen
... und jetzt hab auch ich mirs überlegt:
mit [mm]\tan{x} = \bruch{\sin{x}}{\cos{x}} = \bruch{\sin{x}}{\wurzel{1-\sin^2{x}}}[/mm]
erhalte ich:
[mm]\arcsin{x} = {\arctan{\bruch{x}{\wurzel{1-x^2}}}[/mm]
Damit, und mit dem Umrechnen von Bogen- in Gradmass, sollte auch der arcsin lösbar sein.
(Hoffentlich irre ich mich nicht; bitte anhand einiger beuispiele verifizieren!)
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 16:57 Sa 08.05.2004 | Autor: | Marc |
Hallo Julchen,
nun also noch zu der offenen Beziehung zwischen zwischen [mm] $\arctan$ [/mm] und [mm] $\arcsin$.
[/mm]
Also, wir wollen
[mm] $y=\arcsin(x)$
[/mm]
mit Hilfe des [mm] $\arctan$ [/mm] ausdrücken.
[mm] $\gdw \sin(y)=x$ [/mm] (für [mm] $0\le [/mm] y< [mm] \bruch{\pi}{2}$)
[/mm]
Nun gilt aber auch: [mm] $\tan(y)=\bruch{\sin(y)}{\cos(y)}=\bruch{\sin(y)}{\wurzel{\cos^2(y)}}=\bruch{\blue{\sin(y)}}{\wurzel{1-\blue{\sin}^2\blue{(y)}}}$ [/mm] (da [mm] $\sin^2(y)+\cos^2(y)=1$)
[/mm]
Ersetzt man nun [mm] $\sin(y)=x$ [/mm] (s.o.) lautet diese Gleichung:
[mm] $\tan(y)=\bruch{\blue{x}}{\wurzel{1-\blue{x}^2}}$
[/mm]
bzw.
[mm] $y=\arctan \bruch{x}{\wurzel{1-x^2}}$ $\Box$
[/mm]
Viele Grüße,
Marc
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 11:03 So 09.05.2004 | Autor: | Julchen |
Super!! Vielen Dank für die Erklärungen an Euch beide! Jetzt kann ich das wenigstens nachvollziehen!Wünsch Euch noch ein schönes Wochenende!
Julchen
|
|
|
|