intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Đáp án đề thi tốt nghiệp cao đẳng nghề khoá II (năm 2008 - 2011) nghề Lập trình máy tính môn thi lý thuyết chuyên môn nghề - Mã đề thi: DA LTMT - LT08

Chia sẻ: Le Trong Duc | Ngày: | Loại File: PDF | Số trang:5

72
lượt xem
2
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mời các bạn tham khảo Đáp án đề thi tốt nghiệp cao đẳng nghề khoá II (năm 2008 - 2011) nghề Lập trình máy tính môn thi lý thuyết chuyên môn nghề - Mã đề thi: DA LTMT - LT08 sau đây để biết được cách thức làm bài đối với những câu hỏi trong đề thi Lý thuyết chuyên. Tài liệu hữu ích với những bạn quan tâm và đang chuẩn bị cho kỳ thi này.

Chủ đề:
Lưu

Nội dung Text: Đáp án đề thi tốt nghiệp cao đẳng nghề khoá II (năm 2008 - 2011) nghề Lập trình máy tính môn thi lý thuyết chuyên môn nghề - Mã đề thi: DA LTMT - LT08

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Á II (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 - LT08 TT Nội dung I. Phần bắt buộc 7 điểm Câu 1 1 Điểm 1,5 điểm Trình bày giải thuật tìm kiếm nhị phân không đệ quy. function TKNP(k,n,x); 0,75 điểm 0,25 điểm 1. l:=1; r:=n; 0.5 điểm 2. while l <= r do begin m := [(l + r)/2]; if X < k[m] then r := m-1 else if X > k[m] then l:= m+1 else return(m); end; 3. return(0); 2 Hãy đưa ra một dãy khoá bất kỳ gồm ít nhất 10 phần tử , sau đó mô tả các bước tìm kiếm một khoá nào đó theo 0,75 điểm thuật toán tìm kiếm nhị phân không đệ quy. Cho một dãy khoá, chẳng hạn10, 15, 25, 30, 45, 50, 60, 0,25 điểm 75, 80, 90. Minh hoạ tìm khoá X=80 Bắt đầu với l =1; r = 10; bước 1: tính m = 5, a[5] <80 => r = 10, l = 6; bước 2: tính m = 8, a[8] <80=> l =9; r = 10, Trang:1/ 5 0,25 điểm bước 3: tính m =9, a[9] = 80=>kết thúc Câu 2 a 0,25 điểm 3,5 điểm Định nghĩa hàm thiết lập để tạo đối tượng sao cho tử số là 0,5 điểm số nguyên và mẫu số phải là số nguyên dương và phân số được tối giản. #include 0,25 điểm #include class PhanSo { int ts,ms; void rutgon(); public: PhanSo(int x=0,int y=1):ms(y),ts(x) { rutgon(); } operator int(); operator float(); PhanSo operator -() const { return PhanSo(-ts,ms); } //Cac phep toan co so friend int operator ==(const PhanSo&, const PhanSo&); friend PhanSo operator +(const PhanSo&,const PhanSo&); //Phep toan ket xuat du lieu cua mot phan so friend ostream& operator << (ostream& out,const PhanSo& ps); }; int uscln(int n,int m) 0,25 điểm { if(n>m) { if(m==0) return n; return uscln(n%m,m); } if(n==0) return m; return uscln(m%n,n); } void PhanSo::rutgon() { Trang:2/ 5 if(ms<0) { ms=-ms; ts=-ts; } //tim uscln int usc=(ts>0)?uscln(ts,ms):uscln(-ts,ms); ts=ts/usc; ms=ms/usc; b } Xây dựng toán tử chuyển kiểu, toán tử so sánh hai phân số 0,75 điểm bằng nhau, toán tử cộng hai phân số kết quả phải được tối giản. c d //Toan tu chuyen kieu int tra ve phan chia nguyen cua phan so PhanSo::operator int() { return ts/ms; } //chuyen kieu thuc tra ve phan chia thuc PhanSo::operator float() { return float(ts)/ms; } //thuc hien cac toan tu cho lop phan so int operator = =(const PhanSo& ps1,const PhanSo& ps2) { return(ps1.ts==ps2.ts&&ps1.ms==ps2.ms); } PhanSo operator +(const PhanSo& ps1,const PhanSo& ps2) { return PhanSo(ps1.ts*ps2.ms+ps2.ts*ps1.ms,ps1.ms*ps2.ms); } Xây dựng toán tử xuất dữ liệu của một phân số. 0,25 điểm 0,25 điểm 0,25 điểm 0,25 điểm ostream& operator << (ostream& out, const PhanSo& ps) { return (out << ps.ts <<"/" << ps.ms); } Viết hàm main thực hiện 2 điểm - Nhập hai phân số và hiển thị ra màn hình tổng của hai Trang:3/ 5 phân số đó. - Nhập vào một dãy gồm n phân số và hiển thị ra màn hình dãy phân số đó - Đếm xem có bao nhiêu phân số có giá trị bằng một phân số được nhập vào từ bàn phím. Nhập hai phân số và hiển thị ra màn hình tổng của hai phân số đó. void main() { clrscr(); int i,a,b,n; cout<<"Nhap vao hai phan so"<
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
21=>0