Heim > Backend-Entwicklung > PHP-Tutorial > [PHP-Lernen] Implementieren Sie die Addition zweier binärer n-Bit-Ganzzahlen

[PHP-Lernen] Implementieren Sie die Addition zweier binärer n-Bit-Ganzzahlen

little bottle
Freigeben: 2023-04-06 11:14:02
nach vorne
1844 Leute haben es durchsucht

In diesem Artikel geht es um die Verwendung von PHP zum Addieren von zwei n-Bit-Binärzahlen. Es hat einen Referenzwert und interessierte Freunde können mehr darüber erfahren.

Frage: Zwei n-Bit-Binärzahlen werden in zwei n-Element-Arrays A bzw. B gespeichert. Die Summe dieser beiden Ganzzahlen wird in einem n+1-Element-Array C gespeichert.
Antwort: Diese Frage dient hauptsächlich dazu, das Problem des additiven Übertrags zu untersuchen, das Element 1+1 =0 und eine Ziffer vorwärts zu bewegen
ADD-BINARY(A,B)
 C=new integer[A.length+1]
 carry= 0
für i=A.length downto 1
i]+carry)/2
C[i]=carry

Der Code lautet wie folgt:

<?php
function addBinary($A,$B){
        $C=array();
        $length=count($A);
        $carry=0;
        for($i=$length-1;$i>=0;$i--){
                //当前位的数字逻辑 1+1=0 1+0=1
                $C[$i+1]=($A[$i]+$B[$i]+$carry)%2;
                //进位的数字逻辑  1+1=1 1+0=0
                $carry=intval(($A[$i]+$B[$i]+$carry)/2);
        }   
        $C[$i+1]=$carry;
        return $C; 
}

$A=array(0,1,1,0);
$B=array(1,1,1,1);
$C=addBinary($A,$B);
var_dump($C);
Nach dem Login kopieren
Verwandte Tutorials:

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt von[PHP-Lernen] Implementieren Sie die Addition zweier binärer n-Bit-Ganzzahlen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:cnblogs.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage