bofi
29.5.2006, 16:09
class A {
public int m(int i) {
if (i <= 0) return 0;
if (i % 3 == 0)
return m(i-1) + 2*i;
else
return m(i-1) - i;
}
}
public class Main {
/** Creates a new instance of Main */
public Main() {
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
A a = new A();
int i = a.m(4);
// System.out.println("Vrednost i je " + i);
}
}
Ovo je jedan od zadataka koji pokusavam da provalim. Pitanje je koliko se rekurzivna metoda m puta poziva i kolio je vrednost i. Ja sam ubacivanjem reda System.out.println("Vrednost i je " + i); saznao da je vrednos i=-1. Po meni m se poziva dva puta da li sam u pravu? Ako neko znam pomagajte.
public int m(int i) {
if (i <= 0) return 0;
if (i % 3 == 0)
return m(i-1) + 2*i;
else
return m(i-1) - i;
}
}
public class Main {
/** Creates a new instance of Main */
public Main() {
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
A a = new A();
int i = a.m(4);
// System.out.println("Vrednost i je " + i);
}
}
Ovo je jedan od zadataka koji pokusavam da provalim. Pitanje je koliko se rekurzivna metoda m puta poziva i kolio je vrednost i. Ja sam ubacivanjem reda System.out.println("Vrednost i je " + i); saznao da je vrednos i=-1. Po meni m se poziva dva puta da li sam u pravu? Ako neko znam pomagajte.