请用Fortran软件写一个程序,要求如下:根据一元二次方程的求根公式,输入ab,c的值,请你输出这个方程的根如果两根相等,只输出一个根,如果方程无解,输出“No solution’输入样例1:124 输出样例1: No solution输入样例2:156 输出样例2: 2.00000000-3.00000000
时间: 2024-03-16 08:41:57 浏览: 124
编写一个求解一元二次方程的根的程序,方程的系数由用户输入。
4星 · 用户满意度95%
好的,以下是用 Fortran 实现的程序:
```fortran
program solve_quadratic_equation
implicit none
real :: a, b, c, delta, x1, x2
write(*, *) "请输入一元二次方程的系数a、b、c:"
read(*, *) a, b, c
delta = b**2 - 4*a*c
if (delta < 0) then
write(*, *) "No solution"
else if (delta == 0) then
x1 = -b / (2*a)
write(*, '(f8.8)') x1
else
x1 = (-b + sqrt(delta)) / (2*a)
x2 = (-b - sqrt(delta)) / (2*a)
write(*, '(f8.8, 1x, f8.8)') x1, x2
end if
end program solve_quadratic_equation
```
程序中使用 `write(*, *)` 和 `read(*, *)` 分别实现了输入和输出,`f8.8` 表示输出实数的格式,保留小数点后 8 位。程序先读入 $a,b,c$ 的值,计算出 $\Delta=b^2-4ac$,然后根据 $\Delta$ 的值分别求解方程的根并输出结果。
阅读全文