目的:
バイナリ文字列の合計を求めます。
(推奨チュートリアル: java 教育ビデオ )
タイトルの紹介:
2 つのバイナリ文字列を与え、その合計を返します (binary Express を使用)。
入力は空ではない文字列であり、数値 1 と 0 のみが含まれます。
例 1:
入力: a = "11"、b = "1"
出力: "100"
例 2 :
入力: a = "1010"、b = "1011"
出力: "10101"
プロンプト:
それぞれstring は文字「0」または「1」のみで構成されます。
1 文字列が「0」でない場合、先頭のゼロは含まれません。
import java.util.Scanner;public class text1 { public static void main(String[] a){ Scanner imput=new Scanner(System.in); System.out.println("请输入两个二进制数:"); String a1,a2,a3; a1=imput.next(); a2=imput.next(); a3=Solution(a1,a2); System.out.println(a3); } public static String Solution(String a, String b) { StringBuilder ans = new StringBuilder(); int ca = 0; for(int i = a.length() - 1, j = b.length() - 1;i >= 0 || j >= 0; i--, j--) { int sum = ca; sum += i >= 0 ? a.charAt(i) - '0' : 0; sum += j >= 0 ? b.charAt(j) - '0' : 0; ans.append(sum % 2); ca = sum / 2; } ans.append(ca == 1 ? ca : ""); return ans.reverse().toString(); } }
実行結果:
関連チュートリアル: Java 入門チュートリアル
以上がJava はバイナリ文字列の合計を計算しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。