C'est bon j'ai édité.Euh f c'est quoi ?
C'est bon j'ai édité.Euh f c'est quoi ?
Formateur expert .Net/C#/WPF/EF Certifié MCP disponible sur Paris, province et pays limitrophes (enseignement en français uniquement).
Mon blog : pragmateek.com
Tout d'abord salut a tous je me présente je suis le deuxième élève qui fait ce ppe, suite a vos remarque je vais tenter de vous expliquez un peu mieu la situation:
Nous avons commencer a faire les ppe il y a maintenant 6 ou 7 semaine pendant ces semaine notre projet de ppe était d'utiliser une carte control-boy sur laquellle on devait pouvoir envoyer un code écrit en c pour qu'elle convertisse un nombre du décimal au binaire a l'aide de ses bouton d'entrer de ses led en sortie pour afficher le résultat.
Mais le compileur qui gère la conversion du c vers l'assembleur pour pouvoir etre interprété par la carte est extremement buggéaprès plusieur semaine d'essaies nous n'avons jamais réussi a réaliser le moindre programme en c pour cette carte et même nos prof n'y conprenaient rien ( d'ailleur il ont du venir nous voir une seule fois il ont vu que ça ne marchait pas il nous on souhaité bonne chance et ils sont repartis...
).
Bon enfin bref nous avons donc du changer de sujet d'urgence il y a 2 semaines nous nous somme donc orienté vers le meme typede programme mais réalisé sous windows. Et la toujours des problème: impossible de compiler le moindre programme avec code blocks en cours a cause de leurs système de gestion du réseau qui bloque tout![]()
Nous devons donc réaliser ce programme tous seul a prioris sans leur aide et malheuresement maintenant cela devient assez urgent (on passe en ppe mardi). J'ai essayé de réaliser quelques algorithmes de conversion qui ne marche pas pour l'instant et que je vous postes ici plus bas.
Concernant le fait que notre ppe est cour: c'est vrai mais il faut tenir compte que notre choix de problématique pour notre ppe est : "comment accélérer la conversion manuelle d'un nombre décimal en un nombre binaire ?" et donc notre projet comporte l'apprentissage du c en partant de zero étant donné qu'on ne nous donne aucun cours en classe et que ce n'est pas au programme. Et ça ne devrait pas etre si cour quand même j'espère car si on arrive a réaliser une conversion d'une base en une autre on peut envisager l'inverse ou en créer de nouvelle si jamais on a le temps ( je n'y croit pas trop)
merci beaucoup a tous ceux qui nous aide quand même pour ce programme
>zerocoolyoussef et seriousme
ca sera plus classe avec la version récursive
voila une fonction qui recoit un comme paramètre un nombre en décimal et qu'il l'affiche en binaire
void affichbin(int nombre)
{
if(nombre)
{
affichbin(nombre/2);
printf("%d",nombre%2);
}
}
et c'est tout.Essaie le ca marche tout seulmerci de votre aide j'ai testé vos solution avec le code ci dessous mais malheuresement aucune des 2 ne marche pour l'instantvoid affichbin(int nombre)
{
if(nombre!=0)
{
affichbin(nombre/2);
printf("%d",nombre%2);
}
else{
printf("0");
}
}:
#include <stdio.h>
#include <stdlib.h>
int main()
{
long nombre=7;
void affichbin(int nombre)
{
if(nombre!=0)
{
affichbin(nombre/2);
printf("%d",nombre%2);
}
else{
printf("0");
}
}
return 0;
}
>>DrySs
merci aussi de ton aide j'ai essayé de compiler ton code( que je ne comprends pas d'ailleur) mais je ne comprends pas tes 3 dernières lignes
Comment faire pour compiler avec des paramètre et l'éxécuter avec des paramètres ? (sous code blocks)1) Tu enregistre ca dans un fichier "test.c".
2) Tu compile le programme en faisant "cc test.c -o putbase".
3) Tu l'execute avec "./putbase [nombre] [base]".
sinon j'ai moi meme tenté de réaliser 2-3 algo qui ne marche pas pour l'instant et qui malheuresement ne sont pas codés "propres" j'en suis désolé pour leurs lectures. Je les post ici:
fichier main.c:
fichier decbin.h:#include <stdio.h>
#include <stdlib.h>
#include "decibin.h"
#define TAILLE 1000
long convertdecbin(long nbdeci);
int main()
{
long nbbin[TAILLE] = {0};
long nbdeci = 7, j=1;
convertdecbin(nbdeci);
while (nbbin[TAILLE-j]!=1)
{
j++;
}
while (j!=(TAILLE+1))
{
printf ("%ld",nbbin[TAILLE-j];
j++;
}
return 0;
}
bon pour l'instant c'est juste des tests qui ne amrche paslong convertdecbin (long nbdeci)
{
long i=0;
for(i=0; nbdeci!=0; i++)
{
nbbin[i]= nbdeci %2;
nbdeci /=2;
}
}![]()
merci a vous encore![]()
#include <stdio.h>
#include <conio.h>
void affichbin(int);
int main(void)
{
affichbin(7);
getch();
return 0;
}
/*******************************************/
void affichbin(int nombre)
{
if(nombre>0)
{
affichbin(nombre/2);
printf("%d",nombre%2);
}
else if(nombre==0)
printf("0");
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 #include<stdio.h> #include<stdlib.h> int main() { int nombre,i=0,Nombre[16]; for(i=0;i<16;i++) Nombre[i]=0; i=-1; scanf("%d",&nombre); while(nombre) { i++; Nombre[i]=nombre%2; nombre/=2; } for(;i>=0;i--) printf("%d",Nombre[i]); system("pause"); return 0; }
Prenez le temps d'aller vite...![]()
Programme sous Windows, en C avec Code::Blocks, en Java JRE 1.6. avec Eclipse, en PHP/HTML/CSS avec Dreamweaver CS5 ou NotePad++ et en VBA sous avec Access 2010, Excel 2010, Word 2010 et Outlook 2010.
Envoyé par zerocoolyoussef
![]()
Prenez le temps d'aller vite...![]()
Programme sous Windows, en C avec Code::Blocks, en Java JRE 1.6. avec Eclipse, en PHP/HTML/CSS avec Dreamweaver CS5 ou NotePad++ et en VBA sous avec Access 2010, Excel 2010, Word 2010 et Outlook 2010.
Voilà les amis , nous sommes parvenus à un code qui marche.
Voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 #include <stdio.h> #include <stdlib.h> #define TAILLE 1000 long nbbin[TAILLE] = {0}; long convertdecbin (long nbdeci); int main() { long nbdeci = 0, j=1; printf("Veuillez entrer la variable decimale a convertir.\n"); scanf("%ld", &nbdeci); convertdecbin(nbdeci); printf ("Voici la valeur de votre nombre decimal %ld en binaire:",nbdeci); while (nbbin[TAILLE-j]!=1) { j++; } while (j!=(TAILLE+1)) { printf ("%ld",nbbin[TAILLE-j]); j++; } return 0; } long convertdecbin (long nbdeci) { long i=0; for(i=0; nbdeci!=0; i++) { nbbin[i]= nbdeci %2; nbdeci /=2; } }
Bon vous remarquerez que si vous entrez la variable 0 à convertir on a un petit bug :p mais nous sommes en train de corriger celà.
Nous tenons à vous remercier pour l'aide que vous nous avez apportéset du temps que vous nous avez consacrés pour nous repondre.
/!\ aux variables globales!!!Envoyé par Supervince
Je comprend pas pk votre code est si long...
Prenez le temps d'aller vite...![]()
Programme sous Windows, en C avec Code::Blocks, en Java JRE 1.6. avec Eclipse, en PHP/HTML/CSS avec Dreamweaver CS5 ou NotePad++ et en VBA sous avec Access 2010, Excel 2010, Word 2010 et Outlook 2010.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager