CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

algorithme calculer le nombre 0 dans la

snake645
snake645
Niveau 7
16 avril 2007 à 22:06:02

:salut:
j´ai un exercice que je ne comprends meme pas
j´ai cherché sur google j´ai trouvé des solutions mais j´ai rien saisie
le probleme est le suivant
ecrire un algorithme permet de calculer le nombre de 0 dans la representation binaire de n
:merci:

snake645
snake645
Niveau 7
16 avril 2007 à 22:07:10

desole pour le titre j´ai pas fais attention

snake645
snake645
Niveau 7
16 avril 2007 à 22:08:30

je suis a la fac des sciences SMP semestre 2

snake645
snake645
Niveau 7
16 avril 2007 à 22:11:13

je penses que j´ai compris l´algo
j´ai un nombre en binaire et j´affiche le nombre de zero qu´il y´a dans ce nombre

Tidus1188
Tidus1188
Niveau 10
16 avril 2007 à 22:11:40

SMP c´est quoi ?

SM ?

snake645
snake645
Niveau 7
16 avril 2007 à 22:19:26

science de la matiere physique

Tidus1188
Tidus1188
Niveau 10
16 avril 2007 à 22:25:57

Chez moi ça s´appelle SPM (Structure et Propriété de la matière) :o))

En tapant SMP, je tombe sur l´université de Rabat ou Casablanca aussi.

Mais désolé, je n´ai pas encore vu ça... ni en S1 ni en S2...

Chaos_Clad
Chaos_Clad
Niveau 10
16 avril 2007 à 22:52:31

A vue de pif et sachant que j´ai pas programmé depuis pas mal de temps, je stockerai chaque chiffre du nombre n dans sa représentation binaire dans un tableau qui n´est pas "fixe" (je me rappelle plus du nom exact, mais dont la mémoire s´alloue en fonction des besoins de l´utilisateur). Ensuite tu parcours le tableau dans une boucle à la con avec un i++ pour chaque 0 rencontré.

Mais t´as sûrement des algo bien plus simples :-))) Surtout que le mien, t´as vite fait des dépassements de capacité...

snake645
snake645
Niveau 7
16 avril 2007 à 23:00:36

Les tableaux dynamiques

tauruxbis
tauruxbis
Niveau 10
16 avril 2007 à 23:05:04

10--- 2
11--- 3
100-- 4
101-- 5
110-- 6
111-- 7
1000- 8
1001- 9
1010- 10
1011- 11
1100- 12
1101- 13
1111- 14

Alors apparemment, à chaque 2^n, il y a n-1 0 pour le premier, et ensuite miroir de 0 déduit sur ce qui fait le premier saut.

Donc on factorise le nombre sous 2^n + 2^(n-1) + 2^(n-2) etc..., et selon le facteur qui aura le plus quand k dans (n-k), on a le nombre de 0 sous la forme k-1

Le tout est de trouver un algorythme qui factorise sans qu´on ai besoin de le faire manuellement.

le plus simple est de diviser le nombre par 2 jusqu´à ce qu´on ait le nombre inférieur à 2, pour trouver n.

the_bricedenice
the_bricedenice
Niveau 8
16 avril 2007 à 23:12:15

beh

tu prends ton chiffre:

en très grossier

k=0;
while {n # 1} (différent de)

{ while {n/2=float(n)/2)}

{k:=k+1;}

n=n/2 (on attribue ici) }

et tu fais un printf de k. Ca devrait passer (je crois?)

[ex.: 100001 en binaire, c´est 33

k=0

33/2 po bon donc on fait juste 33/2 (tronqué car n integer) = 16
16/2=8 k-->1
8/2 k-->2
4/2 k--> 3
2/2 k--> 4]

Ca m´a l´air bon ^^

the_bricedenice
the_bricedenice
Niveau 8
16 avril 2007 à 23:12:58

ouch.

ouned by taurux.

Watza][Kamikaze
Watza][Kamikaze
Niveau 8
16 avril 2007 à 23:13:42

Salut.

Tu as quel niveau en info? C´est quel genre d´algo ? Tu veux un truc blabla matheu ou la solution bourrine où tu te casses pas les c* ^^?

snake645
snake645
Niveau 7
16 avril 2007 à 23:14:41

le nombre entré est en binaire

Watza][Kamikaze
Watza][Kamikaze
Niveau 8
16 avril 2007 à 23:15:30

C´est idiot vos algos, soit on programme tout en binaire, soit rien, on fait pas un mixe.

Y a des opérateurs sur les bits en C++ genre "<<" qui permettent de décaler d´un cran. On fait ensuite juste un test boulléen sur le dernier chiffre et le << le réduit...

Watza][Kamikaze
Watza][Kamikaze
Niveau 8
16 avril 2007 à 23:20:47

jor comment j´écris boolen.

Je vais me jetter sous un pont.

Tidus1188
Tidus1188
Niveau 10
16 avril 2007 à 23:22:38

Boolen c´est pas mieux -> Booléen :sarcastic:

Watza][Kamikaze
Watza][Kamikaze
Niveau 8
16 avril 2007 à 23:25:33

Ouai mais là chuis en bas du pont alors j´entends pas.

Watza][Kamikaze
Watza][Kamikaze
Niveau 8
16 avril 2007 à 23:26:04

"je vais me jetter sous un pont"

Bon, c´est fini les stupidités, au lit.X D

the_bricedenice
the_bricedenice
Niveau 8
16 avril 2007 à 23:26:05

Beuh, mon algorithme marche très bien avec des nombres décimaux (ce qui est demandé ...), ou tout du moins pour toute base avec plus de symboles que le binaire.

le blabla de la fin, c´est voir si en partant d´un nombre de zéros d´un nombre binaire, on obtient bien le bon nombre de zéros dans le programme avec le nombre décimal.

Sous forums
  • Cours et Devoirs
  • Histoire
  • Métiers & Orientation
  • Environnement & Nature
  • Politique
  • Philosophie
La vidéo du moment