(2^(n-1)-1)-(2^(k)-1)
ex : pour n=6 et k=3 cela donne 2^5-1 - 2^3-1 = 15-7=8
pour n=6 et k=3, j'applique ta formule et j'obtiens :
2^(6-1) - 1 - (2^3 - 1) = 31-7 = 24
Faudrait djà apprendre à compter...
D'ailleurs, après simplification, ta formule devient 2^(n-1) - 2^k
viewtiful2
Posté le 31-10-2004 à 13:36:59
(2^(n-1)-1)-(2^(k)-1) ex : pour n=6 et k=3 cela donne 2^5-1 - 2^3-1 = 15-7=8
Juste une erreur, désolé CT n=5 et k=3.
ça me di toujours pas comment résoudre l'algo.
viewtiful2
Posté le 31-10-2004 à 14:46:44
personne pour aider une fille en détresse?
Publicité
Posté le 31-10-2004 à 14:46:44
smaragdus
whores, drugs & J.S. Bach
Posté le 31-10-2004 à 15:55:29
Voilà une fonction qui calcule en une ligne ta formule :
int puissbin(int n, int k) {
return ((1<<(n-1)) - (1<<k));
}
Message édité par smaragdus le 31-10-2004 à 15:56:31
viewtiful2
Posté le 31-10-2004 à 17:39:18
ok merci, je suis contente!!!
j'avais déja un début de réponse. serait il possible de modifier l'algo pour utiliser le & et le | ?
smaragdus
whores, drugs & J.S. Bach
Posté le 31-10-2004 à 17:42:13
Je ne vois pas l'interet d'utiliser le & ou le |
viewtiful2
Posté le 31-10-2004 à 17:59:19
Juste pour avoir une fonction qui permet d'utiliser >> et << et | et & plutot que ( +, - , *, /).
Sinon merci a toi, ça marche trés bien ta fonction ulta courte.
smaragdus
whores, drugs & J.S. Bach
Posté le 31-10-2004 à 18:01:44
Dans ce cas, ça aurait cool de préciser dans ton 1er message que seuls les opérateurs *logiques* (et non binaires) étaient autorisés.
viewtiful2
Posté le 31-10-2004 à 18:07:15
non non logique c : || et && et !
ce qu'il faut c les opérateurs de manipulation de bits :
<< et >> et & et | et ^ et ~