[问题] 最小值有两个只显示一个

楼主: Laoda245566   2013-12-03 00:00:30
program ex
integer i
real a,x,x1,y,y1
write(*,*) "input a"
read(*,*) a
do i=-500,500
x=i
y=(x**2)+a*x
if (i.eq.-500) then
y1=y
x1=x
end if
if (y.lt.y1) then
y1=y
x1=x
end if
end do
write(*,*)"x=",x1,"y=",y1
end
以上为我计算y=x^2+ax 最小的方法
万一a代1
答案应该是-1跟0
但是只会显示-1
该怎么让另外一个也显示
作者: physbook (路克)   2013-02-04 10:38:00
再开一个变量 多加一个if处理x==x1的情况不过你确定最小值的时候会有两个x?oh, sorry. 没注意到你x分辨率只有1
作者: rex0707 (我就是我)   2013-02-04 12:55:00
你没有判断当不同i值却得到相同y值的情况阿而且只有一个write 当然只会输出一个值而已

Links booklink

Contact Us: admin [ a t ] ucptt.com