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

Đáp án đề thi tốt nghiệp cao đẳng nghề khóa 3 (2009-2012) - Nghề: Lập trình máy tính - Môn thi: Lý thuyết chuyên môn nghề - Mã đề thi: DA LTMT-LT13

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 (65.74 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Ề KHỐ 3 (2009 - 2012)
NGHỀ: LẬP TRÌNH MÁY TÍNH
MƠN THI: LÝ THUYẾT CHUN MƠN NGHỀ
Mã đề số: DA LTMT - LT13
Câu
Nội dung
I. Phần bắt buộc
1
a. Trình bày được giải thuật Buble Sort.
- Bước 0: Xét các phần tử M[j] (j giảm từ N-1 đến 0), so sánh
M[j] với M[j-1]. Nếu M[j] nhỏ hơn M[j-1] thì đổi chỗ M[j] và
M[j-1] cho nhau. Sau bước này thì M[0] có giá trị nhỏ nhất.
- Bước 1: Xét các phần tử M[j] (j giảm từ N-1 đến 1), so sánh
M[j] với M[j-1]. Nếu M[j] nhỏ hơn M[j-1] thì đổi chỗ M[j] và
M[j-1] cho nhau. Sau bước này thì M[1] có giá trị nhỏ nhất.
- Tổng quát ở bước i: Xét các phần tử M[j] (j giảm từ N-1 đến
i), so sánh M[j] với M[j-1]. Nếu M[j] nhỏ hơn M[j-1] thì đổi
chỗ M[j] và M[j-1] cho nhau. Sau bước này thì M[i] có giá trị
nhỏ nhất.
- Sau N - 1 bước thì kết thúc.
b. Áp dụng giải thuật Buble Sort với bộ dữ liệu
K = {9, 3, 10, 0, 99, 35, 25, 88, 18}

Trang: 1/5

Điểm

0,25


0.25
0,25
0,25


0,75

Khóa
Bước
Ban
đầu
Bước 1
Bước 2
Bước 3
Bước 4
Bước 5
Bước 6
Bước 7
Bước 8
Kết
quả

K[0] K[1] K[2] K[3] K[4] K[5] K[6] K[7] K[8]
9

3

10

0


99

35

25

88

18

0

9
3

3
9
9

10
10
10
10

99
18
18
18
18


25
99
25
25
25
25

35
25
99
35
35
35
35

10

18

25

35

18
35
35
99
88
88

88
88
88

88
88
88
88
99
99
99
99
99

0

3

9

Trang: 2/5

0,25


2

3

a. Nêu 4 tính chất của phụ thuộc hàm

- 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
b. Áp dụng: Tìm chuỗi suy diễn ABGH
1) AB  E (F1)
2) E  G (F4)
3) AB  G (tính bắc cầu 2 &3)
4) AB  AB (phản xạ)
5) AB  B (phân rã)
6) AB  BE (kết hợp 1&5)
7) BE  I (F3)
8) AB  I (bắc cầu 6&7)
9) AB  GI (kết hợp 3&8)
10)GI  H (F5)
11)AB  H (bắc cầu 9&10)
12)AB  GH (kết
hợp 3&11)
#include
<conio.h>
#include <iostream.h>
#include <math.h>
class DT
{
private:
double a[20];// Mang chua cac he so da thuc a0,
a1,...
int n ;// Bac da thuc
public:
void nhap();

void hienthi();
DT operator+(const DT &d2);
double operator^(double x);// Tinh gia tri da
thuc
};

0,25
0,25
0,25
0,25

1,0

1,0
0,25

0,25
void DT::hienthi()
{
cout<for (int i=1 ;i<= n ;++i)
cout<<"+"<< a[i] <<"X^"<}

Trang: 3/5


void DT::nhap()
{
cout << "Bac da thuc:";

cin >> n;
cout << "Nhap cac he so da thuc:" ;
for (int i=0 ;i<=n ;++i)
{
cout << "\n He so bac"<cin >> a[i] ;
}
}

0,25

0,75
DT DT::operator+(const DT &d2)
{
DT d;
int k,i;
k = (n > d2.n)?n:d2.n ;
for (i=0;i<=k ;++i)
if (i<=n && i<=d2.n)
d.a[i] = a[i] + d2.a[i];
else
if (i<=n)
d.a[i] =a[i];
else
d.a[i] = d2.a[i];
i = k;
while (i>0 && d.a[i]==0.0) --i;
d.n=i;
return d ;
}


0,25
double DT::operator^(double x)
{
double s=0.0 , t=1.0;
for (int i=0 ;i<= n ;++i)
{
s+= a[i]*t;
t *= x;
}
return s;
}

Trang: 4/5


void main()
{
DT p,q,f;
double x,g;
clrscr();
cout <<"\n Nhap da thuc P :" ;p.nhap();
cout <<"\n Nhap da thuc Q :" ;q.nhap();
cout << "\n Nhap so thuc x :" ;cin >> x;
f = (p+q);
g = f^x;
cout << "\n Da thuc f ";
f.hienthi();
cout<<"\n x =" << x;
cout << "\n f(x) = "<

getch();
}

0,25

II. Phần tự chọn
1
……….., ngày…………tháng………..năm…………..

Trang: 5/5