Tính Tổng
S=1+2+3^2+4^3+....+n^(n-1);
s=1!+2!+3!....+n!
Bài này làm hoài ko ra.. Nếu dc thì có thể làm theo vòng lặp for dc ko
Tính Tổng
S=1+2+3^2+4^3+....+n^(n-1);
s=1!+2!+3!....+n!
Bài này làm hoài ko ra.. Nếu dc thì có thể làm theo vòng lặp for dc ko
Theo mình, nên dùng thuật toán đệ qui để xây dựng hàm tính Giai Thừa và Lũy thừa trước ! Trong chương trình chính, bạn sẽ dùng vòng lặp For để tính tổng (biến tổng ban đầu được gán giá trị bằng 0), đại khái thế này:
For i:=1 to n do
tong:=tong+ giaithua(i)
i:= i +1
Bạn có thể giải thích nhiều hơn về bài 1 dc ko... Còn bài 2 làm thế này ko biết đúng ko...
Var s,j,i,n:integer;
Begin
Write('Nhap n=');
readln(n);
j:=1;
s:=0;
For i:=1 to n do
Begin
j:=j*i;
s:=s+j;
end;
Write('Xuat S=',s);
Readln;
end.
Mình thấy cũng đúng đúng nhưng muốn biết chắc chắn thì cứ mở pascal ra mà test còn bài 1 mình đưa bạn công thức nè :
Tính a^b: exp(b*Ln(a))===> bài 1 bạn chỉ cần thay thành
for i:=1 to n do
S:=S+exp((i-1)*Ln(i));
Rồi xuất S.
Chúc bạn thành công
cách bạn mình đã làm thử nhiều lần rồi... Nhưng ko hiểu sao "con chuột" luôn nháy "Type Mismatch" ở dòng s:=s+exp((i-1)*ln(i)); chả hiểu sao
sao mình "Uses math;" mà lại bị "File Not Found (Math.TPU)"
đâu cần dùng thư viện hùi mình làm hok dùng thư viện vẫn đc mà
Bookmarks