1. Trang chủ
  2. » Luận Văn - Báo Cáo

BÁO CÁO MÔN KĨ THUẬT LẬP TRÌNH

3 695 3

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 3
Dung lượng 20,2 KB

Nội dung

Tạo một ADT có tên là Array và lưu trữ trong file Array.h ADT này bao gồm 2 thành phần thông tin: Max: mảng các giá trị số thực Count: số lượng các giá trị lưu trữ trong mảng Max ADT này

Trang 1

BÁO CÁO MÔN KĨ THUẬT LẬP TRÌNH Giảng viên: TS.Vũ Thị Hương Giang

Phần chữa bài tập nhóm 11

Lớp KSCLC K55 – Nhóm 10

1 Nguyễn Công Chính MSSV 20100088

Bài tập:

A Tạo một ADT có tên là Array và lưu trữ trong file Array.h

ADT này bao gồm 2 thành phần thông tin:

Max: mảng các giá trị số thực

Count: số lượng các giá trị lưu trữ trong mảng Max

ADT này cho phép thực hiện một số thao tác trên mảng số thực:

i Khởi tạo một phiên bản mới của chính nó

ii Gán giá trị cho các thành phần thông tin của một đối tương Array

iii Sắp xếp các phần tử của mảng theo giải thuật bubble sort

iv Sắp xếp các phần tử của mảng theo giải thuật insertion sort

v Sắp xếp các phần tử của mảng theo giải thuật selection sort

vi Tìm giá trị lớn nhất được lưu trữ trong mảng và vị trí của các phần tử có giá trị lớn nhất trong mảng

vii Tìm giá trị nhỏ nhất được lưu trữ trong mảng và vị trí của các phần tử có giá

trị nhỏ nhất trong mảng

viii Tìm giá trị trung bình của các phần tử trong mảng

ix Tìm độ lệch về giá trị giữa 2 phần tử có vị trí biết trước trong mảng

x Tìm độ lệch trung bình về giá trị của các phần tử trong mảng

Trang 2

xi Tìm kiếm (theo giải thuật sequential search) phần tử của mảng có giá trị là

x ; nếu tìm thấy thì đưa ra vị trí của phần tử đó trong mảng, nếu không thì trả lại giá trị là 0

xii Tìm kiếm (theo giải thuật binary search) phần tử của mảng có giá trị là x ;

nếu tìm thấy thì đưa ra vị trí của phần tử đó trong mảng, nếu không thì thông báo là không tìm thấy phần tử như vậy

xiii Biểu diễn độ phức tạp tính toán theo ký pháp big-O và hiện thị thời gian tính

toán thực tế bằng micro-second

B Viết một chương trình cung cấp các chức năng để kiểm tra ADT này;

chương trình được lưu trữ trong file CheckArray.c Hàm menu() : gồm các tùy chọn

1-13: các chức năng tính toán trên mảng

Tùy chọn 1: có menu con cho phép

Nạp thông tin vào từ bàn phím hoặc từ 1 file dữ liệu vào/ra (I/O data file) Quay lại menu chính

Tùy chọn 2-13: có menu con cho phép

In kết quả ra màn hình hoặc ra 1 file dữ liệu vào/ra (I/O data file)

Quay lại menu chính

Nhận xét chương trình của nhóm 11:

I Nhận xét chung

- Công cụ được sử dụng là Dev-C++ 4.9.9.2, ngôn ngữ viết C++.

- Chương trình chạy không có lỗi, thử với các bộ số kiểm tra đều cho ra kết

quả đúng

- Code viết rõ ràng, dễ đọc, mỗi chức năng đều có phần giải thích cụ thể.

- Chương trình đáp ứng được đa số các trường hợp thực tế có thể xảy ra

Chỉ trừ trường hợp nếu quá trình nhập có lẫn kí tự không phải số, vòng lặp

sẽ bị lỗi Đây là điểm yếu khó xử lí (nhóm 10 chúng em cũng mắc phải tương tự)

II Chi tiết

1 Chức năng nhập/xuất dữ liệu.

- Thông tin lưu trữ dưới dạng cấu trúc (struct).

Trang 3

- Mảng lưu trữ số thực dưới dạng mảng động, số lượng phần tử có thể khai

báo trong lúc chạy chương trình, vậy nên tiết kiệm được bộ nhớ so với dùng mảng tĩnh, hạn chế trường hợp tràn mảng hay thiếu bộ nhớ

- Dữ liệu nhập từ bàn phím, quá trình nhập bắt buộc không được lẫn kí tự

khác số

2 Chức năng sắp xếp.

- Ba chức năng sắp xếp là Bubble Sort, Insertion Sort và Selection Sort đều

được cài đặt đúng

3 Chức năng tìm kiếm.

- Sequential Search và Binary Search được cài đặt đúng.

4 Các chức năng khác (tìm giá trị trung bình, độ lệch trung bình, ….)

- Các chức năng này đều được cài đặt đúng, thuật toán đơn giản, dễ hiểu.

5 Chương trình kiểm tra và hình thức trình bày.

- Chương trình kiểm tra được cài đặt đúng, có đầy đủ các menu như yêu

cầu bài tập

- Code viết rõ ràng, dễ đọc, các câu lệnh, vòng lặp, rẽ nhánh đều có khoảng

cách hợp lí, phù hợp

- Giao diện chương trình hợp lí, dễ dàng thao tác lựa chọn các chức năng.

III Kết luận

- Bài tập này không quá khó nhưng cũng không dễ Với chương trình của nhóm 11 theo nhóm 10 chúng em đã đáp ứng được khá đầy đủ các yêu cầu Một vài hạn chế do thời gian có không quá nhiều (thời gian làm bài rơi vào Tết) và trình độ của chúng em còn chưa cao, vẫn cần phải học thêm nhiều kiến thức mới

- Qua bài tập này chắc chắn nhóm em và các nhóm khác sẽ học thêm được nhiều kiến thức mới về kĩ thuật lập trình Chúng em mong cô sẽ tiếp tục gửi thêm nhiều bài tập để chúng em có thể tiếp tục học tập và rèn luyện thêm

Ngày đăng: 16/05/2015, 13:10

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w