So konvertieren Sie Binärzahlen in Dezimalzahlen in C

So Konvertieren Sie Binarzahlen In Dezimalzahlen In C



Binärzahlen sind Kombinationen aus Nullen und Einsen, während Dezimalzahlen Zahlen zur Basis 10 sind. Bei der C-Programmierung wandeln wir Binärzahlen in Dezimalzahlen um, um die Codeleistung zu verbessern und ihn für Lernende leichter verständlich zu machen.

Diese Richtlinie behandelt die Umwandlung von Binärzahlen in Dezimalzahlen in C.

Bevor wir uns mit dem Konzept selbst befassen, wollen wir uns ansehen, was Binär- und Dezimalzahlen in C sind.







Binäre und dezimale Zahlenformate in C

Binäre Zahlen sind Zahlen, die in Form einer Kombination aus zwei Ziffern 0 und 1 dargestellt werden, und sie werden als Zahlensystem zur Basis 2 bezeichnet. Dezimalzahlen hingegen sind Zahlen zur Basis 10, die aus Ziffern von 0 bis 9 bestehen.



Wie Sie am Namen binär sehen, was zwei bedeutet, nennen wir Zahlen in Form einer Kombination aus zwei Ziffern 0 und 1 binäre Zahlen. es wird als Zahlensystem zur Basis 2 bezeichnet.



Warum Konvertieren von Binärzahlen in Dezimalzahlen in C

Die Arbeit mit Binärzahlen ist aufgrund der vielen möglichen Kombinationen von Nullen und Einsen eine Herausforderung für Entwickler. Dezimalzahlen hingegen sind einfacher zu verstehen und zu verarbeiten, was sie zu einer schnelleren und effizienteren Methode für C-Programme macht. Das Konvertieren von Binärzahlen in Dezimalzahlen in C beinhaltet das Multiplizieren aller Binärziffern mit der entsprechenden Zweierpotenz und das Addieren der Ergebnisse, was mithilfe von Schleifen erfolgt.





Ein einfacher Algorithmus zum Konvertieren von Binär in Dezimal in C

Hier ist ein einfacher Algorithmus zum Konvertieren von Binär in Dezimal in C mit sechs einfachen Schritten:

  • Nimm eine Binärzahl als Eingabe vom Benutzer.
  • Initialisieren Sie eine Variable „Dezimal“ auf 0 und eine Variable „Basis“ auf 1.
  • Extrahieren Sie die Ziffer ganz rechts der Binärzahl mit dem Modulo-Operator (%) und addieren Sie das Produkt dieser Ziffer und der Basis zur Dezimalvariablen.
  • Multiplizieren Sie die Basisvariable mit 2.
  • Entferne die Ziffer ganz rechts aus der Binärzahl, indem du eine ganzzahlige Division (/) verwendest.
  • Wiederholen Sie die Schritte 3-5, bis alle Ziffern verarbeitet wurden.
  • Zeigt den Dezimalwert der in der Variablen „decimal“ gespeicherten Binärzahl an.

Konvertieren Sie Binärzahlen in C in Dezimalzahlen

Das Folgende ist ein einfacher Code zum Konvertieren von Binärzahlen in Dezimalzahlen in der C-Programmierung.



#include

#include

int hauptsächlich ( ) {

lang lang A ;

Druckf ( 'Bitte geben Sie eine Binärzahl ein: ' ) ;

Scanf ( '%lld' , & A ) ;

Druckf ( '%lld binär = %d dezimal' , A , binärToDezimal ( A ) ) ;

zurückkehren 0 ; }

int binärToDezimal ( lang lang A ) {

int Dez = 0 , B = 0 , R ;

während ( A != 0 ) {

R = A % 10 ;

A /= 10 ;

Dez += R * pow ( 2 , B ) ;

++ B ;

}

zurückkehren Dez ;

}

Im obigen Code wird eine globale Funktion als Name erstellt „binaryToDecimal“ . Dann deklarieren wir hauptsächlich eine long long Variable als 'A' und bitten Sie den Benutzer, eine Binärzahl hinzuzufügen und in eine Dezimalzahl umzuwandeln, indem Sie die aufrufen „binaryToDecimal“ Funktion mit Parameter von a“. Im „binaryToDecimal“ Funktionsdefinition eine Dezimalkonvertierung durch die While-Schleife.

Ausgang

Sie können auch eine integrierte verwenden strtol() Funktion zum Konvertieren von Binärzahlen in Dezimalzahlen in der C-Programmierung.

Das Folgende ist der Code für eine solche Funktion:

#include

#include

int hauptsächlich ( ) {

verkohlen Binärzeichenfolge [ ] = '1110' ;

verkohlen * ptr ;

lang Dezimalwert ;

Dezimalwert = abgestürzt ( Binärzeichenfolge , & ptr , 2 ) ;

Druckf ( 'Binärzeichenfolge' % S ' ist gleich dem Dezimalwert %ld. \N ' , Binärzeichenfolge , Dezimalwert ) ;

zurückkehren 0 ;

}

Der obige Code konvertiert eine binäre Zeichenfolge „1110“ in seinen äquivalenten Dezimalwert mit dem strtol() -Funktion, die die binäre Zeichenfolge, einen Zeiger auf einen char-Zeiger und die Basis des Zahlensystems als Argumente verwendet. Schließlich wird das Ergebnis mit auf der Konsole ausgegeben printf().

Ausgang

Abschluss

Wie wir wissen, sind Menschen mit Dezimalzahlen im Vergleich zu Binärzahlen vertraut, da sie schwer zu handhaben sind. Dezimalziffern sind einfach auszuführende arithmetische Operationen, da sie in der Basis 10 sind und ihre Verarbeitung im Vergleich zu Binärziffern schneller ist, daher werden die Binärzahlen in Dezimalzahlen umgewandelt. Die obige Übersicht hat die Umwandlung von Binärzahlen in Dezimalzahlen mit dem C-Programm mit benutzerdefinierten Funktionen und eingebaut erklärt strtol() Funktion.