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

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

# Qiskitバージョンの確認
qiskit.__qiskit_version__

# 2量子ビット回路を用意
q1 = QuantumCircuit(2)    

# 回路を描画
q1.draw(output="mpl")

# q0=0, q1=1の場合
q1.x(1)    # q1を1にします。
q1.cx(0,1)   # CNOTゲートの制御ゲートをq0、目標ゲートをq1にセットします。

# 回路を描画
q1.draw(output="mpl")

## First, simulate the circuit
## 状態ベクトルシミュレーターの実行
vector_sim = Aer.get_backend('statevector_simulator')
job = execute(q1, vector_sim )
result = job.result().get_statevector(q1, decimals=3)

print(result)

# 2量子ビット回路を用意
q2 = QuantumCircuit(2)    

# q0=1, q1=1の場合
q2.x(0)    # q0を1にします。
q2.x(1)    # q1を1にします。
q2.cx(0,1)   # CNOTゲートの制御ゲートをq0、目標ゲートをq1にセットします。

# 回路を描画
q2.draw(output="mpl")

## First, simulate the circuit
## 状態ベクトルシミュレーターの実行
vector_sim = Aer.get_backend('statevector_simulator')
job = execute(q2, vector_sim )
result = job.result().get_statevector(q2, decimals=3)

print(result)