| Trần Minh Dũng | |
|
|
|
Tác giả | Thông điệp |
---|
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Trần Minh Dũng Thu Oct 20, 2022 9:01 am | |
| Bài 1
Input: nhập số a, b Output: số có 2 chữ số lớn nhất tạo được
Chương trình: Thuật toán: tạo 2 số mới rồi so sánh với nhau
a=int(input()) b=int(input())
m=10*a+b n=10*b+a
res=m if (res<n): res=n else: res=m print(res)
Ví dụ: Input: 5 6 Output: 65 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 1:24 pm | |
| bài 2: Input: nhập giá trị x1, y1, x2, y2 Output: giá trị của d
Thuật toán: dùng công thức tính độ dài d=√((x2-x1)^2+(y2-y1)^2)
Chương trình: from math import sqrt x1=int(input()) y1=int(input()) x2=int(input()) y2=int(input()) d=sqrt((x2-x1)**2+(y2-y1)**2) print("{:.3}".format(d))
Ví dụ: Input: 0 0 2 0 Output: 2 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 1:27 pm | |
| bài 3: Input: nhập độ dài 3 cạnh của tam giác Output: diện tích và chu vi tam giác
Thuật toán: chu vi bằng tổng 3 cạnh của tam giác, diện tích tính theo công thức Heron
Chương trình: from math import sqrt a=int(input()) b=int(input()) c=int(input()) d=a+b+c p=d/2 s=sqrt(p*(p-a)*(p-b)*(p-c)) print(d) print("{:.3}".format(s))
Ví dụ: Input: 3 4 5 Output: 12 6.000 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 1:28 pm | |
| bài 4 Input: nhập toạ độ 3 cạnh của tam giác Output: độ dài 3 cạnh của tam giác
Thuật toán: dùng công thức tính độ dài d=√((x2-x1)^2+(y2-y1)^2)
Chương trình: from math import sqrt def dodai(xa,ya,xb,yb): a = xb-xa b = yb-ya c = sqrt(a**2+b**2) return c x1=int(input()) y1=int(input()) x2=int(input()) y2=int(input()) x3=int(input()) y3=int(input()) AB=dodai(x1,y1,x2,y2) AC=dodai(x1,y1,x3,y3) BC=dodai(x2,y2,x3,y3) print("{:.3}".format(AB)) print("{:.3}".format(AC)) print("{:.3}".format(BC))
Ví dụ: Input: 0 0 4 0 0 3 Output: 4 3 5 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 1:29 pm | |
| bài 5 Input: độ dài 2 cạnh hình chữ nhật Output: số viên gạch màu xanh và số viên màu vàng
Thuật toán: hình chữ nhật của số viên gạch vàng có độ dài ngắn hơn hình chữ nhật lớn hai viên, số viên gạch xanh bằng tổng số viên gạch trừ số viên gạch vàng
Chương trình: a=int(input()) b=int(input()) c=(a-2)*(b-2) d=a*b-c print(f"Số viên gạch màu vàng là {c}") print(f"Số viên gạch màu xanh là {d}")
Ví dụ: Input: 5 6 Output: Số viên gạch màu vàng là 12 Số viên gạch màu xanh là 18 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 1:30 pm | |
| bài 6 Input: nhập số n Output: tổng số lẻ liên tiếp từ 1 đến n
Thuật toán: áp dụng công thức s = 1 + 3 + 5 + ... + (2*n-1) = n^2
Chưong trình: from math import pow n=int(input()) S=pow(n,2) print(S)
Ví dụ Input: 4 Output: 16 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 1:31 pm | |
| bài 7 Input: nhập số n Output: n là số chẵn hay số lẻ
Ví dụ: Input: 2 Output: 2 là số chẵn Input: 3 Output: 3 là số lẻ
Thuật toán: Nếu n chia hết cho 2 thì n là số chẵn, không thì là số lẻ
Chương trình: n=int(input()) if n%2==0: print(f"{n} là số chẵn") else: print(f"{n} là số lẻ")
| |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 1:32 pm | |
| bài 8 Input: nhập số n Output: n có chia hết cho 3 và không chia hết cho 5 không
Ví dụ: Input: 15 Output: false Input: 12 Output: true
Thuật toán: nếu n chia hết cho 3 và n không chia hết cho 5 thì in ra true, không thì in ra false
Chương trình: n=int(input()) if (n%3==0) and (n%5!=0): print("true") else: print("false") | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 1:33 pm | |
| bài 9 Ví dụ: Input: 2 4 5 Output: 9
Input: nhập 3 số a, b, c Output: tổng cặp số lớn nhất
Thuật toán: Tính tổng 3 cặp số rồi cho tổng đầu tiên là lớn nhất, mang đi so sánh với 2 cặp còn lại, nếu có tổng nào lớn hơn thì cập nhật lại giá trị
Chương trình: a=int(input()) b=int(input()) c=int(input()) m=a+b n=a+c p=b+c smax=m if smax<n: smax=n if smax<p: smax=p print(smax) | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 1:34 pm | |
| bài 10 Input: nhập a, b Output: in ra số lớn hơn
Thuật toán: cho số đầu tiên là số lớn nhất, so sánh với số còn lại, nếu nó nhỏ hơn thì cập nhật lại giá trị
Chương trình: a=int(input()) b=int(input()) res=a if (res<b): res=b print(res)
Ví dụ: Input: 5 10 Output: 10
| |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 1:34 pm | |
| bài 11 Input: nhập 3 số a, b, c Output: in ra số lớn nhất
Thuật toán: cho số đầu tiên là số lớn nhất, so sánh với các số còn lại, nếu nó nhỏ hơn thì cập nhật lại giá trị
Chương trình: a=int(input()) b=int(input()) c=int(input()) res=a if(res>b): res=b if(res>c): res=c print(res)
Ví dụ: Input: 4 8 3 Output: 8 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 9:24 pm | |
| Bài 12: Input: nhập số n. Output: in ra tổng các số tự nhiên liên tiếp từ 1 đến n.
Thuật toán: Áp dụng công thức tính tổng các số tự nhiên liên tiếp: S=1+2+3+…+N= N(N+1)/2 Chương trình: n = int(input()) s = n * (n + 1) / 2 print(s)
Ví dụ: Input: 5 Output: 15 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 9:24 pm | |
| Bài 13: Input: Nhập số n Output: In ra tổng các số tự nhiên liên tiếp
Thuật toán: Áp dụng công thức tính tổng các số tự nhiên liên tiếp: S=1^2+2^2+3^2+…+N^2= N.(N+1).(2N+1)/6
Chương trình: n = int(input()) s = n * (n + 1) * (2 * n + 1) // 6 print(s)
Ví dụ: Input: 4 Output: 30 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 9:25 pm | |
| Bài 14:
Input: nhập số n Output: in ra tổng lập phương các số tự nhiên liên tiếp
Thuật toán: Áp dụng công thức tính tổng các số tự nhiên liên tiếp: S=1^3+2^3+3^3+…+N^3= (N.(N+1)/2)^2
Chương trình: n = int(input()) s = n * (n + 1) // 2 print(s * s)
Ví dụ: Input: 3 Output: 36 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 9:25 pm | |
| Bài 15: Input: nhập số n Output: Tổng luỹ thừa 5 các số tự nhiên liên tiếp từ 1 đến n
Thuật toán: Áp dụng công thức tính tổng các số tự nhiên liên tiếp: S=1^5+2^5+3^5+…+N^5=1/12.N^2.(N+1)^2.(2N^2+2N-1)
Chương trình: n = int(input()) s = n * n * (n + 1) * (n + 1) * (2 * n * n + 2 * n - 1) // 12 print(s)
Ví dụ: Input: 4 Output: 1300 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 9:25 pm | |
| Bài 16: Input: nhập số n Output: In ra tổng cặp số tự nhiên nhân dồn
Thuật toán: Áp dụng công thức tính tổng: S=1.2+2.3+3.4+…+N.N+1= N.N+1.(N+2)/3.
Chương trình: n = int(input()) s = n * (n + 1) * (n + 2) // 3 print(s)
Ví dụ Input: 4 Output: 40 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 9:26 pm | |
| Bài 17: Input: nhập số n Output: In ra tổng các nghịch đảo cặp số tự nhiên nhân dồn
Thuật toán: Áp dụng công thức tính tổng: S=1/(1.2)+1/(2.3)+1/(3.4)+…+1/(N.N+1)= N/(N+1)
Chương trình: n = int(input()) s = n / (n + 1.0) print(s)
Ví dụ: Input: 3 Output: 0.75 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 9:26 pm | |
| Bài 18: Input: nhập số n Output: In ra tổng các nghịch đảo cặp ba số tự nhiên nhân dồn
Thuật toán: Áp dụng công thức tính tổng các số tự nhiên liên tiếp: S=1/(1.2.3)+1/(2.3.4)+1/(3.4.5)+…+1/(N.(N+1).(N+2))= (N(N+3))/(4(N+1)(N+2))
Chương trình: n = int(input()) s = n * (n + 3) / (4.0 * (n + 1) * (n + 2)) print(s)
Ví dụ: Input: 3 Output: 0.225 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 9:27 pm | |
| Bài 19: Input: nhập số n Output: in ra tổng dãy đặc biệt 1
Thuật toán: Áp dụng công thức tính tổng các số tự nhiên liên tiếp: S=3/(1.2)^2+5/(2.3)^2+…+(2N+1)/(N(N+1))^2=(N(N+2))/(N+1)^2 Chương trình: n = int(input()) s = n * (n + 2) / ((n + 1) ** 2) print(s)
Ví dụ: Input: 3 Output: 0.9375 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 9:27 pm | |
| Bài 20: Input: nhập số n và p Output: In ra tổng dãy đặc biệt 2
Thuật toán: Áp dụng công thức tính tổng các số tự nhiên liên tiếp: S=1+p^1+p^2+…+p^N=(p^(N+1)-1)/(p-1) Chương trình: p = int(input()) n = int(input()) s = (p ** (n + 1) - 1) // (p - 1) print(s)
ví dụ: Input: 4 2 Output: 21 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Wed Oct 26, 2022 9:33 pm | |
| Bài 12 Cách hai n = int(input()) tong = 0 for i in range (1, n+1): tong += i print(tong) | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Sat Dec 03, 2022 10:37 pm | |
| BÀI 28 CHỮ SỐ LỚN NHẤT XÁC ĐỊNH BÀI TOÁN input nhập số nguyên dương N có 3 chữ số output in 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 đư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 368 KQ 8 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Sat Dec 03, 2022 10:37 pm | |
| BÀI 26 TAM GIÁC 2 XÁC ĐỊNH BÀI TOÁN input x1 y1 ( toạ độ điểm A) x2 y2(toạ độ điểm B) x3 y3( toạ độ điểm C) output in ra diện tích (nếu ab bc ca là 3 cạnh của tam giác) hoặc in ra NONE (nếu ab bc ca kh phải 3 cạnh của tam giác) THUẬT TOÁN nhập x1 y1 x2 y2 x3 y3 tính độ dài ab=sqrt(pow(x2-x1,2)+ pow(y2-y1,2)) ca=sqrt(pow(x1-x3,2)+ pow(y1-y3,2)) bc=sqrt(pow(x3-x2,2)+ pow(y3-y2,2)) kiểm tra nếu ab bc ca là ba cạnh của tam giác thì tính nửa chu vi và tính s nếu ab bc ca không phải là ba cạnh của tam giác thì in ra NONE Code:
from math import sqrt from math import pow x1=int(input()) y1=int(input()) x2=int(input()) y2=int(input()) x3=int(input()) y3=int(input()) ab=sqrt(pow(x2-x1,2)+ pow(y2-y1,2)) ca=sqrt(pow(x1-x3,2)+ pow(y1-y3,2)) bc=sqrt(pow(x3-x2,2)+ pow(y3-y2,2)) 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 1 1 2 2 3 3 KQ NONE | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Sat Dec 03, 2022 10:39 pm | |
| BÀI 27 SỐ CHẮN LỚN NHẤT XÁC ĐỊNH BÀI TOÁN input nhập 4 số nguyên dương a b c d output tìm số chẵn lớn nhất nếu có thì đưa ra kết quả ngược lại in ra NONE THUẬT TOÁN nhập a b c d gắn res =0 sau đó lần lượt so sánh với các số còn lại nếu số dc so sánh là số chẵn và lớn hơn res thì gắn res bằng số đó 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 3 4 5 6 KQ 6 | |
|
| |
Trần Minh Dũng
Tổng số bài gửi : 34 Join date : 20/10/2022
| Tiêu đề: Re: Trần Minh Dũng Sat Dec 03, 2022 10:40 pm | |
| Bài 23: GIẢI PHƯƠNG TRÌNH BẬC 2 XÁC ĐỊNH BÀI TOÁN: input: nhập a,b,c output: vô nghiệm thì in ra “NONE” có nghiệm kép thì in ra nghiệm kép đó có 2 nghiệm phân biệt thì in ra 2 nghiệm đó THUẬT TOÁN: nhập a ,b,c tính delta= b*b+4*a*c sau đó xét dấu của d d<0 thì in ra NONE ngược lại d=0 thì in ra x12=-b/(2*a) d>0 thì tính x1 = (-1.0 * b+sqrt(d)) / (2 * a) x2 = (-1.0 * b/a) - x1 sau đó in ra x1 ,c2 Code:
from math import sqrt a=int(input()) b=int(input()) c=int(input()) d=b*b-4*a*c if d < 0: print("NONE") elif d == 0: print("{:.3f}".format(-1.0 * b /(2.0 * a))) else: x1 = (-1.0 * b+sqrt(d)) / (2 * a) x2 = (-1.0 * b/a) - x1 print("{:.2f}".format(x1)) print("{:.2f}".format(x2)) | |
|
| |
Sponsored content
| Tiêu đề: Re: Trần Minh Dũng | |
| |
|
| |
| Trần Minh Dũng | |
|