Tải bản đầy đủ (.doc) (5 trang)

đáp án đề thi lí thuyết tốt nghiệp khóa 2 - lập trình máy tính - mã đề thi ltmt - lt (12)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (105.66 KB, 5 trang )

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
ĐÁP ÁN
ĐỀ THI TỐT NGHIỆP CAO ĐẲNG NGHỀ KHOÁ 2 (2008 - 2011)
NGHỀ: LẬP TRÌNH MÁY TÍNH
MÔN THI: LÝ THUYẾT CHUYÊN MÔN NGHỀ
Mã đề số: DA LTMT - LT12
Câu Nội dung Điểm
I. Phần bắt buộc
1 a. Trình bày được giải thuật Insertion Sort.
- Trước hết: ta xem phần tử a[0] là một dãy đã có thứ tự.
- Bước 1: xen phần tử a[1] vào danh sách đã có thứ tự a[0] sao
cho a[0], a[1] là một danh sách có thứ tự.
- Bước 2: xen phần tử a[2] vào danh sách đã có thứ tự a[0],
a[1] sao cho a[0], a[1], a[2] là một danh sách có thứ tự.
- Tổng quát ở bước i: xen phần tử a[i] vào danh sách đã có thứ
tự a[0], a[1], … a[i-1] sao cho a[0], a[1], a[i] là một danh
sách có thứ tự.
- Sau n-1 bước thì kết thúc.
0,25
0.25
0,25
0,25
b. Áp dụng giải thuật Insertion Sort với bộ dữ liệu
K = {9, 3, 10, 0, 99, 35, 25, 88, 18}
Khóa
Bước
K[0] K[1] K[2] K[3] K[4] K[5] K[6] K[7] K[8]
Ban
đầu
9 3 10 0 99 35 25 88 18


Bước 1 3 9 10 0 99 35 25 88 18
Bước 2 3 9 10 0 99 3 25 88
18Bước
3
0 3 9 10 99 35 25 88 18
Bước 4 0 3 9 10 99 35 25 88 18
Bước 5 0 3 9 10 35 99 25 88 18
Bước 6 0 3 9 10 25 35 99 88 18
Bước 7 0 3 9 10 25 35 88 99 18
Bước 8 0 3 9 10 18 25 35 88 99
Kết
quả
0 3 9 10 18 25 35 88 99
0,75
0,25
2 a. Nêu 4 tính chất của phụ thuộc hàm
Trang: 1/5
- Phản xạ: Nếu Y ⊇ X thì X → Y
- Bắt cầu: Nếu X → Y và Y → Z thì X → Z
- Phân rã: Nếu X → YZ thì X → Y và X → Z
- Bắt cầu: Nếu X → Y và X → Z thì X → YZ
0,25
0,25
0,25
0,25
b. Áp dụng: Tìm chuỗi suy diễn AB → EG
1) AB  AB (tính phản xã)
2) AB  B (phân rã)
3) B  D (F2)
4) AB  D (tính bắc cầu 2 &3)

5) AB  C (F1)
6) AB  DC (kết hợp 4&5)
7) CD  E (F3)
8) AB  E (bắc cầu 6&7)
9) AB  CE (kết hợp 5&8)
10)CE  HG (F4)
11)CE  G (phan rã)
12)AB  G (bắc cầu 9&11)
13)AB  EG (kết hợp 8&12)
1,0
1,0
Trang: 2/5
3
#include <conio.h>
#include <iostream.h>
#include <math.h>
int uscln(int a,int b)
{
while (!(a%b==0) )
{
int r=b; b=a%b;a=r;
}
return b;
}
class PS
{
private:
int t,m;
public:
void nhap();

void hienthi();
void rutgon();
int operator>(const PS &p2);
void operator=(const PS &p2);
};
0,25
Trang: 3/5
void PS:: nhap()
{
cout<<"\n Nhap tu so:"; cin>>t;
cout<<"Nhap mau so:"; cin>>m;
}
void PS:: hienthi()
{
cout <<t<<"/"<<m;
}
void PS::rutgon()
{
int uc=uscln(t,m);
t=t/uc;
m=m/uc;
}
void PS::operator=(const PS &p2)
{
t=p2.t;
m=p2.m;
}
int PS::operator>(const PS &p2)
{
if (t*p2.m>p2.t*m)

return 1;
else
return 0;
0,1
0,1
0,25
0,1
0,25
void nhapmangPS(PS *a,int n)
{
for (int i=1;i<=n;i++)
a[i].nhap();
}
PS maxmangPS(PS * a, int n)
{
PS tg;
tg=a[1];
for(int i=2;i<=n;i++)
if (a[i]>tg)
tg=a[i];
return tg;
}
0,25
0,5
Trang: 4/5
void main()
{
int n;
PS a[10],p1,p2;
cout<<"\nNhap so phan so:"; cin>>n;

nhapmangPS(a,n);
p2=maxmangPS(a,n);
cout<<"\nPhan so lon nhat
la:";p2.hienthi();
getch();
}
0,2
II. Phần tự chọn
………, ngày ………. tháng ……. năm ………
Trang: 5/5

×