Comprovar funcions i relacions

Suposem que principi i fi són enters, i relacio és una funció de dos
paràmetres que retorna un booleà (True o False). Suposarem que
fi - principi ≥ 2.

Feu una funció comprova_funcio(relacio, principi, fi) que retorna una
funció. Aquesta funció retornada, anomenem-la fret, ha de tenir les
següents característiques: Té una funció f com a paràmetre, i ha de
retornar True si la relació relacio és compleix per a totes les parelles
adjacents dins la seqüència f(principi), f(principi+1),..., f(fi-1).

Dit d’una altra manera, comprova_funcio(relacio, principi, fi) ha de
retornar una funció, que podem anomenar fret, tal que fret(f) ha de
retornar True si es verifica que:

relacio(f(principi),f(principi+1)) = True

relacio(f(principi+1),f(principi+2)) = True

...

relacio(f(fi-2),f(fi-1)) = True

En altre cas, fret(f) ha de retornar False

Per exemple, en el joc de proves que veieu més avall:

- La funció comprova_eq amb una funció f com a argument, és a dir,
comprova_eq(f), comprova que els valors de f(0), f(1), f(2), f(3) i f(4)
siguin tals que: f(0) == f(1), f(1) == f(2), f(2) == f(3), i
f(3) == f(4). Si es verifiquen aquestes quatre igualtats comprova_eq(f)
retorna True, altrament retornarà False.

- La funció comprova_up amb una funció f com a argument, és a dir,
comprova_up(f), comprova que els valors de f(0), f(1), f(2), f(3) i f(4)
siguin tals que: f(0) < f(1), f(1) < f(2), f(2) < f(3), i f(3) < f(4).
Si es verifiquen aquestes quatre desigualtats comprova_up(f) retorna
True, altrament retornarà False.

Entrada

La funció té tres paràmetres, una funció i dos enters que s’han
d’ajustar als requeriments mencionats.

Observacions

Un cop definida la funció, en provar-la al REPL de Python us hauria de
sortir el mateix que podeu observar més avall.

Informació del problema

Autoria: Jordi Delgado

Generació: 2026-01-25T13:00:29.457Z

© Jutge.org, 2006–2026.
https://jutge.org
