PROGRAM MYPROG
REAL A,B
INTEGER N
REAL Y(20)
REAL X(20)
REAL STEP
INTEGER iH
WRITE(*,*) 'Desired interval, seperated by whitespace: '
READ(*,*) A, B
WRITE(*,*) 'Desired number of samples(min 2,max 20): '
READ(*,*) N
IF(N.GT.20.OR.N.LT.2) THEN
WRITE(*,*) 'Too many samples, try again'
READ(*,*)
STOP
END IF
WRITE(*,*) 'OK, ',N,'Samples on interval [',A, ',',B,']'
WRITE(*,*) '---Calculating function x*x*sin(pi*x) for all samples---'
STEP=(B-A)/(N-1)
iH=1
OPEN(11, FILE='output.dat', STATUS='unknown')
DO i=1,N,1
X(i)=A+(i-1)*STEP
Y(i)=(X(i)*X(i)*sin(X(i)*2*ACOS(0.0)))!3.1415926535897932))
WRITE(*,*) X(i),' has the corresponding value ', Y(i)
IF(Y(i).GT.Y(iH)) THEN
iH=i
ENDIF
WRITE(11,*) X(i),Y(i)
ENDDO
! CALL SYSTEM('gnuplot -e plot "in.dat" -p')
WRITE(*,*) 'The highest value was ', Y(iH),' occurring at x=',X(iH)
CLOSE(11)
END PROGRAM