Beispielaufgabe 4a provisos

0b101101101
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 179
Registriert: 15. Apr 2015 18:24

Beispielaufgabe 4a provisos

Beitrag von 0b101101101 » 16. Feb 2017 16:16

toast.png
toast.png (103.36 KiB) 733 mal betrachtet
Reichen folgende 3 provisos nicht um die 4 Eigenschaften auszudrücken?

Log#(maximumValue, operandBits),
Add#(operandBits, operandBits, resultBits),
Add#(resultBits, x, 64),

dh. Meiner Meinung nach impliziert "operandBits*2=resultBits" → "operandBits+someVal=resultBits" und deswegen ist der vorletzte Proviso überflüssig.
EDIT: letzter durch vorletzter ausgetauscht.

JHofmann
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 182
Registriert: 23. Apr 2015 10:43

Re: Beispielaufgabe 4a provisos

Beitrag von JHofmann » 16. Feb 2017 16:19

Hallo,

das ist für Sie möglicherweise klar, dem Compiler allerdings nicht. Der Compiler fragt oft nach provisos die man als Mensch für überflüssig hält. Zum Glück sind die Fehlermeldungen sehr eindeutig, sodass das leicht zu beheben ist.

Viele Grüße,

labataschö
Windoof-User
Windoof-User
Beiträge: 37
Registriert: 15. Apr 2015 16:43

Re: Beispielaufgabe 4a provisos

Beitrag von labataschö » 16. Feb 2017 16:25

Dazu noch eine Frage.
Ich hab im bsv reference guide gelesen, dass es auch ein proviso "Max#" gibt, aber in der Sprechstunde gehört, dass das für die Lösung der Aufgabe ungeeignet ist. Warum ist das so?

EDIT: Ich meine damit ungeeignet für die letzen beiden Anforderungen, also dass resultBits <= 64 Bit und operandsBits <= resultBits sein soll.

JHofmann
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 182
Registriert: 23. Apr 2015 10:43

Re: Beispielaufgabe 4a provisos

Beitrag von JHofmann » 16. Feb 2017 16:35

Hallo,

das war leider ein Missverständnis zwischen mir und dem Tutor. Max geht auch.

Viele Grüße,

0b101101101
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 179
Registriert: 15. Apr 2015 18:24

Re: Beispielaufgabe 4a provisos

Beitrag von 0b101101101 » 16. Feb 2017 17:09

Hm, nagut dann nochmal konkreter, Wenn ich die proviso

Code: Alles auswählen

 Add#(operandBits, operandBits, resultBits),
fordere. Dann brauche ich nicht zusätzlich

Code: Alles auswählen

 Add#(operandBits, someotherBits, resultBits),
fordern, ja?

Ich wüsste nicht was der Compiler da 'nachdenken' müsste, da es derselbe Ausdruck ist.

JHofmann
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 182
Registriert: 23. Apr 2015 10:43

Re: Beispielaufgabe 4a provisos

Beitrag von JHofmann » 16. Feb 2017 17:18

Sorry, das hatte ich überlesen auf dem Handy.

Ja, das funktioniert natürlich auch und wäre natürlich auch eine korrekte Antwort :)

Viele Grüße,

0b101101101
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 179
Registriert: 15. Apr 2015 18:24

Re: Beispielaufgabe 4a provisos

Beitrag von 0b101101101 » 17. Feb 2017 01:01

Super, gut zu wissen. :)

Antworten

Zurück zu „Archiv“