Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
prog1_11 [2013-04-30 14:08]
Joakim Forsgren
prog1_11 [2013-04-30 14:35]
Joakim Forsgren
Line 66: Line 66:
 10*. 10*.
 Skriv en rekursiv funktion **siffsum**, med en heltalsparameter **$n**. Funktionen ska returnera summan av siffrorna i talet. Skriv en rekursiv funktion **siffsum**, med en heltalsparameter **$n**. Funktionen ska returnera summan av siffrorna i talet.
 +
 +<php>
 +/*
 +<?php
 +function u1($n) {
 +  if ($n == 1) {
 +    return 4;
 +  }
 +  return 2*u1($n-1)-3;
 +}
 +echo "<br> u1, svar: " . u1(4);
 +
 +function u2($n) {
 +  if ($n == 1) {
 +    return 2.8;
 +  }
 +  return 1.12*u2($n-1);
 +}
 +echo "<br> u2, svar: " . u2(4);
 +
 +
 +echo '<br>u3 a och b';
 +function u3a($n) {
 +  echo '<br>' . $n;
 +  if ($n == 1) {
 +    return;
 +  }
 +  u3a($n-1);
 +}
 +u3a(5);
 +
 +function u3b($n) {
 +  if ($n == 1) {
 +    echo '<br>' . $n;
 +    return;
 +  }
 +  u3b($n-1);
 +  echo '<br>' . $n;
 +}
 +u3b(5);
 +
 +function u4($str, $antal){
 +  echo $antal . ':' . $str . '<br />';
 +  if ($antal == 1){  // Brytvillkor.
 +    return;
 +  }
 +  u4($str, $antal-1);
 +
 +}
 +echo '<br> u4:<br>';
 +u4('Hello World', 5);
 +
 +
 +function u5($b,$n) {
 +  if ($n == 1) {
 +    return $b;
 +  }
 +  return $b * u5($b,$n-1);
 +}
 +echo "<br> u5, svar: " . u5(2.2,3);
 +
 +function u6($n) {
 +  if ($n == 1) {
 +    return $n;
 +  }
 +  return $n * u6($n-1);
 +}
 +echo "<br> u6, svar: " . u6(4);
 +
 +function u7($n) {
 +  if ($n == 1) {
 +    echo "$n x 7 = " . $n*7 . "<br>";
 +    return;
 +  }
 +  u7($n-1);
 +  echo "$n x 7 = " . $n*7 . "<br>";
 +}
 +echo "<br> u7, svar: <br>";
 +u7(10);
 +function u8($n1,$n2) {
 +  if ($n1 > $n2) {
 +    return;
 +  }
 +  u8($n1,$n2-1);
 +  echo $n2 . ',';
 +}
 +echo "<br> u8, svar: ";
 +u8(3,6);
 +
 +function u9($n) {
 +  if ($n == 1) {
 +    return 15000;
 +  }
 +  return 1.04*u9($n-1)+400;
 +}
 +echo "<br> u9, svar: " . u9(3);
 +
 +
 +function u10($n) {
 +  if ((int)($n/10) == 0) {
 +    return $n;
 +  }
 +  return u10((int)($n/10)) + $n%10;
 +}
 +echo "<br> u10, svar: " . u10(981);
 +*/
 +</php>