| Nguyễn Ngọc Hà Giang | |
|
|
|
Tác giả | Thông điệp |
---|
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Wed Oct 26, 2022 8:42 pm | |
| BÀI 15 TỔNG DÃY ĐẶC BIỆT 3 bước 1:XÁC ĐỊNH BÀI TOÁN input: nhập số nguyên dương n,p output: in ra tổng s= 1+2p^1+3p^2+…+(n+1)p^n bước 2:THUẬT TOÁN nhập p nhập n tính s= ((n+1)*p**(n+1))/(p-1)-(p**(n+1)-1)/((p-1)**2) bước 3:CHƯƠNG TRÌNH p=int(input()) n=int(input()) s= ((n+1)*p**(n+1))/(p-1)-(p**(n+1)-1)/((p-1)**2) print(s) TEST 4 5 kq 7737.0 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Wed Oct 26, 2022 9:13 pm | |
| Bài 17: Chia hết cho 3 Bước1 : xác định bài toán input : nhập n output: n là số chia hết cho 3 và không chia hết cho 5 hoặc không Bước 2: thuật toán nhập n n chia hết cho 3 là n%3==0 n không chia hết cho 5 là n%5!=0 biểu thức là (n%3==0) và (n%5!=0) bước 3: chương trình n=int(input()) if(n%3==0) and (n%5 !=0): print("True") else: print("False") Test 9 Kq True
Được sửa bởi Nguyễn Ngọc Hà Giang ngày Thu Oct 27, 2022 5:37 am; sửa lần 3. | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Wed Oct 26, 2022 9:31 pm | |
| BÀI 18 TÌM GIÁ TRỊ LỚN NHẤT B1:XÁC ĐỊNH BÀI TOÁN input: nhập a nhập b output in ra a nếu a>b in ra b nếu b>a B2: THUẬT TOÁN nhập a nhập b gắn a = max nếu max< b thì gắn max=b rồi in ra max B3: CHƯƠNG TRÌNH a=int(input()) b=int(input()) max=a if max<b: max=b print(max) TEST 5 10 kq 10 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Wed Oct 26, 2022 9:31 pm | |
| BAI 19 GIÁ TRỊ NHỎ NHẤT B1: XÁC ĐỊNH BÀI TOÁN input :nhập a ,b,c output: in ra GTNN B2: THUẬT TOÁN nhập a nhập b nhập c gắn a=min nếu min>b thì gắn b=min nếu min>c thì gắn c=min in ra min B3: CHƯƠNG TRÌNH a=int(input()) b=int(input()) c=int(input()) min=a if min>b: min=b if min>c: min=c print(min) TEST 14 11 9 kq 9 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Wed Oct 26, 2022 9:32 pm | |
| BÀI 20 CẶP SỐ CÓ TỔNG LỚN NHẤT B1:XÁC ĐỊNH BÀI TOÁN input: nhập a ,b,c output: in ra tổng có giá trị lớn nhất B2: THUẬT TOÁN nhập a, b,c tính m=a+b n=b+c p=a+c gắn max=m nếu max <n thì gắn max=n nếu max<p thì gắn max=p in ra max B3: CHƯƠNG TRÌNH a=int(input()) b=int(input()) c=int(input()) m=a+b n=b+c q=a+c max=m if max<n: max=n if max<q: max=q print(max) TEST 10 20 30 kq 50
Được sửa bởi Nguyễn Ngọc Hà Giang ngày Thu Oct 27, 2022 5:49 am; sửa lần 1. | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Thu Oct 27, 2022 5:46 am | |
| BÀI 16 CHẴN LẺ B1: XÁC ĐỊNH BÀI TOÁN input : nhập n output: n là số chẵn hoặc output: n là số lẻ B2:THUẬT TOÁN nhập n nếu : n chia hết cho 2 in ra n là số chẵn ngược lại in ra n là số lẻ b3: CHƯƠNG TRÌNH n=int(input()) if n %2==0: print("la so chan") else: print("la so le")
TEST 9 kq la so le | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Sat Dec 03, 2022 9:22 pm | |
| BÀI 21 GHÉP SỐ XÁC ĐỊNH BÀI TOÁN input: nhập a,b output: in ra số ab với ab là số lớn nhất THUẬT TOÁN nhập a, b ghép số ab và ba so sánh ab và ba in ra số có giá trị lớn nhất CHƯƠNG TRÌNH a=int(input()) b=int(input()) m=a*10+b n=b*10+a res=a if(res<n): res=n print (res) Test 1 2 KQ 21
| |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Sat Dec 03, 2022 9:24 pm | |
| BÀI 22 GIẢI PHƯƠNG TRÌNH BẬC NHẤT XÁC ĐỊNH BÀI TOÁN input :nhập a,b output : vô số nghiệm thì in ra “ MULTIPLE “ nếu pt vô nghiệm thì in ra “ NONE” nếu có nghiệm thì in ra x là nghiệm của phương trình ax+b=0 THUẬT TOÁN nhập a,b nếu a= 0 và nếu b=0 thì in ra “MULTIPLE “ ngược lại nếu b khác 0 thì in ra “NONE” ngược lại a và b khác 0 thì tính x=-1.0*b/a sau đó in ra x CHƯƠNG TRÌNH
Code:
a=int(input()) b=int(input()) if a==0: if b==0: print("MULTIPLE") else: print("NONE") else: x=-1.0*b/a print ("{:.3f}".format(x))
TEST 0 0 kq MULTIPLE TEST 0 9 kq NONE TEST 5 6 kq -1.200 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Sun Dec 04, 2022 8:24 am | |
| 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 ,x2 CHƯƠNG TRÌNH 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))
TEST 5 3 7 kq NONE | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Sun Dec 04, 2022 8:28 am | |
| BÀI 24 TAM GIÁC 1 XÁC ĐỊNH BÀI TOÁN input : nhập a, b,c output: nếu là ba cạnh của tam giác thì in ra diện tích của tam giác đó nếu không phải ba cạnh của tam giác thì in ra NONE THUẬT TOÁN nhập a,b,c nếu a+b>c và b+c>a và c+a>b thì tính nửa chu vi p=(a+b+c)/2.0 sau đó tính diện tích s=sqrt(1.0* p*(p-a)*(p-b)*(p-c)) rồi in ra s ngược lại thì in ra NONE CHƯƠNG TRÌNH from math import sqrt a=int(input()) b=int(input()) c=int(input()) if (a+b>c) and (b+c>a)and (c+a>b): p=(a+b+c)/2.0 s=sqrt(1.0* p*(p-a)*(p-b)*(p-c)) print("{:.2f}".format(s)) else: print("NONE") TEST 3 4 5 kqua 6.00 TEST 2 4 9 kq NONE | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Sun Dec 04, 2022 8:32 am | |
| BÀI 25 ĐIỂM VÀ ĐƯỜNG TRÒN XÁC ĐỊNH BÀI TOÁN input: nhập x1 y1 ( toạ độ điểm M) x2 y2( toạ độ tâm I) r ( bán kính đường tròn tâm I) output in ra vị trí của m so với đường tròn tâm I THUẬT TOÁN nhập x1 y1 x2 y2 r tính khoảng cách d=sqrt(pow(x2-x1,2)+ pow(y2-y1,2)) nếu d<r thì in ra M nằm trong đường tròn nếu d=r thì in ra M nằm trên đường tròn ngược lại in ra M nằm ngoài đường tròn CHƯƠNG TRÌNH
Code:
from math import sqrt from math import pow x1=int(input()) y1=int(input()) x2=int(input()) y2=int(input()) r=int(input()) d=sqrt(pow(x2-x1,2)+ pow(y2-y1,2)) if d<r: print("M nam trong duong tron") elif d==r: print("M nam tren duong tron") else: print("M nam ngoai duong tron")
TEST 1 3 2 3 5 kq M nam trong duong tron | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Sun Dec 04, 2022 8:42 am | |
| BÀI 26: Xác định 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 Chương Trình 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: 2 3 4 5 6 7 Kq NONE | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Sun Dec 04, 2022 8:45 am | |
| Bài 27:Xác Định input nhập 4 số nguyên dương a b c doutputtì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ánnhập a b c dgắn res =0sau đó lần lượt so sánh với các số còn lạinếu số dc so sánh là số chẵn và lớn hơn res thì gắn res bằng số đóChương trìnhCode: - 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: 10 11 19 20 KQ: 20 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Sun Dec 04, 2022 8:46 am | |
| Bài 28: 1)Xác định:input: nhập số nguyên dương n có 3 chữ sốoutput: in ra chữ số lớn nhất trong n2)Thuật toán:tách n thành a b c bằng phép chia nguyên và chia dư, thực hiện phép toán:a=n/100b=(n/10)%10c=n%10rồi so sánh và đưa ra số lớn nhất3)Chương trìnhCode: - 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: 467 KQ: 7 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Sun Dec 04, 2022 8:49 am | |
| Bài 29Xác Định Bài Toáninput nhập N là số nguyên dương có 3 chữ sốoutput in ra chữ số hoán vị lớn nhất từ NThuật Toántách N thành a b cnếu a nhỏ hơn b thì đổi chỗ a và bb nhỏ hơn c thì đổi chỗ b và cgtri chưa lớn nhất ta so sánh 1 lần nữaa nhỏ hơn b thì đổi chỗ a và bb nhỏ hơn c thì đổi chỗ b và csau đó in ra số có 3 chữ số đóChương trìnhCode: - 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: 347 KQ:743 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Sun Dec 04, 2022 8:51 am | |
| Bài 30:Xác Định Bài Toáninput nhập số N có 3 chữ sốoutput in ra số có 2 chữ số nhỏ nhấtThuật Toántách N thành a b cghép thành ab ac bctìm số nhỏ nhất r in raChương trìnhCode: - 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: 900KQ:00 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Fri Mar 31, 2023 8:43 am | |
| BÀI 56. LIỆT KÊ PHẦN TỬ LÀ SỐ CHẴNXÁC ĐỊNH BÀI TOÁN.input: nhập số nguyên dương N và dãy a1, a2, … aNoutput: in ra các phần tử là số chẵnTHUẬT TOÁNNhậ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ử đó raCODE:Code: - 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]) TESTN=4dãy 3 1 2 5kqua 1 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Fri Mar 31, 2023 8:48 am | |
| BÀI 57 VỊ TRÍ PHẦN TỬ LÀ SỐ CHÍNH PHƯƠNGXÁC ĐỊNH BÀI TOÁNinput: cho số nguyên dương N và dãy a1,a2,…,aNoutput: đưa ra vị trí số chính phương của dãyTHUẬT TOÁNSố 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 là: √u=⌊√u⌋.Duyệt từ đầu đến cuối dãy, nếu a[i] là số chính phương thì đưa vị trí i raCode:Code: - Code:
-
from math import sqrt 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) TESTN=4dãy 3 1 4 5kqua 2 3 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Fri Mar 31, 2023 8:49 am | |
| BÀI 58: ĐẾM PHẦN TỬXÁC ĐỊNH BÀI TOÁNinput: số nguyên dương N và dãy a1, a2,…,aNoutput: số các phần tử chia hết cho 2 nhưng không chia hết cho 3THUẬT TOÁN❖ Thuật toán: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 một đơn vị.Đưa biến Res ra.CODE:Code: - 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) TESTN=4dãy 4 1 6 5kqua 1 | |
|
| |
Nguyễn Ngọc Hà Giang
Tổng số bài gửi : 47 Join date : 06/10/2022
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang Fri Mar 31, 2023 8:50 am | |
| BÀI 59 TÌM PHẦN TỬ NHỎ NHẤTXÁC ĐỊNH BÀI TOÁNinput: số nguyên dương N và dãy a1,a2,…,aNoutput: phần tử có giá trị nhỏ nhấtTHUẬT TOÁNKhở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.CODECode: - 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) TESTN=4dãy 3 1 2 5kqua 1 | |
|
| |
Sponsored content
| Tiêu đề: Re: Nguyễn Ngọc Hà Giang | |
| |
|
| |
| Nguyễn Ngọc Hà Giang | |
|