Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
Tham khảo:
def nhapDL(finp):
f = open(finp)
A = []
B = []
for line in f:
s = line.split()
A.append(s[0])
temp = s[1:len(s)]
temp = [float(x) for x in temp]
B.append(temp)
f.close()
return A, B
def diem_gk(d):
diem = sum(d) + d[0] + d[len(d) - 1]
diem = diem / (len(d) + 2)
return round(diem, 2)
def xuly(B):
kq = []
for i in range(len(B)):
diem = diem_gk(B[i])
kq.append(diem)
return kq
def ghiDL(fout, A, B):
f = open(fout, "w")
A, B = zip(*sorted(zip(A, B), key=lambda x: x[1], reverse=True))
for i in range(len(A)):
print(A[i], B[i], file=f)
f.close()
finp = "seagames.inp"
fout = "ketqua.out"
DS, Diem = nhapDL(finp)
Kq = xuly(Diem)
ghiDL(fout, DS, Kq)
Chúng ta có thể bỏ hết các hàm trong một chương trình và thay thế bằng một khối lệnh lớn hơn để tạo thành một chương trình kiểu nguyên khối. Tuy nhiên, việc này không phải lúc nào cũng là tối ưu và có thể dẫn đến một số vấn đề như sau:
- Khó quản lý và bảo trì: Khi chương trình trở nên lớn hơn thì việc duy trì và sửa lỗi sẽ trở nên phức tạp và khó khăn hơn khi tất cả các lệnh được đặt trong một khối lệnh duy nhất.
- Không tái sử dụng được code: Nếu các phần code được sử dụng nhiều lần trong chương trình, việc đặt chúng vào các hàm riêng biệt sẽ giúp tiết kiệm thời gian và tối ưu hóa mã nguồn.
- Không tận dụng được tính mô đun của chương trình: Một chương trình mô đun có thể được chia thành các phần riêng biệt và phụ thuộc lẫn nhau. Việc bỏ hết các hàm và chuyển thành chương trình kiểu nguyên khối sẽ khiến chương trình mất đi tính mô đun và dễ dàng gây ra các vấn đề về phụ thuộc giữa các phần của chương trình.
#include <bits/stdc++.h>
using namespace std;
long long n,i,a[1000];
int main()
{
cin>>n;
for (i=1; i<=n; i++) cin>>a[i];
sort(a+1,a+n+1);
for (i=1; i<=n; i++) cout<<a[i]<<" ";
return 0;
}
Bài 9:
uses crt;
var x,y,n:integer;
begin
clrscr;
readln(n);
x:=0;
y:=0;
while (x*x+y*y<>n) do
begin
x:=x+1;
y:=y+1;
end;
writeln(x,' ',y);
readln;
end.
– Tạo thư mục dự án myPrj chứa thư mục con my Lib là thư viện các hàm ta tự viết.
– Trong thư mục myLib, tạo một tệp rỗng, có tên “_init_py”. Nếu có tệp này, Python biết đây sẽ là một gói chứa một số tệp mã nguồn.
– Trong thư mục myLib, tạo hai tập “mySort.py” và “mySearch.py”. Sao chép mã lệnh của các hàm thực hiện sắp xếp, tìm kiếm mà ta đã viết thành công vào hai tập tương ứng. Mỗi hàm bắt đầu từ câu lệnh def định nghĩa hàm đó cho đến hết toàn bộ cả hàm.
– Thử sử dụng myLib như một thư viện: Viết tập chương trình “demoLib.py" bắt đầu với 2 dòng lệnh import. khai báo sử dụng thư viện. Tham khảo mã lệnh trong Hình là Chú ý thay dấu “...” bằng một dãy số và dấu “” bằng một số cụ thể.
Với Bài toán 1 có thể tách các dòng lệnh từ 4 đến 9 thành một hàm con độc lập