[TI] LOOP-Multiplikation

[TI] Einführung in die Technische Informatik
[BuS] Betriebssysteme und Systemsoftware
[PSP] Praktikum Systemprogrammierung
[DakS] Datenkommunikation und Sicherheit

LOOP-Multiplikation

Beitragvon BeGraves » 15.04.12 20:11

Hallo,
habe hier mal eine Frage vllt kann mir wer helfen^^

Zeige das die Funkion
exp(x,y) = x^y
LOOP-Berechenbar ist.Geben Sie dazu ein LOOP-Programm an, welches die Funktion exp berechnet.


Prinzipiell wenn es erlaubt wäre, würde ich
x_0=x;
x_1=x;
x_2=y;
LOOP x_2 DO x_0:=x_0 * x_1 END


machen. Allerdings kann ich scheinbar mit LOOP nur + und - machen.
Ich verzweifel hier. Falls mir wer helfen kann, wäre nett^^
BeGraves
 
Beiträge: 5
Registriert: 15.04.12 19:51
Studiengang: Informatik (B.Sc.)
Studiert seit: WS 11/12

Re: LOOP-Multiplikation

Beitragvon Max G » 15.04.12 20:21

Versuch doch mal, die Multiplikation als Loop-Programm darzustellen (also nur mit + bzw. -).
Max G
 
Beiträge: 10
Registriert: 28.08.10 13:34
Studiengang: Informatik (B.Sc.)
Studiert seit: WS 10/11

Re: LOOP-Multiplikation

Beitragvon BeGraves » 15.04.12 20:27

Wenn ich wüsste wie ^^ :shock:

hatte folgendes gefunden :

Multiplikationsfunktion:
x0=0;
LOOP x2 DO x0:=x0 + x1
Bezeichnung: x0:=x1 * x2


Das verstehe ich nicht bzw hilft mir relativ wenig weiter ^^ eine addition bleibt eine addition ;D
BeGraves
 
Beiträge: 5
Registriert: 15.04.12 19:51
Studiengang: Informatik (B.Sc.)
Studiert seit: WS 11/12

Re: LOOP-Multiplikation

Beitragvon graythread » 15.04.12 20:34

..na wie oft machst du "+x1"? Genau x2 mal...also hast du x2 mal x1 in x0 stehen x0 = x1 * x2

Und mit diesem Wissen und deinem Beitrag im Ersten Posting solltest du dir doch nun eine Exponentialfunktion in Form einer Äußeren Loop Schleife um das "Multiplikationskonstrukt" basteln können?
graythread
 
Beiträge: 11
Registriert: 06.12.08 19:28

Re: LOOP-Multiplikation

Beitragvon BeGraves » 15.04.12 21:35

Also ist die exponentialfunktion in LOOP Form:

x0 = x;
x1 = x;
x2 = y;
LOOP x2 DO x0 := x1+x1 END


Ich check das nicht :idea:
BeGraves
 
Beiträge: 5
Registriert: 15.04.12 19:51
Studiengang: Informatik (B.Sc.)
Studiert seit: WS 11/12

Re: LOOP-Multiplikation

Beitragvon graythread » 15.04.12 22:04

Guck mal du hast doch jetzt herausgefunden, wie man 2 Zahlen miteinander multipliziert. Jetzt musst du doch nur noch, wie du bereits im ersten Posting ansatzweise gezeigt hast, Multiplikation mit der Exponentialfunktion in Verbindung bringen, eine äußere Loop Schleife um deine Innere Loop (Multiplikations-)Schleife setzen. Auch die Äußere Loop Schleife hast du in deinem ersten Posting doch schon gezeigt.

Na, dämmerts? :)
graythread
 
Beiträge: 11
Registriert: 06.12.08 19:28

Re: LOOP-Multiplikation

Beitragvon BeGraves » 15.04.12 22:33

Also quasi so:

x0=x;
x1=x;
x2=y;
LOOP x2 DO
LOOP x2 DO x0 := x1 +x1 END
END
BeGraves
 
Beiträge: 5
Registriert: 15.04.12 19:51
Studiengang: Informatik (B.Sc.)
Studiert seit: WS 11/12

Re: LOOP-Multiplikation

Beitragvon Imrahil » 16.04.12 07:19

Soweit ich weiß, darf man in LOOP nur Zuweisungen der Form x_i := x_j + c für c \in \{0, 1, -1\} benutzen. Du musst also x1+x1 auch als Schleife schreiben.
Imrahil
 
Beiträge: 29
Registriert: 17.04.11 07:50
Studiengang: Informatik (B.Sc.)
Studiert seit: SS 11
Anwendungsfach: BWL

Re: LOOP-Multiplikation

Beitragvon BeGraves » 17.04.12 12:58

So danke für die Hilfe habe nun folgendes und denke das ist richtig (theoretisch) :D



x1:=x;
x2:=x;
x3:=y-1;
LOOP x3 DO x2:=x1;
LOOP x2 DO x2 := x2 +1 END
END



Das müsste meiner Meinung nach nun Korrekt sein unter der Voraussetzung das es bei LOOP auch so ist wie bei anderen Programmiersprachen sprich das, wenn er die INNERE LOOP ein mal durchlaufen hat vorher noch die Anweisung x2:=x1; der ÄUSSEREN LOOP ausführt.


Grüße
BeGraves
 
Beiträge: 5
Registriert: 15.04.12 19:51
Studiengang: Informatik (B.Sc.)
Studiert seit: WS 11/12

Re: LOOP-Multiplikation

Beitragvon Imrahil » 17.04.12 14:33

Nein, ist aus verschiedenen Gründen falsch:
1. Anweisungen der Form x1 := x2 gibt es nicht. Es muss x1 := x2 + 0 sein.
2. Die Schleifenvariable darf nicht im Schleifenprogramm vorkommen.
3. Du brauchst wahrscheinlich 3 verschachtelte Schleifen.
Imrahil
 
Beiträge: 29
Registriert: 17.04.11 07:50
Studiengang: Informatik (B.Sc.)
Studiert seit: SS 11
Anwendungsfach: BWL


Zurück zu Technische Informatik