Hilfsprozedur

Hallo
Wir machen grad an der uni Standard ML, ich weiß nicht ob das hier im dem forum reingehört,aber ich versuchs mal.
Versteh Folgendes nicht:

fun q (y:int) = y*y
fun hoch8 (x:int) = q (q (q x)) || Ich kriege hier x^8 nicht sondern x^7

hoch8=y*y(y*y(y*x)= y^7 || Ich weiß dass es falsch ist aber kann mir jemand erklären wie man auf x^8 kommt.

Danke

Hallo.

Wir machen grad an der uni Standard ML, ich weiß nicht ob das
hier im dem forum reingehört,aber ich versuchs mal.

OK, ich kenne Standard ML nicht, aber ich versuchs trotzdem mal.

Versteh Folgendes nicht:

fun q (y:int) = y*y

q berechnet also das Quadrat des Parameters.

fun hoch8 (x:int) = q (q (q x)) || Ich kriege hier x^8
nicht sondern x^7

hoch8=y*y(y*y(y*x)= y^7 || Ich weiß dass es
falsch ist aber kann mir jemand erklären wie man auf x^8
kommt.

hoch8=q (q (q x)) = q (q x) * q (q x) = q x * q x * q x * q x = x*x * x*x * x*x * x*x = x^8

Oder andersrum:
hoch8=q (q (q x)) = q ( q (x^2)) = q (x^2 * x^2) = q ( x^4 ) = x^4 * x^4 = x^8

Sebastian.