Tải bản đầy đủ (.pdf) (13 trang)

đồ án cơ sở lập trình

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 (1.22 MB, 13 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>TRƯỜNG ĐẠI HỌC VĂN LANGKHOA KỸ THUẬT CƠ – ĐIỆN VÀ MÁY TÍNH</b>

<b>BỘ MƠN CƠ SỞ LẬP TRÌNH--- ---</b><sub></sub>

<b>BÁO CÁO CUỐI KỲ</b>

Giáo viên hướng dẫn: Huỳnh Phước DanhSinh viên thực hiện :

Nguyễn Băng Tâm- 2274601080014Võ Xuân Phát- 2274601080022

<b>TP.Hồ Chí Minh- 2023</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

Python có một cộng đồng lớn và sôi động trong ngành khoa học dữ liệu. Cónhiều thư viện và cơng cụ phong phú hỗ trợ việc xử lý, phân tích và trực quan hóa dữliệu như NumPy, Pandas, Matplotlib, Seaborn và Scikit-learn. Sự phát triển mạnh mẽcủa cộng đồng Python đảm bảo rằng bạn có thể tìm thấy giải pháp và tài liệu hữu íchcho hầu hết các vấn đề trong lĩnh vực này. Python có cú pháp đơn giản, gần gũi vớingơn ngữ tự nhiên, có thể kết nối dữ liệu dễ dàng từ nhiều nguồn khác nhau, bao gồmcơ sở dữ liệu, tệp tin CSV, Excel, SQL, API và nhiều hệ thống lưu trữ dữ liệu khác

Trong bài đồ án mơn học Cơ sở Lập Trình, chúng tơi được giao nhiệm vụ thựchiện một bài tập lập trình bằng ngơn ngữ Python. Bài tập này yêu cầu viết đoạn mãcho phép nhập vào một ma trận hai chiều và chọn các chức năng thực hiện trongmenu.

1

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

Mục lục

<b>LỜI MỞ ĐẦU...1</b>

<b>I) MƠ TẢ BÀI TỐN...3</b>

<b>II)PHÂN CƠNG CƠNG VIỆC...4</b>

<b>III) PHÂN TÍCH THUẬT TỐN...4</b>

<b>Hình 2: Lựa chọn 1 ( tính tổng các số chẵn có trong ma trận)...6</b>

<b>Hình 3: Lựa chọn 2 (Tìm phần tử chẵn dương và nhỏ nhất trong ma trận..7</b>

<b>Hình 4: Lựa chọn 3 (Đếm các giá trị nhỏ hơn x trong ma trận...8</b>

<b>Hình 5: Lựa chọn 4 (Tạo tập tin văn bản tên output1.txt câu 2)...9</b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b>I)MƠ TẢ BÀI TỐN</b>

Bài tốn u cầu viết một chương trình Python để nhập một ma trận các số ngundương từ người dùng. Sau đó, chương trình phải hiển thị một menu cho phép ngườidùng lựa chọn các chức năng sau:

Tính tổng các phần tử chẵn trong ma trận.

Tìm phần tử chẵn dương nhỏ nhất trong ma trận.

Đếm số lượng giá trị nhỏ hơn một giá trị x trong ma trận.

Tạo một tệp văn bản có tên là "output1.txt" và ghi kết quả của chức năng số 2 vào tệpnày.

Khi người dùng chọn một chức năng từ menu, chương trình sẽ thực hiện chức năngtương ứng và hiển thị kết quả cho người dùng.

Nếu người dùng chọn chức năng 1, chương trình sẽ tính tổng của tất cả các phần tửchẵn trong ma trận và hiển thị kết quả.

Nếu người dùng chọn chức năng 2, chương trình sẽ tìm phần tử chẵn dương nhỏ nhấttrong ma trận và hiển thị kết quả. Nếu khơng có phần tử chẵn dương nào trong matrận, chương trình sẽ thơng báo cho người dùng.

Nếu người dùng chọn chức năng 3, chương trình sẽ yêu cầu người dùng nhập một giátrị x, sau đó đếm số lượng phần tử trong ma trận mà nhỏ hơn giá trị x và hiển thị kếtquả.

Nếu người dùng chọn chức năng 4, chương trình sẽ tạo một tệp văn bản có tên"output1.txt" và ghi kết quả của chức năng số 2 vào tệp này. Nếu khơng có phần tửchẵn dương nào trong ma trận, tệp văn bản sẽ chứa thơng báo tương ứng.

Người dùng có thể tiếp tục chọn các chức năng từ menu cho đến khi chọn thốtchương trình.

3

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<b>II)PHÂN CÔNG CÔNG VIỆC</b>

 Phần code và sơ đồ khối đều được cả 2 thành viên đóng góp và phát triển Sau khi có dữ liệu và nội dung cần thiết:

o Tâm đảm nhận việc đưa thơng tin vào PowerPoint, hồn thiện các slide và tạora sản phẩm thuyết trình hồn thiện.

o Phát phụ trách viết đồ án bằng Word bằng việc sử dụng các thông tin cả hai đãthu thập ở trên

<b>III) PHÂN TÍCH THUẬT TỐN </b>

1.

Phân tích

<b>Dữ liệu đầu vào:</b>

Nhập vào ma trận dưới dạng 2D chứa các số nguyên dương và chọn menu để thực hiện các chức năng.

Ví dụ: Ma trận nhập vào là:

<b>1.</b> Tính tổng các phần tử chẵn có trong ma trận.

Kết quả: Máy in ra kết quả là 20 (tổng các số chẵn gồm các số 2,4,6,8)

<b>2.</b> Tìm phần tử chẵn dương và nhỏ nhất trong ma trận.

Kết quả: Máy in ra giá trị là 2 (2 là số chẫn dương nhỏ nhất trong ma trận)

<b>3.</b> Đếm các giá trị nhỏ hơn x trong ma trận(x được nhập từ người dùng).Kết quả: x nhập vào là 5 thì kết quả nhận được là 4 (gồm những số 1,2,3,4 vì các số trên đều nhỏ hơn 5)

<b>4.</b> Tạo tập tên văn bản tên output1.txt chứa kết quả câu 2.

Kết quả: Một file văn bản có miền txt tên output1 sẽ được khởi tạo và trong đó chứa kết quả của câu 2

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

2.

Thuật tốn

<b>Sơ đồ khối</b>

<b><small>Hình 1: Sơ đồ khối khởi tạo ma trận và chọn menu</small></b>

5

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<b><small>Hình 2: Lựa chọn 1 ( tính tổng các số chẵn có trong ma trận)</small></b>

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

<b><small>Hình 3: Lựa chọn 2 (Tìm phần tử chẵn dương và nhỏ nhất trong ma trận</small></b>

7

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b><small>Hình 4: Lựa chọn 3 (Đếm các giá trị nhỏ hơn x trong ma trận</small></b>

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<b><small>Hình 5: Lựa chọn 4 (Tạo tập tin văn bản tên output1.txt câu 2)</small></b>

9

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

for inrange(cot ):

a1 =a1 [+ int(input('Nh p giá tr ậ ị {} {}, : 'format(i+,j+)))]

[a= a + a1] returnadef xuatmang( ):a

for inrange(len( )):a

for inrange(len( [ ])):a i

print( [ ][a i j], end = '\t') print()

if element and element == :

if so_chan_duong_max is Noneor element <so_chan_duong_max:

def cau3():

print('Nhap x: ')

x= int(input('Nhap x: ')) count = np.sum(matran ) print('x vua nhap la: ', )x

print('So gia tri nho hon x la: ',count)

def cau4():

with open("output1.txt", "w",encoding ='utf-8') as : fwrite(str(matran))

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

fwrite("\n")

so_chan_duong_max = None

for row in matran: for element inrow:

if element and element == :

ifso_chan_duong_max is None orelement <so_chan_duong_max:

def menu(matran):

print("1. Tính t ng các ph n t ch n có trong ma tr n"ổ ầ ử ẵ ậ ) print("2. Tìm ph n t ch n dầ ử ẵ ương và nh nh t trong ma tr n"ỏ ấ ậ ) print("3. Đ m các giá tr nh h n x trong ma tr n"ế ị ỏ ơ ậ )

print("4. T o t p tin văn b n tên output1.txt câu 2"ạ ậ ả ) print("5. Thoát")

if luachon== : cau1() elif luachon == :2 cau2() elif luachon == :3 cau3() elif luachon == :4 cau4() elif luachon == :5

print('B n đã thoát chạ ương trình!') break

dong int(input('Nh p s dòng c a ma tr n: 'ậ ốố ủ ậ ))

cot int(input('Nh p s c t c a ma tr n: 'ậ ố ộ ủ ậ ))matran = np.array matran( (dong, cot))

print("Ma tr n v a nh p là:"ậ ừ ậ )xuatmang matran( )

menu matran( )

11

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

Ở trên là một đoạn mã Python đơn giản để làm việc với ma trận. Chương trình cho phép người dùng nhập số dòng và số cột của ma trận, sau đó tạo ma trận dựa trên các giá trị nhập vào. Chương trình cung cấp một menu cho người dùng lựa chọn các tùy chọn để thực hiện các phép tính trên ma trận.

Mã này sử dụng module NumPy để xử lý ma trận và thực hiện các phép tính liên quan. Các phép tính bao gồm:

1. Tính tổng các phần tử chẵn có trong ma trận.2. Tìm phần tử chẵn dương và nhỏ nhất trong ma trận.3. Đếm các giá trị nhỏ hơn một giá trị x trong ma trận.

4. Tạo một tệp văn bản và ghi kết quả tìm được ở phần 2 vào tệp đó.Mã cung cấp một menu trực quan để người dùng chọn các tùy chọn và thực hiệncác phép tính tương ứng trên ma trận. Người dùng có thể lựa chọn thực hiện cácphép tính nhiều lần hoặc thốt khỏi chương trình khi cần thiết.

Đoạn mã này có thể được mở rộng và tùy chỉnh để thực hiện các phép tính kháctrên ma trận hoặc thực hiện các tác vụ khác liên quan đến ma trận. Sử dụng module NumPy cung cấp nhiều chức năng mạnh mẽ để làm việc với ma trận và dữ liệu số học.

</div>

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×