Chào các bạn! Vì nhiều lý do từ nay Truyen2U chính thức đổi tên là Truyen247.Pro. Mong các bạn tiếp tục ủng hộ truy cập tên miền mới này nhé! Mãi yêu... ♥

đề 8

Câu 1

a) F 16 = 987, công thức dãy số Fiboncci là: (1 đ)

F (n) =

b) Procedure Fibonacci(n,F) (1 đ)

• {Tạo lập 2 số fibonacci đầu tiên}

F[1]: = 1; F[2] := 1;

• {tính lần lượt các số fibonacci tiếp theo}

for i :=3 to n do F[i] := F[i-1] + F[i-2];

• {In lần lượt n số fibonacci}

for i :=1 to n do write(F[i]);

Câu 2

+ Dạng cài đặt (0.5 đ)

const n=50;

type hocsinh = record

Hoten: string[27];

lớp: string;

DiemTk: real;

end;

list = record

Eles: array[1..n]of hocsinh;

count: 0..n;

end;

var L: list;

+ Tạo danh sách có n học sinh: (1 đ)

procedure taoDS(var l:list);

var M: hocsinh;

begin

write('nhap so hoc sinh trong danh sách n= '); readln(n);

for i:=1 to n do

begin

writeln('Nhap hoc sinh thu i : ');

write('Nhạp ho ten: '); readln(M.Hoten);

write('Nhạp Lớp: '); readln(M.lop);

write('Nhạp Điem tong kết: '); readln(M.DiemTK);

insert(M,i,L);

end;

end;

+ Thêm học sinh có : Họ tên:Nguyen Van An; Lớp:TH2B ; DiêmTK:7.4 vào sau vị trí k kể từ đầu danh sách: (1 đ)

procedure insert (M: hocsinh, k: integer, var L: list);

var i: integer;

begin

i:=L.count;

while i>k do

begin

L.Eles[i]:=L.Eles[i-1];

i:=i-1;

end;

L.Eles[k]:= M;

L.count:=L.count +1;

end;

Chú ý: Trước khi gọi thủ tục có kiểm tra tính hợp lệ của k, đổ các thông tin của học sinh cần thêm vào ô nhớ M

+ Sắp xếp sinh viên theo từng lớp, in danh sách sinh viên theo từng lớp: Tương tự ý c), d) câu 2 mã đề 01 (1,5 đ)

+ Loại bỏ tất cả các học sinh có điểm tổng kết <5 ra khỏi danh sách: (1 đ)

Cách làm: b1) Tìm học sinh đầu tiên trong danh sách có điểm tổng kết <5, giả sử vị trí k

b2) Loại bỏ học sinh ở vị trí k

b3) Lặp đi lặp lại b1); b2) cho đến khi hết vị trí tìm thấy

Chú ý: - để tìm học sinh thỏa mãn điều kiện ta duyệt từ đầu danh sách k:=1 đến khi tìm thấy thì dừng

- để loại bỏ học sinh ở vị trí k, ta dồn các học sinh từ k+1 đến L.count lại 1 ô nhớ, giảm count đi 1 đơn vị

Câu 3 (1 đ)

Ưu điểm: - Tốc độ truy cập đến các phần tử là nhanh (truy cập trực tiếp)

- Các thao tác thực hiện dễ dàng

Nhược điểm: - Lãng phí bộ nhớ (hiện tượng giữ chỗ để đấy mà không dùng đến)

- Có hiện tượng co giãn các phần tử khác khi thực hiện phép laọi bỏ là cho số lượng phép tính trong giải thuật tăng lên => độ phức tạp tính toán cũng tăng theo,

- Bị giới hạn bởi không gian trống kế tiếp trong bộ nhớ, là cấu trúc tĩnh

Đề xuất cấu trúc thích hợp hơn: Cấu trúc danh sách liên kết vì: khắc phục các hạn chế của danh sách cài đặt như trên

Bạn đang đọc truyện trên: Truyen247.Pro

Tags: