Báo cáo bài tập lớn Nhập môn về lập trình - Bùi Khắc Thạch

pdf 11 trang Gia Huy 17/05/2022 1910
Bạn đang xem tài liệu "Báo cáo bài tập lớn Nhập môn về lập trình - Bùi Khắc Thạch", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbao_cao_bai_tap_lon_nhap_mon_ve_lap_trinh_bui_khac_thach.pdf

Nội dung text: Báo cáo bài tập lớn Nhập môn về lập trình - Bùi Khắc Thạch

  1. ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN MÔN: NHẬP MÔN VỀ LẬP TRÌNH GVHD : NGÔ ĐỨC MINH Nhóm : 04 Tên thành viên MSSV 1/ Bùi Khắc Thạch 1613237 2/ Nguyễn Thị Ngọc Châm 1610266 Thành phố Hồ Chí ngày 12 tháng 06 năm 2017
  2. Mục lục Ⅰ. Lời mở đầu 1 Ⅱ. Đề tài 2 Ⅲ. Bản thuyết minh 2 1. Phần 1: Giới thiệu cách chạy sản phẩm đã viết 2 2. Phần 2: Trình bày cách sử dụng dữ liệu 4 3. Phần 3: Trình bày cách giải quyết, công thức áp dụng 5 4. Phần 4: Cách tổ chức chương trình 9
  3. Ⅰ. Lời mở đầu: Ngôn ngữ lập trình C là ngôn ngữ mệnh lệnh được phát triển đầu thập niên 1970 bởi Dennis Ritchie để dùng trong hệ điều hành UNIX. Từ đó ngôn ngữ này đã lan rộng ra nhiều hệ điều hành khác và trở thành một trong nhìu ngôn ngữ phổ dụng nhất. C là ngôn ngữ rất có hiệu quả và được ưa chuộng nhất để viết các phần mềm hệ thống, mặc dù nó vẫn được dùng viết các ứng dụng. Ngoài ra C cũng được dùng làm phương tiện giảng dạy trong khoa học máy tính mặc dù ngôn ngữ này không được thiết kế cho người nhập môn. C là ngôn ngữ tương đối nhỏ gọn vận hành gần giống với phần cứng và nó giống ngôn ngữ Assambler hơn hầu hết các ngôn ngữ bậc cao. Hơn thế C được đánh giá như là có khả năng di động, cho thấy sự khác nhau của nó với ngôn ngữ bậc thấp như là Assambler, đó là việc mã C có thể được dịch và thi hành trên hầu hết các máy tính. Hơn hẳn các ngôn ngữ hiện tại trong khi đó Assambler chỉ chạy trong một số máy tính đặc biệt, vì lý do này C được xem là ngôn ngữ bậc trung. C được tạo ra với mục tiêu làm cho nó thuận tiện để viết các chương trình lớn với số lỗi ít hơn trong mẫu hình lập trình kỹ tục mà không đặt năng lên vai người viết ra trình dịch C, là những người bề bộn với các đặt tả phức tạp của ngôn ngữ. Mặc dù C còn thiếu nhìu chức năng hữu ít nhưng lý do quan trọng để C được chấp nhận vì nó cho phép các trình dịch mới đc tạo ra một cách nhanh chóng trên các nền tảng mới và vì nó cho phép người lập trình dễ kiểm soát những gì mà chương trình (do họ viết) được thực thi. Đây là điểm làm cho mã C chạy hiệu quả hơn các ngôn ngữ khác. Thường chỉ có ngôn ngữ ASM chỉnh bằng tay chạy nhanh hơn (ngôn ngữ C), bởi vì ASM kiểm soát được toàn bộ máy. Mặc dù vậy với sự phát triển của trình dịch C, với sự phức tạp của các CPU hiện đại với tốc độ cao, C đã dần thu nhỏ khác biệt về tốc độ này. Một lý do nữa làm cho C được ứng dụng rộng rãi là do các trình dịch, các thư viện và các phần mềm thông dịch của các ngôn ngữ bậc cao khác lại được tạo nên từ C. 1
  4. Ⅱ. Đề tài Viết chương trình thực hiện công việc theo menu như sau: Chọn chức năng cần thực hiện: 1. Tính thể tích và diện tích mặt của hình lập phương cạnh E. 2. Xác định xem 1 ma trận NxM có đối xứng không? 3. Đổi 1 số thập phân N sang dạng nhị phân. 4. In ra màn hình và lưu kết quả vẽ hình chữ nhật (dai, rong) vào file “hinh_chu_nhat.txt”. Hãy nhập vào số chức năng : _ Ghi chú: (1) Kết quả in ra màn hình của tính năng 4 Ⅲ. Bản thuyết minh 1. Phần 1: Giới thiệu cách chạy sản phẩm đã viết. Sản phẩm đã viết được nén trong file có tên “Btl_Nh15.rar”, chương trình được viết trên phần mềm “CodeBlocks” do đó để chạy chương trình cần phải có phần mềm “CodeBlocks” hoặc các phần mềm tươngự t khác. Cách chạy chương trình:  Bước 1: giải nén file “Btl_Nh15.rar” , mở thư ụm c “Btl_15” chọn file ““Btl_15”.  Bước 2: sau khi giải nén, chạy phần mềm “CodeBlocks” click vào “Open an existing project” chọn thư ụm c vừa giải nén rồi chọn “Btl_15”. 2
  5. Ảnh minh họa: Bước 1: Bước 2: 3
  6. Dựa vào cấu trúc điều kiện Switch-Case để tạo chức năng cần thực hiện theo menu như yêu cầu. Sản phẩm có 5 chức năng, chức năng số 1 đến số 4 tương ứng với bài 1 đến bài 4 theo đề bài, chức năng số 5 dùng để thoát ra khỏi cấu trúc lựa chọn. Cụ thể:  Chức năng 1: Tính thể tích và diện tích mặt của hình lập phương cạnh E.  Chức năng 2: Xác định xem 1 ma trận NxM có đối xứng không?  Chức năng 3: Đổi 1 số thập phân N sang dạng nhị phân.  Chức năng 4: In ra màn hình và lưu kết quả vẽ hình chữ nhật (dai, rong) vào file “hinh_chu_nhat.txt”. Input: Nhập vào 1 trong 4 tính năng đã nêu trên. Output: Thực hiện tính năng người dùng yêu cầu và xuất ra màn hình. 2. Phần 2: Trình bày cách sử dụng dữ liệu (biến, hằng), giải thích ý nghĩa các hằng, biến dùng trong chương trình. Các biến được sử trong chương trình bao gồm: Ở kiểu số nguyên (int), có: - “a[100] [100]” : là mảng 2 chiều trong chức năng 2, được nhập từ bàn phím. - “n”, “m” : lần lượt là số hàng, số cột của ma trận cỡ NxM trong chức năng 2, được nhập từ bàn phím. - “N” : là giá trị của số thập phân trong chức năng 3, được nhập từ bàn phím. - “i”,”j” : là các biến chạy điều kiện thoát ra vòng lặp trong chức năng 2 và 3. - “a[i]” : là phần dư khi chia số thập phân cho 2 với toán tử % và lưu phần dư vào trông mảng trong chức năng số 3. Ở kiểu số thực chấm động (float), có: - “canh”, “E” : là độ dài cạnh của hình lập phương trong chức năng 1, được nhập từ bàn phím. 4
  7. 3. Phần 3: Trình bày về cách giải quyết, các công thức áp dụng (dùng sơ đồ tiến trình).  Chức năng 1: Tính thể tích và diện tích mặt của hình lập phương cạnh E. BẮT ĐẦU NHẬP Cạnh (E) Sai E>0 ? Đúng E*E*6 E*E*E XUẤT dienTichMatLapPhuong= E*E*6 theTichLapPhuong= E*E*E KẾT THÚC 5
  8.  Chức năng 2: Xác định xem 1 ma trận NxM có đối xứng không? BẮT ĐẦU NHẬP Ma trận A[i][j] A[i][j] XUẤT A[i][j] hàng = cột? Sai Đúng A[i][j] = Sai A[j][i]? ?? Đúng A[i][j] XUẤT XU?Ấ T Ma trận không đối xứng MA trận đối xứng KẾT THÚC 6
  9.  Chức năng 3: Đổi 1 số thập phân N sang dạng nhị phân. BẮT ĐẦU NHẬP Số thập phân N i=0 N > 0 ? Sai Đúng XUẤT a[i]=N%2 i = i + 1 N = N/2 KẾT THÚC 7
  10.  Chức năng 4: In ra màn hình và lưu kết quả vẽ hình chữ nhật (dai, rong) vào file “hinh_chu_nhat.txt”. BẮT ĐẦU NHẬP Chi ều dài (CD) Chiều rộng (CR) x=0 y=0 Sai < Đúng =0 { =0 Sai < 푅 [ = −1 = 푅−1 Đúng XUẤT XUẤT KẾT THÚC Hàng x thay bằng “*” Hàng x thay bằng khoảng trắng Cột y thay bằng “*” Cột y thay bằng khoảng trắng x = x + 1 y = y + 1 8
  11. 4. Phần 4: Cách tổ chức chương trình. Chương trình gồm 7 module phụ, 1 module chính và 1 header. 9