Chào các bạn, hôm nay mình vừa mới viết xong chương trình tính giai thừa của 1 mảng sử dụng hàm function. Nhưng khi chạy thì nó không xuất hiện ra kết quả như ý muốn. VD: nhập 5 số: 1,4,7,5,2 kết quả in ra sẽ là: 1,24,5040,120,2. Nhưng lúc mình chạy thì nó lại in ra: 1,24,2,5040 thiếu mất số 120 và cách sắp xếp cũng khác. Mong các bạn giúp mình bằng cách sửa code giúp mình với ( mình nghĩ lỗi là do phần in ra giá trị giai thừa nhưng mà mãi mình không sửa được) !!!! Thanks nhiều, chúc các bạn 1 ngày vui vẻ !
Code :
uses crt;
var
A:Array[1..10] of integer
n,i:integer;
Function GiaiThua(k,integer):Longint;
var
GTGT:longint;
Begin
GTGT:=1;
For i:=1 to k do
GTGT:= GTGT * i;
GiaiThua:=GTGT;
End;
Begin
Clrscr;
writeln('Ban hay nhap so phan tu cua day so');
readln(n);
For i:=1 to n do begin
writeln('Hay nhap so thu',i);
readln(A[i]);
end;
For i:=1 to n do
write(GiaiThua(A[i]):6);
readln;
end.
Bookmarks