English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Recueil complet d'exemples de programmation en C
Dans cet exemple, vous allez apprendre à convertir manuellement un nombre binaire en octal et un nombre octal en binaire en créant des fonctions utilisateur définies.
Pour comprendre cet exemple, vous devriez comprendre ce qui suitProgrammation en CSujet :
Dans ce programme, nous allons d'abord convertir le nombre binaire en decimal. Ensuite, le nombre decimal en octal.
#include <math.h> #include <stdio.h> int convert(long long bin); int main() { long long bin; printf("Entrez un nombre binaire: "); scanf("%lld", &bin); printf("%lld (binaire) = %d (octal)", bin, convert(bin)); return 0; } int convert(long long bin) { int oct = 0, dec = 0, i = 0; //Convertir un nombre binaire en decimal while (bin != 0) { dec += (bin %% 10) * pow(2, i); ++; bin /= 10; } i = 1; //Conversion de decimal à octal while (dec != 0) { oct += (dec % 8) * ; dec /= 8; i *= 10; } return oct; }
Résultat de la sortie
Entrez un nombre binaire: 101001 101001=(binaire) = 51(octal)
Dans ce programme, le nombre octal est d'abord converti en nombre decimal. Ensuite, le nombre decimal est converti en nombre binaire.
#include <math.h> #include <stdio.h> long long convert(int oct); int main() { int oct; printf("Entrez un nombre octal: "); scanf("%d", &oct); printf("%d (octal) = %lld (binaire)", oct, convert(oct)); return 0; } long long convert(int oct) { int dec = 0, i = 0; long long bin = 0; // Convertir un nombre octal en decimal while (oct != 0) { dec += (oct %% 10) * pow(8, i); ++; oct /= 10; } i = 1; // Conversion de décimal à binaire while (dec != 0) { bin += (dec % 2) * ; dec /= 2; i *= 10; } return bin; }
Résultat de la sortie
Entrez un nombre octal: 51 51(Octal) =101001(Binaire)