Alguien sabe un algoritmo con complejidad constante para generar valores booleanos a partir de una semilla aleatoria y un numero p?

Me refiero a esto:
floquesea :: Integer -> Boolean
Siendo p la probabilidad 0-100 de que el suceso suceda y siendo el resultado la aplicacion de una generacion aleatoria sometida a ese experimento binario independiente.
Me refiero a que si quisiera por ejemplo usar aleatoriamente un numero para comprobar si un jugador (por ejemplo) golpea o no teniendo una posibilidad p = 80 (80%) de hacerlo
Serviria para por ejemplo esa clase de fenomenos o bien para la aplicacion que quiero generar, la simulacion aleatoria de intercambio genetico etc...
No se si me he explciado bien... Resumiendo: Quiero hacer una funcion que al ejecutarse devuelva True con una probabilidad de un p% a partir de una semilla aleatoria. Si es posible no pongais ejemplos explicitos en lenguaje sino mejor en pseudocodigo o la funcincita de marras.
Un saludo.