1. paizaラーニングトップ
  2. レベルアップ問題集
  3. 論理演算メニュー(言語選択)
  4. 問題一覧 Erlang(Beta)編
  5. 全加算器 Erlang(Beta)編

論理演算メニューのサムネイル
全加算器 Erlang(Beta)編(paizaランク C 相当)

問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!

問題

下記の問題をプログラミングしてみよう!

京子ちゃんは 二進数 の整数同士で足し算をするプログラムを作成したいと思っています。
二進数の足し算において、下から 1 けた目の計算は半加算器でできることを知り、 2 けた目の計算も同じように足し算ができないかと考えています。



上記の画像のように、 現在下から 2, 3 けた目を計算しようとしています。そこで、入力 A, B と 1 けた目からの繰り上がり C1 が与えられます。 京子ちゃんに変わって C2 と S を計算し、出力してください。

この問題は少し難しいので、ヒントとなる画像を用意しました。 2 つの半加算器と XOR 演算を用いることで計算することができます。

入力される値

A B C1


入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。 標準入力からの値取得方法はこちらをご確認ください
期待する出力

C2, S をこの順に、半角スペース区切りで出力してください。末尾に改行を入れ、余計な文字、空行を含んではいけません。

C2 S

条件

すべてのテストケースにおいて、以下の条件をみたします。

・ A, B, C1 は 0 または 1

入力例1

0 1 1

出力例1

1 0

入力例2

0 0 0

出力例2

0 0

問題一覧へ戻る

ページの先頭へ戻る