Diễn đàn Hải Dương học

Giương buồm ra biển lớn !


Xin chỉ lỗi sai giúp

Share

myanh

-----
-----

Tổng số bài gửi : 26
Danh dự : 0
Join date : 16/01/2008

Xin chỉ lỗi sai giúp

Bài gửi by myanh on Sat Sep 27, 2008 3:59 pm

Mình đang làm 1 bài toán về Fortran:
sin X= X- (X**3)/3! + (X**5)/ 5! - ... + ((-1)**n)* (X**(2n+1))/ (2n+1)!

Đây là chương trình tính của mình

Code:
implicit none
integer i,n
parameter (n=200)
real x,k,kq1,t1

!Ct
print*,'x='
read(*,*)x
k=0
do i=1,n
   t1=2*i+1
   call gt(t1,kq1)
   k=k+(-1)**i*x**t1/kq1
enddo
print*,'sinX='
write(*,*)k

end

! Ct con
subroutine gt(t,kq)
integer i,t
real m,kq

m=1
Do i=1,t
   m=m*i
enddo
kq=m
endsubroutine

Chương trình được báo là không lỗi sai nhưng khi chạy kết quả thì không thể tính được. Các bạn nào biết nguyên nhân xin hãy sửa giúp mình . Chân thành cám ơn
avatar
tieuminh2510

*****
*****

Tổng số bài gửi : 350
Danh dự : 5
Join date : 15/01/2008
Age : 32

Re: Xin chỉ lỗi sai giúp

Bài gửi by tieuminh2510 on Sun Oct 05, 2008 7:00 pm

Lổi nè: The type of the actual argument differs from the type of the dummy argument.

Dịch ra 1 cách đơn giản là cái sub của bạn này xây dựng và dữ liệu đưa vào không phù hợp.

Phía trên bạn này khai báo i1 là real, trong sub bạn này lại khai báo i là integer, nó không báo lổi mới lạ. Mà nè với lổi cú pháp thông thường như thế bạn này nên đọc phần báo lổi trong trình biên dịch, nó sẽ giúp bạn tìm ra cách khắc phục.

Thật ra chương trình bạn ngoài lỗi cú pháp ra còn mắc phải lỗi trong tính toán nữa. Cái này thì tự bạn này phải kiểm tra lại mình không sửa giúp đâu nhé !
avatar
thangnc13

*----
*----

Tổng số bài gửi : 50
Danh dự : 0
Join date : 13/06/2008
Age : 30
Đến từ : hà tĩnh.

Re: Xin chỉ lỗi sai giúp

Bài gửi by thangnc13 on Tue Mar 24, 2009 11:20 pm

:botay:mấy bài toán này lập trình bằng for đúng là giết gà bằng dao mổ trâu. bác có cần tài liệu for bằng tiếng việt không tui up lên cho.

Sponsored content

Re: Xin chỉ lỗi sai giúp

Bài gửi by Sponsored content


    Hôm nay: Sun Dec 17, 2017 1:34 am