Diferència entre revisions de la pàgina «M3 - Programació estructurada / Exercicis UF2: Recursivitat bàsics»
De wikiserver
Línia 28: | Línia 28: | ||
</source> | </source> | ||
− | Quina seria la sortida si executéssim p1(6) ? | + | Quina seria la sortida si executéssim '''p1(6)'''? |
Línia 54: | Línia 54: | ||
</source> | </source> | ||
− | Quina seria la sortida si executéssim p2(10,8) ? | + | Quina seria la sortida si executéssim '''p2(10,8)'''? |
+ | |||
+ | 3) | ||
+ | <source lang="java"> | ||
+ | void p3(int a, int b ){ | ||
+ | if (a > 0){ | ||
+ | p3(a-1,b+a); | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | System.out.print(b+” “); | ||
+ | } | ||
+ | } | ||
+ | </source> | ||
+ | |||
+ | Quina seria la sortida si executéssim '''p3(5,3)'''? | ||
+ | |||
+ | Quina seria la sortida si eliminéssim el '''else''' ( fent sempre el print ) i des del programa principal féssim: | ||
+ | <source lang="java"> | ||
+ | for (int i=1;i<=5;i++){ | ||
+ | System.out.print (“p3 (“+ i+”):”); | ||
+ | p3 (i,0); | ||
+ | } | ||
+ | </source> | ||
+ | |||
+ | 4a) | ||
+ | <source lang="java"> | ||
+ | void p4 ( int a) { | ||
+ | if (a> 0) { | ||
+ | p4(a-1); | ||
+ | System.out.print(a+” “); | ||
+ | } | ||
+ | else { | ||
+ | System.out.print(”fi? “); | ||
+ | } | ||
+ | } | ||
+ | </source> | ||
+ | 4b) | ||
+ | <source lang="java"> | ||
+ | void p4 ( int a) { | ||
+ | if (a> 0) { | ||
+ | p4(a-1); | ||
+ | System.out.print(a+” “); | ||
+ | } | ||
+ | System.out.print(”fi? “); | ||
+ | } | ||
+ | </source> | ||
+ | |||
+ | Quina seria la sortida si executéssim '''p4(5)'''? | ||
+ | |||
+ | 5) | ||
+ | void p5( int a ) { | ||
+ | if (a>0 { | ||
+ | System.out.print(a+” “); | ||
+ | a=a-1; | ||
+ | p5(a); | ||
+ | } | ||
+ | System.out.print(a+” “); | ||
+ | } | ||
+ | |||
+ | Quina seria la sortida si executéssim '''p5(5)'''? | ||
+ | |||
+ | 6) | ||
+ | void p6(int a ){ | ||
+ | System.out.print(a+” “); | ||
+ | for ( int i =a; i>0;i--){ | ||
+ | p6(i-1); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | Quina seria la sortida si executéssim '''p6(4)'''? |
Revisió del 19:11, 5 maig 2018
Indicar quina serà la sortida dels procediments següents:
1a)
void p1( int a ) {
if (a>0) {
System.out.print(a+” “);
p1(a-1);
}
else {
system.out.print(“final”)
}
}
1b)
void p1( int a ) {
if (a>0) {
System.out.print(a+” “);
p1(a-1);
}
else {
System.out.print(“final”)
}
System.out.print(a+” “);
System.out.print(”final de veritat “);
}
Quina seria la sortida si executéssim p1(6)?
2a)
void p2( int a , int b) {
if (a%b!=0) {
System.out.print(a+” “);
p2(a+1,b);
}
else {
System.out.print(“final”);
}
}
2b)
void p2( int a , int b) {
if (a%b!=0) {
System.out.print(a+” “);
p2(a+1,b);
}
System.out.print(“final”);
}
Quina seria la sortida si executéssim p2(10,8)?
3)
void p3(int a, int b ){
if (a > 0){
p3(a-1,b+a);
}
else
{
System.out.print(b+” “);
}
}
Quina seria la sortida si executéssim p3(5,3)?
Quina seria la sortida si eliminéssim el else ( fent sempre el print ) i des del programa principal féssim:
for (int i=1;i<=5;i++){
System.out.print (“p3 (“+ i+”):”);
p3 (i,0);
}
4a)
void p4 ( int a) {
if (a> 0) {
p4(a-1);
System.out.print(a+” “);
}
else {
System.out.print(”fi? “);
}
}
4b)
void p4 ( int a) {
if (a> 0) {
p4(a-1);
System.out.print(a+” “);
}
System.out.print(”fi? “);
}
Quina seria la sortida si executéssim p4(5)?
5) void p5( int a ) {
if (a>0 { System.out.print(a+” “); a=a-1; p5(a); } System.out.print(a+” “);
}
Quina seria la sortida si executéssim p5(5)?
6) void p6(int a ){
System.out.print(a+” “); for ( int i =a; i>0;i--){ p6(i-1); }
}
Quina seria la sortida si executéssim p6(4)?