May 2024 | Mon | Tue | Wed | Thu | Fri | Sat | Sun |
---|
| | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | Calendar |
|
Top posting users this week | |
| | Hà Nhật Quyên | |
| | |
Tác giả | Thông điệp |
---|
Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:39 pm | |
| Bài 26: - Xác định bài toán: Input: Nhập A(x1;x2), B(x2;y2), C(x3;y3) Ouput: Xét A,B,C có là đỉnh của tam giác. Nếu có tính diện tích tam giác ABC Ngược lại ghi ra "NONE" - Thuật toán: - Ta tính độ dài các cạnh AB,AC,BC theo công thức: dAB= √(xB-xA)^2+(yB-yA)^2 dAC= √(xC-xA)^2+(yC-yA)^2 dBC= √(xC-xB)^2+(yC-yB)^2
Code: from math import sqrt from math import pow def distance_points(mx,my,nx,ny): return sqrt(pow(nx-ny,2) + pow(ny-my,2)) ax=int(input()) ay=int(input()) bx=int(input()) by=int(input()) cx=int(input()) cy=int(input()) ab=distance_points(ax,ay,bx,by) bc=distance_points(bx,by,cx,cy) ca=distance_points(cx,cy,ax,ay) if(ab+bc>ca) and (bc+ca>ab) and (ca+ab>bc): p=(ab+bc+ca)/2.0 s=sqrt(p*(p-ab)*(p-bc)*(p-ca)) print("{:.3f}".format(s)) else: print("NONE") - Test mẫu: Ví dụ: 0 0 3 0 0 4 Kết quả: 5.739 | |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:40 pm | |
| Bài 27: - Xác định bài toán: Input: Nhập a, b, c và d. Output: Đưa ra số chẵn lớn nhất, ngược lại thì ra “NONE”. - Thuật toán: -Khởi tạo giá trị res ban đầu bằng số vô cùng bé, res = 0. -Mang giá trị này so sánh với các số còn lại, số nào là số chắn và lớn hơn res thì cập nhật lại nó.
Code: a = int(input()) b = int(input()) c = int(input()) d = int(input()) res = 0 if (a%2 == 0) and (res<a): res = a if (b%2 == 0) and (res<b): res = b if (c%2 == 0) and (res<c): res = c if (d%2 == 0) and (res<d): res = d if res>0: print(res) else: print("NONE")
- Test Mẫu: Ví dụ: a=3, b=2, c=4, d=3 Kết quả: res=4
| |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:41 pm | |
| Bài 28: - Xác định bài toán: Input: Nhập số nguyên dương N có 3 chữ số Output: Đưa ra chữ số lớn nhất trong N - Thuật toán: Nhập N Tách N thành a, b, c bằng phép chia nguyên và chia dư a=N/100 b=(N/10)%10 c=N%10 Sau đó so sánh rồi đưa ra số lớn nhất
Code: n = int(input()) a = n//100 b = (n//10)%10 c = n%10 res = a if (res<b): res=b if (res<c): res=c print(res)
- Test mẫu: Ví dụ: N=683 Kết quả: res=8
| |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:41 pm | |
| Bài 29: - Xác định bài toán: Input: Nhập N là số nguyên dương có 3 chữ số Output: Đưa ra chữ số hoán vị lớn nhất từ N - Thuật toán: Tách N thành a, b, c Nếu a < b thì đổi chỗ a và b b < c thì đổi chỗ b và c Giá trị chưa lớn nhất ta so sánh 1 lần nữa Nếu a < b thì đổi chỗ a và b b < c thì đổi chỗ b và c Sau đó in ra số có 3 chữ số đó
Code: n = int(input()) a = n//100 b = (n//10)%10 c = n%10 if (a<b): a,b=b,a if (b<c): b,c=c,b if (a<b): a,b=b,a if (b<c): b,c=c,b n=a*100+b*10+c print(n) - Test mẫu: Ví dụ: 594 Kết quả: 954[/b][/b]
| |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:41 pm | |
| Bài 30: - Xác định bài toán: Input: Nhập số N có 3 chữ số Output: Đưa ra số có 2 chữ số nhỏ nhất sau khi thực hiện xóa số - Thuật toán: Tách N thành a, b, c Ghép thành ab, ac, bc Tìm số nhỏ nhất rồi đưa ra
Code: n = int(input()) a = n//100 b = (n//10)%10 c = n%10 ab=a*10+b ac=a*10+c bc=b*10+c min=ab if min>ac: min=ac if min>bc: min=bc print(min) - Test mẫu: Ví dụ: 789 Kết quả: 78
| |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:42 pm | |
| Bài 31: - Xác định bài toán: Input: Nhập a, b, c, d, m nguyên dương Output: Nếu phương trình vô số nghiệm ghi "Multiple" vô nghiệm ghi "None" có nghiệm ghi dạng x=p/q.
- Thuật toán: Biến đổi phương trình về dạng phương trình bậc nhất một ẩn p.x+q =0 Với p=a-e*c; q=b-e*d; và x ≠ -d/c. -Nếu p= 0 thì Nếu q = 0 thì thông báo “Multiple” Ngược lại, “None” -Ngược lại, Tính x=-q/p. Nếu x ≠ -d/c thì cout << -q <<”/"<<p
Code:
a=int(input()) b=int(input()) c=int(input()) d=int(input()) m=int(input()) if(d==m==0): print("NONE") else: p=a-m*c q=m*d-b if(p==0): if(q==0): print("MULTIPLE") else: print("NONE") else: x=(-p)/q if(x==(-d)/c): print("NONE") else: if(p<0): p*=-1 q*=-1 print("RESULT:",q,"/",p) | |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:43 pm | |
| Bài 37: - Xác định bài toán: Input: Nhập N nguyên dương Output: Đưa ra số nhỏ hơn hoặc bằng N chia hết cho 2 và không chia hết cho 3
- Thuật toán: B1: Nhập N và duyệt i từ 1 đến N B2: Thực hiện câu lệnh if(i%2==0) và (i%3!=0) B3: Đưa i ra
Code:
n = int(input()) for i in range(1, n+ 1): if (i % 2 == 0) and (i % 3 != 0): print(i)
- Test mẫu: Ví dụ: N=8 Kết quả: 2 4 8 | |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:43 pm | |
| Bài 39: - Xác định bài toán: Input: Nhập N nguyên dương Output: Đưa ra các ước nguyên dương của N
- Thuật toán: Duyệt i từ 1 đến int(sqrt(n)) nếu n chia hết cho i thì in ra i nếu n chia i khác i thì in ra giá trị n chia i
Code:
n = int(input()) for i in range(1, n // 2 + 1): if n % i == 0: print(i) print(n)
- Test mẫu: Ví dụ: 6 Kết quả: 1 2 3 6
| |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:43 pm | |
| Bài 43: - Xác định bài toán: Input: Nhập N Output: Đưa ra số ước nguyên dương của N
- Thuât toán:
Code: from math import sqrt n = int(input()) res = 0 for i in range(1, int(sqrt(n))): if n % i == 0: res += 1 if i!= n // i: res += 1 print(res)
- Test mẫu: Ví dụ: N = 20 Kết quả: 5
| |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:44 pm | |
| Bài 46: - Xác định bài toán: Input: Nhập N nguyên dương Output: N là số nguyên tố hoặc N không là số nguyên tố
- Thuật toán: Nếu N ≤ 1: N N không phải là số nguyên tố Tiếp theo ta duyệt từ 2 đến sqrt(n) Nếu N chia hết cho i, vậy đó không phải là số nguyên tố Còn lại là số nguyên tố
Code:
from math import sqrt def prime(u): if u <= 1: return False i = 2 while i * i <= u: if u % i == 0: return False i += 1 return True n = int(input()) print(prime(n))
| |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Thu Jan 05, 2023 8:44 pm | |
| Bài 47: - Xác định bài toán: Input: Nhập a,b Output: Các số nguyên tố thuộc đoạn [a,b]
- Thuật toán: Vì bài toán phải kiểm tra tính nguyên tố nhiều lần nên ta xây dựng chương trình con dạng hàm để kiểm tra tính nguyên tố. Duyệt từ giá trị đầu đến giá trị cuối, nếu là số nguyên thì in ra.
Code:
from math import sqrt def prime(u): if u <= 1: return False i = 2 while i * i <= u: if u % i == 0: return False i += 1 return True a = int(input()) b = int(input()) for i in range(a,b + 1): if prime(i): print(i)
| |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Fri Mar 31, 2023 8:45 pm | |
| Bài 56:
- Xác định bài toán: Input: Số nguyên dương N và dãy a1,a2,...,aN Output: Liệt kê phần tử là số chẵn trong dãy
- Thuật toán: Nhập dãy vào dãy a[i] Duyệt từ đầu đến cuối dãy ,nếu a[i] là số chẵn thì đưa phần tử đó ra, mỗi phần tử cách nhau 1 dấu cách
Code:
n= int(input()) a= list() for i in range (0,n): a.append(int(input())) for i in range (0,n): if a[i] % 2 == 0: print(a[i])
- Test: 2 3 2 5 7 Kết quả: 2 | |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Fri Mar 31, 2023 8:45 pm | |
| Bài 57: - Xác định bài toán: Input: số nguyên dương N và dãy a1,a2,...,aN Output: đưa ra vị trí các phần tử là số chính phương trong dãy
- Thuật toán: Số chính phương là số có căn bậc hai là một số nguyên Biểu thức toán học: căn u=[căn u] Nhập dãy vào mảng a[i] Duyệt từ đầu đến cuối dãy ,nếu a[i] là số chính phương thì đưa vị trí i ra mỗi giá trị tìm được cách nhau 1 dấu cách
Code:
from math import sqrt from math import trunc
n= int(input()) a= list()
for i in range(0,n): a.append(int(input()))
for i in range(0,n): if sqrt(a[i]) == int(sqrt(a[i])): print(i)
- Test mẫu: 4 3 1 4 5 Kết quả : 2 3 | |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Fri Mar 31, 2023 8:46 pm | |
| Bài 58: - Xác định bài toán: Input: số nguyên dương N và dãy a1,a2,...,aN Output: đếm số lượng các phần tử trong dãy chia hết cho 2 nhưng không chia hết cho 3
- Thuật toán: Nhập dãy vào mảng a[i] Res=0; Duyệt từ đầu đến cuối dãy ,nếu a[i] chia hết cho 2 và không chia hết cho 3 thì tăng biến Res lên 1 đơn vị Đưa biến res ra
Code:
n= int(input()) a= list()
for i in range (0,n): a.append(int(input())) res = 0
for i in range (0,n): if a[i] % 2 == 0 and a[i] % 3 !=0: res +=1 print(res)
- Test mẫu: 4 4 1 7 5 Kết quả : 1 | |
| | | Hà Nhật Quyên
Tổng số bài gửi : 40 Join date : 05/10/2022
| Tiêu đề: Re: Hà Nhật Quyên Fri Mar 31, 2023 8:46 pm | |
| Bài 59: - Xác định bài toán: Input: Số nguyên dương N và dãy a1,a2,.....,aN Output: Phần tử có giá trị nhỏ nhất
- Thuật toán: Nhập dãy vào mảng a[i] Khởi tạo rmin=a[0] Duyệt từ đầu đến cuối dãy, nếu a[i]< rmin thì cập nhật lại rmin=a[i]; Đưa rmin ra
Code:
n= int(input()) a= list()
for i in range (0,n): a.append(int(input()))
rmin=a[0]
for i in range(1,n): rmin=min(rmin, a[i])
print(rmin)
- Test mẫu: 4 1 4 9 16
Kết quả 1
| |
| | | Sponsored content
| Tiêu đề: Re: Hà Nhật Quyên | |
| |
| | | | Hà Nhật Quyên | |
|
Similar topics | |
|
| Permissions in this forum: | Bạn được quyền trả lời bài viết
| |
| |
| |