# Qiskitライブラリーを導入
from qiskit import *

# 描画のためのライブラリーを導入
import matplotlib.pyplot as plt
%matplotlib inline

qiskit.__qiskit_version__

grover11=QuantumCircuit(2,2)
grover11.draw(output='mpl')

# 問題-1 上の回路図を作ってください。

grover11.draw(output='mpl')

# 問題-2　上の回路図（問題-1に赤枠部分を追加したもの）を作ってください。

grover11.draw(output='mpl')

#問題-3 上の回路図（問題-2に赤枠部分を追加したもの）を作ってください。
grover11.i(0) # 回路の見栄えを整えるために、恒等ゲートを差し込む。無くても動くが、表示の見栄えが崩れるのを防止するために、残しておく。

grover11.draw(output='mpl')

grover11.measure(0,0)
grover11.measure(1,1)
grover11.draw(output='mpl')

backend = Aer.get_backend('statevector_simulator') # 実行環境の定義
job = execute(grover11, backend) # 処理の実行
result = job.result() # 実行結果
counts = result.get_counts(grover11) # 実行結果の詳細を取り出し
print(counts)

from qiskit.visualization import *
plot_histogram(counts) # ヒストグラムで表示

