Networks Business Online Việt Nam & International VH2

Mô phỏng thuật toán tìm giá trị nhỏ nhất của dãy số

Đăng ngày 09 November, 2022 bởi admin
Mô phỏng thuật toán tìm giá trị nhỏ nhất của dãy số( Tin học – Lớp 7 )

Mô phỏng thuật toán tìm giá trị nhỏ nhất của dãy số4 vấn đápTính nhanh giá trị của những biểu thức sau ( Tin học – Lớp 8 )2 vấn đápBé Nghệ là một học viên lớp 2 ( Tin học – Lớp 9 )1 vấn đápNếu 2 vòng lặp For thì sẽ chạy ra làm sao ( Tin học – Lớp 8 )1 vấn đápMột hình vuông vắn có chu vi 16 cm ( Tin học – Lớp 7 )3 vấn đápĐơn vị đo dung tích thông tin là gì ( Tin học – Lớp 6 )4 vấn đápTìm x thuộc N ( Tin học – Lớp 7 )

2 trả lời

– Xác định bài toán :
Input : Số N và dãy N số a1, a2, …, aN .
Output : Giá trị nhỏ nhất ( Min ) của dãy số .
– Ý tưởng :

  • Khởi tạo giá trị Min = a1.
  • Lần lượt nhận giá trị /i từ 2 đến N, so sánh giá trị số hạng a1 với  giá trị Min, nếu ai < Min thì Min nhận giá trị mới ai

– Thuật toán : Mô tả thuật toán theo cách liệt kê :
Bước 1. Nhập N và dãy a1, …. aN ;
Bước 2. Min < - ai, i < - 2 Bước 3. Nếu i > N thì đưa ra giá trị Min rồi kết thúc ; Bước 4 .
Bước 4.1 : Nếu ai < Min thì Min < - ai Bước 4.2 : i < - i + 1 rồi quay lại bước 3 Mô phỏng thuật toán tìm giá trị nhỏ nhất của dãy sốXem thêm : Hãy nêu tiêu chuẩn lựa chọn thuật toán.

Thuật toán là gì?Thuật toán để giải một bài toán là một dãy hữư hạn các thao tác được sắp xếp theomột trình tự xác định sao cho sau khi thực hiện dãy thao tác ấy, từ input của bài toán, ta nhậnđược output cần tìm.Các đặc trưng của thuật toánTính kết thúc: Một thuật toán phải kết thúc sau một số hữu hạn thao tácTính rõ ràng: theo nghĩa nhiều người khác nhau thực hiện thì phải cho cùng một kết quảTình phổ dụng: Thuật toán nào dùng được rộng rãi hơn tổng quát hơn thì tính phổ dụng caohơnTính hiệu quả: Ít tốn kém về số lượng thao tác, về vùng nhớ, về thời gianCách biểu diễn thuật toánNgười ta thường dùng hai phương pháp sau đây để mô tả thuật toána)Phương pháp liệt kêb) Phương pháp sơ đồ khối ( Lưu đồ)Hình O van thể hiện thao tác nhập xuất dữ liệuHình chữ nhật thể hiện các phép tính toánCác mũi tên quy định trình tự thực hiện thao tácMũi tên ngược được hiểu là phép gánHình thoi thể hiện thao tác so sánhMột số thuật toán đơn giản thường gặp1)Hoán vị hai giá trị x,y có dùng biến trung gianBước 1: Dùng một biến trung gian tam và thực hiện tam ← xBước 2: x ←yBước 3: y← tamBước 4: kết thúc2)Hoán vị hai giá trị x,y không dùng biến trung gianBước 1: x← x+yBước 2: y ←x-yBước 3: x← x-yBước 4: kết thúc3)Tìm phần tử nhỏ nhất trong dãy a1 anBước 1: Nhập giá trị N và a1 anBước 2: I ← 1; Min← a1Bước 3: i←i+1Bước 4: nếu i> n thì xuất Min và chuyển đến bước 7 để kết thúc ngược lại thực hiện bước 5Bước 5: Nếu ai n thì sang bước 5, trái lại đến bước 4Bước 4: Nếu k=ai thì sang bước 5, trái lại i←i+1 và quay về bước3Bước 5: Nếu i>n thì thông báo k không thuộc dãy, trái lại thông báo k là phần tử thứ I củadãyBước 6: kết thúcTìm giá trị lớn nhất của một dãy số nguyênXác địnhbài toánInput:Số n và dãy a1 anOutput: Giá trị lớn nhất của dãy số nguyênY tưởngKhởi tạo giá trị Max=a1;Lần lượt với I từ 2 đến n so sánh các giá trị số hạng ai với Max, nếu ai>Max thì Max nhận giá trị mới là aiMô tảthuật toánbằng liệt kêBước 1: Nhập N và dãy a1,,anBước 2: Max <- a1; i<-2;Bước 3: Nếu i> N thì đưa ra giá trị Max rồi kết thúcBước 4;Bước 4.1. Nếu ai>Max thì Max<-aiBước 4.2. i<-i+1 rồi quay lại bước 3Mô tảthuật toánbằng Sơ đồkhốiVà minhhọa bằngchươngtrìnhPascalprogram bt; uses crt; var a:array[1 100] of integer; n,i, max:integer;begin clrscr; write('nhap n');readln(n); for i:=1 to n do begin write('a[',i,']='); readln(a[i]); end; Max:=0; for i:=2 to n do if a[i]>max then max:=a[i]; write(‘gia tri lon nhat la ‘,max); readln; end.Ví dụ N=11 và dãy số 5,1,4,7,6,3,15,8,4,9,12Mô phỏngtheo ví dụdãy 5 1 4 7 6 3 15 8 4 9 12i 2 3 4 5 6 7 8 9 10 11 12Max 5 5 5 7 7 7 15 15 15 15 15Giá trị lớn nhất là : 15Kiểm tra tính nguyên tố của một số nguyên dươngXácđịnhbàitoánInput: N là một số nguyên dươngOutput: “N là số nguyên tố” hoặc “N không là số nguyên tố”ÝtưởngMột số nguyên dương N là một số nguyên tố nếu nó có đúng hai ước số khác nhau là 1 và chính nó. Nếu N=1 thì N không là số nguyên tố; Nếu 1= 4 và không có ước số trong phạm vi từ 2 đến phần nguyên căn bậc 2 của N thì N là số nguyên tốMô tảthuậttoánbằngliệt kêBước 1: Nhập số nguyên dương NBước 2: Nếu N=1 thì thông báo N không nguyên tố rồi kết thúcBước 3: Nếu N<4 thì thông báo N là nguyên tố rồi kết thúcBước 4; i <-2;Bước 5 Nếu i>[ ]N thì thông báo N là số nguyên tố rồi kết thúcBước 6 Nếu N chia hết cho I thì thông báo N không nguyên tố rồi kết thúcBước 7 i<- i+1 rồi qua lại bước 5Mô tảthuậttoánbằngSơ đồkhốiVàminhhọabằngchươngtrìnhPascalprogram bt; uses crt; var N,i:integer; kt:boolean ;begin clrscr; write('nhap N');readln(n); if n=1 then write('N khong la songuyen to') else if n<4 then write('N la so nguyento') else begin for i:=2 to trunc(sqrt(n)) do if n mod i=0 then kt:=true; if kt then write ('N khong la songuyen to') else write('N la so nguyen to'); end; readln; end.Ví dụ a) N= 29 phần nguyên ([ ]N=5) b) N =45 ([ ]N=6)Môphỏngtheo vídụi 2 3 4 5 6 i 2 3N/i 29/2 29/3 29/4 29/5 N/i 45/2 45/3Chia hết không?Không Không Không Không Chia hết không?Không hết29 là số nguyên tố 45 không là số nguyên tốThuật toán tìm kiếm tuần tự Xác địnhbài toánInput:Số n và dãy a1 an và số nguyên k Output: Chỉ số i có giá trị bằng khóa k Ý tưởngTìm kiếm tuần tự được thực hiện một cách tự nhiên. Lần lượt từ số hạng thứ nhất, ta so sánh giá trị số hạng đang xét với khóa cho đến khi hoặc gặp một số hạng bằng khóa hoặc dãy đã được xét hết và không co giá trị nào bằng khóa. Trong trường hợp thứ 2 dãy A không có số hạng nào bằng khóaMô tảthuật toánbằng cáchliệt kêBước 1: Nhập N và dãy a1 an và số nguyên k ( khóa)Bước 2: i<-1;Bước 3: Nếu ai=k thì thông báo chỉ số i rồi kết thúcBước 4 i=i+1Bước 5 Nếu i>N thì thông báo dãy A không có số hạng nào có giá trị bằng k rồi kết thúcBước 6 Quay lại bước 3Mô tảthuật toánbằng Sơđồ khốiVà minhhọa bằngchươngtrìnhPascalprogram bt; uses crt; var a:array[1 100] of integer; n,i, max,k,m:integer; kt:boolean;begin clrscr; write(‘nhap n’); readln(n); for i:=1 to n do begin write(‘a[‘,i,’] =’); readln(a[i]); end; write(‘nhap khoa k’); readln(k); for i:=1 to n do if a[i]=k then begin kt:=true ; m:=i; end; if kt then write(‘chi so i la ‘,m) else write(‘khong co gia tri bang khoa k’); readln; end.Ví dụ K=2 và N=10 k=6 và N=8Mô phỏngtheo ví dụA 5 7 1 4 2 9 8 9 6 5 A 5 7 1 4 2 9 7 9i 1 2 3 4 5 – – – – – i 1 2 3 4 5 6 7 8 9Với i=5 thì a5=2 Với mọi i từ 1 đến 8 không có ai có giá trị bằng 6Thuật toán tìm kiếm nhị phân ( Binary Search)Xác địnhbài toánInput:Số n và dãy a1 an và số nguyên k ( Dãy đã sắp tăng)Output: Chỉ số i có giá trị bằng khóa k Ý tưởngDãy A đã sắp tăng, ta tìm cách thu hẹp nhanh phạm vi tìm kiếm sau mỗi lần so sánh với số hạng được chọn. Để thực hiện điều này, ta chọn số hạng a giua ở “giữa dãy” để so sánh với k, trong đó giua=+21nKhi đó chỉ xảy ra một trong ba trường hợp sau:-Nếu a giua=k thì Giua là chỉ số cần tìm và kết thúc việc tìm kiếmNếu a giua>k thì việc tìm kiếm thuộc khoảng từ a1 đến a giua-1Nếu a giuak thì đặt cuoi=giua+1, rồi chuyển đến bước 7;Bước 6: Dau<- Giua+1;Bước 7: Nếu Dau>Cuoi thì thông báo dãy A không có số hạng nào có giá trị bằng k rồi kết thúc;Bước 8 Quay lại bước 3.Mô tảthuật toánbằng Sơđồ khối minh họabằng chương trình Pascalminh họaprogram bt; bằngchươngtrìnhPascaluses crt; var a: array[1 100] of integer; i, n,k,dau,giua,cuoi: integer;begin clrscr; write(‘nhap n’); readln(n); for i:=1 to n do begin write(‘a[‘,i,’] =’); readln(a[i]); end; write(‘nhap khoa k’); readln(k); dau:=1; cuoi:=n; repeat giua:=(dau+cuoi)div 2;if a[giua]k then cuoi:=giua-1 else cuoi:= -1;until dau>cuoi; if cuoi=-1 then write(‘ giua la’, giua) else write(‘khong co gia tri bang khoa k’); readln; end.Ví dụ K=21, N=10Mô phỏngtheo ví dụI 1 2 3 4 5 6 7 8 9 10A 2 4 5 6 9 21 22 30 31 33Dau 1 6 6Cuoi 10 10 7Giua 5 8 6A giua 9 30 21 Lần duyệt 1 2 3Ở lần duyệt thứ 3 a giua=21=k tại i=giua=6Ví dụ K=25, N=10Mô phỏngtheo ví dụI 1 2 3 4 5 6 7 8 9 10A 2 4 5 6 9 21 22 30 31 33Dau 1 6 6 7 8Cuoi 10 10 7 7 7Giua 5 8 6 7A giua 9 30 21 22Lần duyệt 1 2 3 4 5Ở lần duyệt thứ 5 Dau> Cuoi kết luận không có số hạng =kThuật toán sắp xếp tráo đổi ( Exchange Sort) (Sắp xếp nổi bọt ( Bubble Sort)XácđịnhbàitoánInput:Số n và dãy a1 an Output: Dãy A được sắp xếp lại thành dãy tăng ( không giảm) ÝtưởngVới mỗi cặp số hạng đứng liền kề trong dãy, nếu số trước lớn hơn số sau ta đổi chỗ chúng cho nhau, việc đó được lặp lại cho đến khi không có sự đổi chỗnào xảy ra nữa. Sau mỗi lần đổi chỗ giá trị lớn nhất của dãy chuyển dần về cuối dãy, và tiếp đến giá trị lớn thứ hai chuyển về gần cuối dãy cứ thế giống bọt nước nổi từ đáy lên mặt nước gọi là sắp xếp nổi bọtMô tảthuậttoánbằngliệt kêBước 1: Nhập N và dãy a1 anBước 2: M<-NBước 3: Nếu M<2 thì đưa ra dãy A đã được sắp xếp rồi kết thúcBước 4; M<-M-1; i<-0;Bước 5 i<-i+1;Bước 6 Nếu i>M thì quay lại bước 3Bước 7 Nếu ai>ai+1 thì tráo đổi ai và ai+1 cho nhauBước 8 Quay lại bước 5Mô tảthuậttoánbằngSơ đồkhốiVàminhhọabằngchươngtrìnhPascalprogram bt; uses crt; var a:array[1 100] of integer; n,i, tam,j,m:integer;kt:boolean;begin clrscr; write(‘nhap n’); readln(n); for i:=1 to n do begin write(‘a[‘,i,’]=’);readln(a[i]); end; for i:=1 to n do for j:=n downto 1+1 do If a[ j ] < a[ j-1] Then Begin tam :=a[ j ]; a[ j ] := a[j-1]; a[ j-1] := tam; End; for i:=1 to n do write(a[ i ]:5); readln; end.Ví dụ a) N= 10 dãy A= 6, 1, 5, 3, 7, 8, 10, 7, 12, 4Mô 6 1 5 3 7 8 10 7 12 4 1 3 5 6 7 7 4 8 10 12 phỏngtheo vídụ 1 6 5 3 7 8 10 7 12 4 lần 4 1 3 5 6 7 4 7 8 10 12Lần 1 1 5 6 3 7 8 10 7 12 4 1 5 3 6 7 8 10 7 12 4 lần 5 1 3 5 6 7 4 7 8 10 12 1 5 3 6 7 8 7 10 4 12 1 3 5 6 4 7 7 8 10 12 1 5 3 6 7 8 7 10 4 12 1 5 3 6 7 8 7 10 4 12 lần 6 1 3 5 6 4 7 7 8 10 12 1 3 5 6 7 8 7 10 4 12 1 3 5 4 6 7 7 8 10 12 Lần 2 1 3 5 6 7 7 8 10 4 12 1 3 5 6 7 7 8 4 10 12 lần 7 1 3 5 4 6 7 7 8 10 12 1 3 4 5 6 7 7 8 10 12 1 3 5 6 7 7 8 4 10 12 lần 8 1 3 4 5 6 7 7 8 10 12Lần 3 1 3 5 6 7 7 4 8 10 12 lần 9 1 3 4 5 6 7 7 8 10 12 Lần 10 1 3 4 5 6 7 7 8 10 12Thuật toán tìm ươc chung của hai số ( dạng 1)Xác địnhbài toánInput: nhập hai số a,b Output: ucln của hai số Ý tưởngÝ tưởng của thuật tốn Euclide l UCLN của 2 số a,b cũng l UCLN của 2 số b v a mod b, vậy ta sẽ đổi a l b, b l a mod b cho đến khi b bằng 0. Khi đĩ UCLN l a.Mô tảthuật toánbằng cáchliệt kêBước 1: Nhập hai số a và bBước 2: du<-a chia bBước 3: Nếu b = 0 chuyển qua bước 5Bước 4 Nếu b<>0 thì a<-b; b<- du quay lại bước 2 Bước 5 đưa ra uớc chung lớn nhất của hai số và kết thúcMô tảthuật toánbằng Sơđồ khốiVà minhhọa bằngchươngtrìnhPascalprogram bt; uses crt; var a,b,du:integer;begin clrscr; write('nhap so a');readln(a); write('nhap so b');readln(b);repeat du:=a mod b; a:=b; b:=du;until b=0; write(a);readln;end.Ví dụ A=125; b=35Mô phỏngtheo ví dụLầnduyệtA B du1 125 35 202 35 20 153 20 15 54 15 5 05 5 0Khi b bằng 0 UCLN là giá trị của a lúc đóThuật toán tìm ươc chung của hai số ( dạng 2)Xác địnhbài toánInput: nhập hai số a,b Output: ucln của hai số Ý tưởngNếu a=b thì gi trị chung đó l UCLN của a v bNếu ab thì UCLN(a,b)=UCLN(a-b,b)Mô tảthuật toánbằng cáchliệt kêBước 1: Nhập hai số a và b;Bước 2: Nếu a=b thì lấy giá trị chung này làm UCLN rồi chuyển đến bước 5;Bước 3: Nếu a>b thì a<-a-b rồi quay lại bước 2;Bước 4 b<-b-a rồi quay lại bước 2 ;Bước 5 đưa ra uớc chung lớn nhất của hai số và kết thúcMô tảthuật toánbằng Sơđồ khốiVà minhhọa bằngchươngtrìnhPascalprogram bt; uses crt; var a,b:integer;begin clrscr; write('nhap so a');readln(a); write('nhap so b');readln(b);repeat if a>b then a:=a-b else b:=b-a;until a=b; write(‘UCLN’,a);readln;end.Ví dụ A=125; b=35Mô phỏngtheo ví dụLần duyệt A B So sánha-b125-352 90 35 a>b90-353 60 35 a>b60-354 25 35 ab25-106 15 10 a>b15-107 5 10 aa thì lấy giá trị k này làm UCLN rồi chuyển đến bước 6;Bước 3: k<-k+1 ;Bước 4: nếu a và b cùng chia hết cho k UCLN<-k quay lại bước 2 ;Bước 5: a và b không chia hết cho k quay lại bước 2;Bước 6 đưa ra uớc chung lớn nhất của hai số là k và kết thúc.Mô tảthuật toánbằng Sơđồ khốiVà minhhọa bằngchươngtrìnhPascalprogram bt; uses crt; var a,b,k,UCLN:integer;begin clrscr; write('nhap so a');readln(a); write('nhap so b');readln(b);repeat k:=k+1; if (a mod k=0) and (b mod k=0) then UCLN:=k;until k>a; write(‘uoc chung lon nhat ’, UCLN);readln;end.Ví dụ A=125; b= 35Mô phỏngtheo ví dụLần duyệt A Bk A và b chia hết k1 125 351 Hết 2 125 352 không3 125 353 không4 125 354 không5 125 355 Hết… … …. …125125 không126126 khôngKhi k=5 UCLN là giá trị của k lúc đó là 5( sử dụng 126 lần duyệt)Thuật toán tìm BCNN của hai số ( dạng 1)Xác địnhbài toánInput: nhập hai số a,b Output: BCNN của hai số Ý tưởngBội chung nhỏ nhất của hai số bằng tích của a và b chia cho UCLN của haisố đó. Từ đó muốn tìm BCNN của hai số ta cần tìm UCLN trước.Thuật tốn ny l viết tiếp thuật tốn tìm UCLN chỉ khc l cần phải gn a v b bằng một giá trị khác để thực hiện tính toán sau này vì khi tính tốn UCLN gi trị a v b lc đó đ thay đổiMô tảthuật toánbằng cáchliệt kêBước 1: Nhập hai số a và b gán M<-a; N<-b;Bước 2: du<-a chia bBước 3: Nếu b = 0 chuyển qua bước 5Bước 4 Nếu b<>0 thì a<-b; b<- du quay lại bước 2 Bước 5 đưa ra uớc chung lớn nhất (UCLN) của hai số Bước 6: BC<-(M*N)/ UCLN Bước 7: xuất BCNN và kết thúcMô tảthuật toánbằng Sơđồ khốiVà minhhọa bằngchươngtrìnhPascalprogram bt; uses crt; var a,b,du,M,N,bc:integer;begin clrscr; write('nhap so a');readln(a); write('nhap so b');readln(b); repeat du:=a mod b; a:=b; b:=du;until b=0; Bc:=(M*N) div a Write (BC);readln;end.Ví dụ A=125; b=35 ; gán M cho a và N cho bMô phỏngtheo ví dụLầnduyệtA B du1 125 35 202 35 20 153 20 15 54 15 5 05 5 0Khi b bằng 0 UCLN là giá trị của a lúc đó và BC=(M*N)/a=875Thuật toán tìm Bội chung nhỏ nhất của hai số ( dạng 2)Xác định Input: nhập hai số a,b bài toán Output: BCNN của hai số Ý tưởngBCNN của hai số là một số k nào đó chia hết cho hai số đ cho trong lần gặpđầu tiên trong khoảng từ 1 đến vô cùng.Mô tảthuật toánbằng cáchliệt kêBước 1: Nhập hai số a và b;Bước 2: k<-k+1Bước 3: Nếu k không chia hết cho a và b thì chuyển đến bước 2Bước 4: xuất k là BCNN và kết thúc.Mô tảthuật toánbằng Sơđồ khốiVà minhhọa bằngchươngtrìnhPascalprogram bt; uses crt; var a,b,k:integer;begin clrscr; write('nhap so a');readln(a); write('nhap so b');readln(b);repeat k:=k+1;until (k mod a=0) and (k mod b=0); write(‘ Bọi chung nho nhatla ’, k);readln;end.Ví dụ A=5; b= 15Mô phỏngtheo ví dụLần duyệt A Bk K chia hết cho a và b ?1 5 151 không2 5 152 không3 5 153 không4 5 154 không5 5 155 không… … …. …1515 HếtKhi k=15 BCNN là giá trị của k lúc đó là 15( sử dụng 15 lần duyệt)Thuật toán đếm số thoả mãn điều kiện Xác định Input:Số n và dãy a1 an và số nguyên k bài toán Output: Có bao nhiêu giá trị bằng k Ý tưởngTìm kiếm tuần tự được thực hiện một cách tự nhiên. Lần lượt từ số hạng thứ nhất, ta so sánh giá trị số hạng đang xét với khóa cho đến khi hoặc gặp một số hạng bằng khóa thực hiện đếm hoặc dãy đã được xét hết và không co giá trị nào bằng khóa. Trong trường hợp thứ 2 dãy A không có số hạng nào bằng khóa đếm sẽ bằng khôngMô tảthuật toánbằng cáchliệt kêBước 1: Nhập N và dãy a1 an và số nguyên k ( khóa)Bước 2: i<-1; dem<-0;Bước 3: i=i+1Bước 3: Nếu ai=k thì dem<- dem+1 quay lại bước 3Bước 4 ai<> k quay lại bước 3Bước 5 Nếu i>N thì đưa giá trị dem rồi kết thúcMô tảthuật toánbằng Sơđồ khốiVà minhhọa bằngchươngtrìnhPascalprogram bt; uses crt; var a:array[1 100] of integer; n,i, max,k,m, dem:integer;begin clrscr; write(‘nhap n’); readln(n); for i:=1 to n do begin write(‘a[‘,i,’] =’); readln(a[i]); end; write(‘nhap khoa k’); readln(k); for i:=1 to n do if a[ i ]=k then dem:=dem+1; write(‘ co ‘,dem, ‘so’) ; readln; end.Ví dụ K=2 và N=10 Mô phỏngtheo ví dụA 5 7 2 4 2 9 8 9 6 5i 1 2 3 4 5 6 7 8 9 10dem 0 0 1 1 2 2 2 2 2 2Dem=2Thuật toán tính tổng các số thoả mãn điều kiện Xác định Input:Số n và dãy a1 an và số nguyên k bài toán Output: Tổng các số có giá trị lớn ( nhỏ ) hơn k Ý tưởngTìm kiếm tuần tự được thực hiện một cách tự nhiên. Lần lượt từ số hạng thứ nhất, ta so sánh giá trị số hạng đang xét với khóa cho đến khi hoặc gặp một số hạng bằng khóa thực hiện tính tổng hoặc dãy đã được xét hết và không co giá trị nào bằng khóa. Trong trường hợp thứ 2 dãy A không có số hạng nào bằng khóa đếm sẽ bằng khôngMô tảthuật toánbằng cáchliệt kêBước 1: Nhập N và dãy a1 an và số nguyên k ( khóa)Bước 2: i<-1; s<-0;Bước 3: i=i+1Bước 3: Nếu ai>=k thì S<-S+a[i] quay lại bước 3Bước 4 ai< k quay lại bước 3Bước 5 Nếu i>N thì đưa giá trị S rồi kết thúcMô tảthuật toánbằng Sơđồ khốiVà minhhọa bằngchươngtrìnhPascalprogram bt; uses crt; var a:array[1 100] of integer; n,i, max,k,m, dem:integer;begin clrscr; write(‘nhap n’); readln(n); for i:=1 to n do begin write(‘a[‘,i,’] =’); readln(a[i]); end; write(‘nhap khoa k’); readln(k); for i:=1 to n do if a[ i ]>=k then S:=S+ a[i]; write(‘ tong la’, s) ; readln; end.Ví dụ K>=2 và N=10 Mô phỏngtheo ví dụA 5 7 1 0 3 0 8 0 0 1i 1 2 3 4 5 6 7 8 9 10S 5 12 12 12 15 15 23 23 23 23S=23

Source: https://vh2.com.vn
Category : Tin Học