Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
1,88 MB
Nội dung
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THƠNG TIN VÀ TRUYỀN THƠNG CHỮA BÀI NHĨM BÀI TẬP NHĨM MƠN HỌC KỸ THUẬT LẬP TRÌNH Giảng viên hướng dẫn : TS Vũ Thị Hương Giang Nhóm học viên : - Lớp Vũ Văn Bảo Trần Trung Hiếu Nguyễn Minh Tiến Nguyễn Văn Tùng Nguyễn Hồng Vinh :KSCLC-K55 HÀ NỘI 2013 Mục lục 2 I- KIỂM THỬ Để tiến hành tiến hành kiểm thử chương trình nhóm nhóm chúng em tiến hành kiểm thử chương trình theo chức cụ thể sau: Kiểm tra nhập liệu đầu vào cho biến 1.1- Kiểm tra việc nhập chức muốn thực Khi nhập chức muốn thực là: “ absj “ mà số (1 2) chương trình bị “treo”, khơng thực tiếp Kiểm tra việc nhập số lượng phần tử cho mảng Lỗi nhập số lượng phần tử “sds” từ bàn phím chương trình chạy khơng dừng 1.2- 3 1.3- Kiểm tra việc nhập giá trị cho phần tử mảng nhập liệu từ bàn phím kiểu ký tự (VD ret) cho phần tử mảng chương trình bỏ qua việc nhập phần tử khác thực hiến chức bị treo Kiểm thử chức chương trình Để kiểm thử chức chương trình chúng em tiến hành nhập số phần tử cho mảng 10 Với giá trị phần tử mảng sau: 4 2.1- Bubble sort chương trình cho kết sau: Kết luận : chương trình chạy theo yêu cầu 2.2Insertion sort Chương trình cho kết sau: 5 Kết luận : chương trình chạy theo yêu cầu 2.3Selection sort Chương trình cho kết sau: Kết luận : chương trình chạy theo yêu cầu 2.4Tìm phần tử lớn vị trí xuất Chương trình cho kết sau: 6 Kết luận : chương trình chạy theo yêu cầu 2.5- Tìm phần tử nhỏ vị trí xuất Chương trình cho kết sau: Kết luận : chương trình chạy theo yêu cầu 2.6- Giá trị trung bình phần tử mảng Chương trình cho kết sau: 7 Kết luận : chương trình chạy theo yêu cầu 2.7- Độ lệch phân tử vị trí cho trước TH1: nhập vị trí lớn kích thước mảng Chương trình đưa lỗi kết thúc Kết luận : chương trình chạy theo yêu cầu TH2: hai vị trí thuộc mảng Chương trình chạy 8 2.8- Độ lệch trung bình Chương trình chạy : 2.9- Tìm kiếm TH1: Khơng có phần tử : Chương trình chạy 9 TH2: Có phần tử Chương trình chạy TH3: Có nhiều hai phần tử giá trị cần tìm Chương trình chạy 2.10- Tìm kiếm nhị phân TH1: Khơng có phần tử: Chương trình chạy TH2: Có phần tử: Chương trình chạy đúng: 10 10 TH3: Có nhiều phần tử: Chương trình chạy đúng: 2.11- Tính thời gian tính Chương trình chạy 11 11 II- GỠ RỐI Lỗi nhập số lượng phần tử vào từ bàn phím 1.1- int Ngun nhân Khơng viết Assertions dùng để kiểm tra lỗi nhập số lượng phần tử vào từ bàn phím - lỗi nhập vào bàn phím ký tự - lỗi nhập vào bàn phím số thực - lỗi nhập sai kich thược mảng 1.2- Phương án khắc phục Xây dựng Assertions dùng để kiểm tra lỗi nhập số lượng phần tử vào từ bàn phím sau : ASSERT3(){ 12 12 int b; float a; char dulieu[10]; printf("\n Nhap so luong phan tu cua mang count = "); scanf("%s",&dulieu); fflush(stdin); if(strcmp(dulieu,"0")!=0){ a= atof(dulieu); b= atoi(dulieu); if(a ==0){ printf("\n ban da nhap so luong phan tu la ky tu"); printf("\n sai yeu cau moi ban nhap lai"); b= ASSERT3(); return b; } else{ if((a-b)!=0){ printf("\n ban da nhap so luong phan tu la kieu so thuc"); printf("\n sai yeu cau moi ban nhap lai"); b= ASSERT3(); return b; } else{ if(b1000){ printf("\n ban da nhap so luong phan tu khong dung 13 13 kich thuoc yeu cau"); printf("\n sai yeu cau moi ban nhap lai"); b= ASSERT3(); return b; } else return b; } } } else { b=0; return b; }} 1.3- Kết sau khắc phục 14 14 Lỗi nhập giá trị phần tử mảng từ bàn phím 2.1- Ngun nhân Khơng viết Assertions dùng để kiểm tra lỗi nhập giá trị phần tử mảng từ bàn phím - lỗi nhập vào bàn phím ký tự 2.2- Phương án khắc phục Viết Assertions dùng để kiểm tra lỗi nhập giá trị phần tử mảng từ bàn phím sau: float ASSERT1( int chiso){ float a; char dulieu[10]; printf("\n nhap phan tu thu %3d max[%3d]= ", chiso+1, chiso); scanf("%s",&dulieu); fflush(stdin); if(strcmp(dulieu,"0")!=0){ a= atof(dulieu); if(a ==0){ printf("\n nhap sai!! moi ban nhap lai"); a= ASSERT1(chiso); return a; } else return a; } else { a=0; 15 15 return a; } } 2.3- Kết sau khắc phục Lỗi nhập yêu cầu ký tự 3.1- Nguyên nhân Biến n (biến xác định chức năng) không xác định người dùng nhập vào kiểu ký tự 3.2- Phương án khắc phục Viết hàm quy định nhập ký tự vào n xác định sau: Char dulieu[10]; printf("\n \n Chon chuc nang: "); scanf("%s",&dulieu); n=atoi(dulieu); 3.3- Kết sau khắc phục Nhập ký tự từ bàn phím 16 16 Sau ấn enter chọn lại Tài liệu tham khảo [1] Slide giảng KTLT-Vũ Thị Hương Giang [2] Code complete A Practical Handbook ofd Software Construction tác giả 17 17 Steve Mc Connell 18 18 ... sort chương trình cho kết sau: Kết luận : chương trình chạy theo yêu cầu 2.2Insertion sort Chương trình cho kết sau: 5 Kết luận : chương trình chạy theo yêu cầu 2.3Selection sort Chương trình cho...Mục lục 2 I- KIỂM THỬ Để tiến hành tiến hành kiểm thử chương trình nhóm nhóm chúng em tiến hành kiểm thử chương trình theo chức cụ thể sau: Kiểm tra nhập liệu đầu vào cho biến 1.1- Kiểm... luận : chương trình chạy theo yêu cầu 2.4Tìm phần tử lớn vị trí xuất Chương trình cho kết sau: 6 Kết luận : chương trình chạy theo yêu cầu 2.5- Tìm phần tử nhỏ vị trí xuất Chương trình cho kết