Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
prog1_11 [2013-04-29 09:33] Daniel Viström |
prog1_11 [2017-03-27 10:59] Daniel Viström |
||
---|---|---|---|
Line 2: | Line 2: | ||
- | <? | ||
- | /* | ||
Rekursion utan dator: {{: | Rekursion utan dator: {{: | ||
- | */ | ||
- | </php | ||
**Följande uppgifter ska lösas med hjälp av rekursion. Inga loopar med while eller liknande får användas.** | **Följande uppgifter ska lösas med hjälp av rekursion. Inga loopar med while eller liknande får användas.** | ||
Line 15: | Line 11: | ||
<code php> | <code php> | ||
- | + | if(isset($_POST[' | |
- | echo a($_POST[' | + | echo a($_POST[' |
+ | } | ||
</ | </ | ||
Line 23: | Line 20: | ||
antal år ( se uppgift 5036 ). | antal år ( se uppgift 5036 ). | ||
- | 3. | + | 3a. |
- | Skriv en rekursiv funktion som anropar sig själv och på så sätt räknar ner heltalen | + | Skriv en rekursiv funktion |
- | från 5 till 1 och skriver ut samtliga tal. | + | från $tal till 1 och skriver ut samtliga tal. |
+ | |||
+ | 3b. | ||
+ | Skriv en rekursiv funktion **calculate2($tal)** som anropar sig själv och på så sätt räknar upp heltalen | ||
+ | från 1 till $tal och skriver ut samtliga tal. | ||
4. | 4. | ||
Line 65: | Line 66: | ||
10*. | 10*. | ||
Skriv en rekursiv funktion **siffsum**, | Skriv en rekursiv funktion **siffsum**, | ||
+ | |||
+ | <php> | ||
+ | /* | ||
+ | <?php | ||
+ | function u1($n) { | ||
+ | if ($n == 1) { | ||
+ | return 4; | ||
+ | } | ||
+ | return 2*u1($n-1)-3; | ||
+ | } | ||
+ | echo "< | ||
+ | |||
+ | function u2($n) { | ||
+ | if ($n == 1) { | ||
+ | return 2.8; | ||
+ | } | ||
+ | return 1.12*u2($n-1); | ||
+ | } | ||
+ | echo "< | ||
+ | |||
+ | |||
+ | echo '< | ||
+ | function u3a($n) { | ||
+ | echo '< | ||
+ | if ($n == 1) { | ||
+ | return; | ||
+ | } | ||
+ | u3a($n-1); | ||
+ | } | ||
+ | u3a(5); | ||
+ | |||
+ | function u3b($n) { | ||
+ | if ($n == 1) { | ||
+ | echo '< | ||
+ | return; | ||
+ | } | ||
+ | u3b($n-1); | ||
+ | echo '< | ||
+ | } | ||
+ | u3b(5); | ||
+ | |||
+ | function u4($str, $antal){ | ||
+ | echo $antal . ':' | ||
+ | if ($antal == 1){ // Brytvillkor. | ||
+ | return; | ||
+ | } | ||
+ | u4($str, $antal-1); | ||
+ | |||
+ | } | ||
+ | echo '< | ||
+ | u4(' | ||
+ | |||
+ | |||
+ | function u5($b,$n) { | ||
+ | if ($n == 1) { | ||
+ | return $b; | ||
+ | } | ||
+ | return $b * u5($b, | ||
+ | } | ||
+ | echo "< | ||
+ | |||
+ | function u6($n) { | ||
+ | if ($n == 1) { | ||
+ | return $n; | ||
+ | } | ||
+ | return $n * u6($n-1); | ||
+ | } | ||
+ | echo "< | ||
+ | |||
+ | function u7($n) { | ||
+ | if ($n == 1) { | ||
+ | echo "$n x 7 = " . $n*7 . "< | ||
+ | return; | ||
+ | } | ||
+ | u7($n-1); | ||
+ | echo "$n x 7 = " . $n*7 . "< | ||
+ | } | ||
+ | echo "< | ||
+ | u7(10); | ||
+ | function u8($n1,$n2) { | ||
+ | if ($n1 > $n2) { | ||
+ | return; | ||
+ | } | ||
+ | u8($n1, | ||
+ | echo $n2 . ','; | ||
+ | } | ||
+ | echo "< | ||
+ | u8(3,6); | ||
+ | |||
+ | function u9($n) { | ||
+ | if ($n == 1) { | ||
+ | return 15000; | ||
+ | } | ||
+ | return 1.04*u9($n-1)+400; | ||
+ | } | ||
+ | echo "< | ||
+ | |||
+ | |||
+ | function u10($n) { | ||
+ | if ((int)($n/ | ||
+ | return $n; | ||
+ | } | ||
+ | return u10((int)($n/ | ||
+ | } | ||
+ | echo "< | ||
+ | */ | ||
+ | </ | ||