Cho dãy fibonacci : 1,1,2,3,5,8,...
- Yêu cầu : Viết chương trình nhập vào N, tính tổng các số có trong dãy (từ giá trị đầu của dãy và kết thúc tại giá trị N) trên là số nguyên tố
- Dữ liệu vào : Gồm 1 dòng là số N
- Dữ liệu ra : Gồm 1 dòng là tổng của các số có trong dãy fibonacci và là số nguyên tố
Ví dụ :
Dữ liệu vào | Dữ liệu ra |
5 | 12 |
Bài bạn có 1 số lỗi về cú pháp. Và đề không yêu cầu sử dụng tệp .
VD lỗi : if uoc:=2 then S:=S+A;
Nhưng thuật toán vậy là đúng rồi. Mình sẽ tặng bạn GP![ok ok](https://hoc24.vn/media/cke24/plugins/smiley/images/ok.png)
Cách 2:
uses crt;
var f:array[1..100]of integer;
n,i,t,kt,j:integer;
begin
clrscr;
write('Nhap n='); readln(n);
f[1]:=1;
f[2]:=1;
i:=2;
repeat
i:=i+1;
f[i]:=f[i-1]+f[i-2];
until i=n;
t:=0;
for i:=1 to n do
if f[i]>1 then
begin
kt:=0;
for j:=2 to f[i]-1 do
if f[i] mod j=0 then kt:=1;
if kt=0 then t:=t+f[i];
end;
writeln(t);
readln;
end.