Python - Funcions amb nombres P84591


Statement
 

pdf   zip

En aquest problema heu d’implementar una sèrie de funcions en Python. No cal que pregunteu si podeu fer servir funcions auxiliars, és evident que sí; peró millor que les definiu dins de les funcions que les utilitzen.

  1. Feu una funció @absValue(x)@ que, donat un nombre, retorni el seu valor absolut.

  2. Feu una funció @power(x, p)@ que, donats un nombre xx i un natural pp, retorni xx elevat a pp, és a dir, xpx^p.

  3. Feu una funció @isPrime(x)@ que, donat un natural, retorni un booleà indicant si aquest és primer o no.

  4. Feu una funció @slowFib(n)@ que retorni l’nn-èsim element de la sèrie de Fibonacci tot utilitzant l’algorisme recursiu que la defineix (f(0)=0f(0)=0, f(1)=1f(1)=1, f(n)=f(n1)+f(n2)f(n)=f(n-1)+f(n-2) per n2n\ge 2).

  5. Feu una funció @quickFib(n)@ que retorni l’nn-èsim element de la sèrie de Fibonacci tot utilitzant un algorisme més eficient.

Puntuació

Cada funció puntua 20 punts.

Exemple de sessió

Sample session
>>> absValue(-666)
666
>>> power(2, 3)
8
>>> isPrime(17)
True
>>> slowFib(5)
5
>>> quickFib(40)
102334155
Information
Author
Jordi Petit
Language
Catalan
Other languages
English
Official solutions
Python
User solutions
Python