Quint und Jannik und Daniel und Angelo sind da. Frank Oppermann ist auch kurz gekommen.
Wir „spielen“ mit Holzklötzen (n über k). Fotos beim nächsten Mal.
Quint und Jannik und Daniel und Angelo sind da. Frank Oppermann ist auch kurz gekommen.
Wir „spielen“ mit Holzklötzen (n über k). Fotos beim nächsten Mal.
Morten, Angelo sind da und irgendwann auch Daniel. Angelo und Robert sinnieren über Summenbildung und n über k.
Nächste Mal normal.
Felix ist da.
In PHP mit rekursiver Funktion muss für eine Ergebnis ein „return“ eingefügt werden. Kapiere ich nicht so ganz, ist aber so:
function recur($n,$k,$res=0) {
$res = $res + $n;
if ($n>3) {
return recur($n-1,1,$res);
} else {
var_dump($res);
return $res;
}
}
Für n über k geht es so:
$res = 0;
function recur1($n,$k) {
if ($k === 1) {
return $n;
}
if ($k === $n) {
return 1;
}
while($n > 0) {
return recur1($n-1,$k) + recur1($n-1,$k-1);
$n = $n-1;
}
return $res;
}
var_dump(recur1(10,4));
nächste mal normal …;
Jannik und Felix sind da. Wir reden über RAM und vRAM (Video-RAM).
Robert baut ein Summierskript, basierend auf dem Memoizer von Crockford:
<input type="text" id="input">
</input>
<button id="go">go</button>
<div id="output">
</div>
<script>
var memoizer = function (memo, formula) {
var recur = function (n) {
var result = {
calc:"",
notation:""
}
result.calc = memo.calc[n];
result.notation = memo.notation[n];
if (typeof result.calc !== 'number') {
result = formula(recur, n);
//~ console.log(result);
memo.calc[n] = result.calc;
memo.notation[n] = result.notation;
}
return result;
};
return recur;
};
var sumUp = memoizer({calc:[0, 1], notation:["", "1"]}, function (recur, n) {
var result = {
calc:"",
notation:""
}
result.calc = parseInt(n,10) + recur(n -1).calc;
result.notation = n + "+" + recur(n -1).notation;
return result;
})
var input = document.getElementById("input");
var button = document.getElementById("go");
var output = document.getElementById("output");
button.onclick = function() {
// alert(input.value);
res = sumUp(input.value);
console.log(typeof (input.value | 0));
console.log(res);
output.innerHTML = res.calc + " = " + res.notation;
}
</script>
Angelo ist in Schweden.