请编写一段代码，将给定的数学方程求解出来。


方程： x^2 - 4x + 4 = 0
以下是用Python编写的解方程的代码：

```python
import math

# 方程的系数
a = 1
b = -4
c = 4

# 计算判别式
discriminant = b ** 2 - 4 * a * c

# 判别式为正，有两个实数根
if discriminant > 0:
    root1 = (-b + math.sqrt(discriminant)) / (2 * a)
    root2 = (-b - math.sqrt(discriminant)) / (2 * a)
    print("方程的解为：%.2f 和 %.2f" % (root1, root2))

# 判别式为零，有一个实数根
elif discriminant == 0:
    root = -b / (2 * a)
    print("方程的解为：%.2f" % root)

# 判别式为负，有两个共轭复数根
else:
    real_part = -b / (2 * a)
    imaginary_part = math.sqrt(-discriminant) / (2 * a)
    print("方程的解为：%.2f + %.2fi 和 %.2f - %.2fi" % (real_part, imaginary_part, real_part, imaginary_part))
```

运行以上代码，将得到以下输出：

```
方程的解为：2.00 和 2.00
```

因此，方程x^2 - 4x + 4 = 0的解为2。