... D[0][m -1] cú a ch l xxxx+2(m -1) (&D[0][m -1] = = xxxx +2(m -1) ) D [1] cú a ch l xxxx +2m D [1] [0] cú a ch l xxxx +2m (&D[0][0] = =xxxx+2m) D [1] [1] cú a ch l xxxx + 2m +2 (&D[0] [1] = =xxxx + 2m+2) D [1] [m -1] ... ][2] = { {1, 2},{3},{4,5}}; thỡ l mng dũng, ct cỏc phn t ca a nh sau: b[0][0] =1, b[0] [1] =2, b [1] [0]=3,b [1] [1] = 0, b[2][0]=4,b[2] [1] =5; int c[ ][2] = {1, 2,3,4,5}; thỡ s dũng ca c l mng 5/2 +1 =3 dũng, ... *q; gi s p tr ti phn t cú a ch 18 0, q tr ti phn t cú a ch 16 0 thỡ (p-q) = = 10 ; float *r1, *r2; gi s r1 tr ti phn t cú a ch 12 0, r2 tr ti phn t cú a ch 10 0 thỡ (r1-r2) = = 5; V.4.2 - T chc vựng...
... NỘI DUNG CONTRỎ C MẢNGCHIỀUMẢNGCHIỀUCONTRỎ Hình dung sâu biến nhớ máy tính… ĐOÁN??? CONTRỎ … 306 b 305 char b; 304 int a; 303 a=5; 302 a++; 3 01 a 300 299 byte … CONTRỎ int a=5; int ... 35 37 42 50 MẢNGCHIỀU Bài tập mảng chiều: • • • • • Nhập vào mảng số nguyên Nhập mảng có n phần tử Sắp xếp mảng tăng dần Xuất mảng xếp mảng hình Nửa sau giảm dần Kiểm tra xem mảng có đối xứng ... int * p; p=&a; 10 4 a=5 10 0 In p ? In &a ? In &p ? 23 In *p ? … p =10 0 CONTRỎ Tại cần trỏ? Cấp phát vùng nhớ chương trình chạy Trỏ tới vùng nhớ CONTRỎ Cấp phát nhớ cho trỏ: • • • int*...
... qua trỏtrỏ tới trỏ Điều có nghĩa ta thay mảng nhiều chiềutrỏtrỏ tới trỏ Nói cách khác, ta khử khai báo mảng nhiều chiều thông qua trỏtrỏ tới trỏ Ví dụ sau minh họa cho việc thay mảng nhiều chiều ... *A[N] thành mảng gồm N trỏ 2.7 Contrỏtrỏ tới trỏ Nh đợc ví dụ 2 .13 Một mảng đợc coi nh trỏ, khai báo : 70 float A [10 ]; hoàn toàn đợc thay việc sử dụng trỏ với phép cấp phát nhớ cho trỏ: float ... báo mảng nhiều chiều : Data_type tên_biến[số _chiều _1] [số _chiều_ 2] [số _chiều_ n] int A[3][3]; khai báo mảng hai chiều gồm phần tử nguyên đợc lu trữ liên tục từ A[0][0] , A[0] [1] , A[0][2] , A [1] [0]...
... For i : =1 to n IF A[i]>TB then dem:=dem +1; i A[i] Dem=0 17 20 18 21 19 17 19 +1+1+1+1 TB = 18 .7 Program vd1; Uses crt; Var Khai báo mảngchiều A: Array [1 366] of integer; i,n,dem: integer; S,TB ... array [1 100] of real; Các thao tác xử lí mảngchiều a Nhập mảngchiều Ví dụ: Nhập nhiệt độ n ngày A 17 Các bước 20 18 19 21 17 19 n với n = Nhập số phần tử mảng (n) Nhập vào giá trị phần tử mảng ... tử mảng chia hết cho S :=0; For i : =1 to n IF A[i] mod = then S:=S+A[i]; 15 20 16 25 18 12 19 S = 45 Thông thường, thao tác xử lí mảngchiều dùng câu lệnh FOR DO Hãy nhớ! 15 20 19 25 18 12 16 ...
... Tìm hiểu cách sử dụng lệnh kiểu liệu mảngchiều qua chương trình có sẵn • • • • • • • • • • Program sum1; Uses crt; Const nmax =10 0; Type Myarray=array [1 nmax] of integer; Var A:Myarray; s,n,k,i:integer; ... đếm số phần tử âm mảng • Posi:=0;neg:=0; • If a[i]>0 then Posi:=Posi +1 • else if a[i]
... Vấn đề 4: Mảngchiều Bài toán số 4 .1: Viết chương trình thao tác mảngchiều với công việc sau: + Nhập xuất mảngchiều + Đếm số lần xuất giá trị mảng + Tìm giá trị lớn mảngchiều nhập vào Hướng ... vị trí k mảng A, N phần tử Xoá phần tử vị trí h mảng A Ví dụ: A : 12 X = 20 , 17 k=3 h=2 Kết chèn: 12 Kết xoá: 20 12 20 5 17 17 Hướng dẫn: Viết thủ tục chèn phần tử X vào vị trí k cho mảng A (có ... (A[i -1] +A[i]); A[i -1] := k; A[i] := k; End; End; Bài toán số 3.4: Kiểm tra mảng có đối xứng hay không? Kiểm tra mảng có tăng dần hay không? Mảng đối xứng mảng có phần tử Ai = AN-i -1 Nếu mảng mảng...
... tìm, hết mảng Tìm kiếm tuyến tính Minh họa tìm x =10 10 Đã tìm thấy Chưa hết 12 41 10 10 32 13 15 3 v mảng trí 10 Minh họa tìm x =25 25 Chưa hết mảng Đã hết mảng 12 41 10 32 13 15 3 10 Giải ... if(i==N) return -1; //tìm hết mảng else return i; //a[i] là phần tử có khoá x } 10 Cải tiến Dùng lính canh giúp giảm bớt phép so sánh Minh họa tìm x =10 10 12 41 10 10 32 13 15 10 10 11 Minh họa ... 19 22 41 46 51 63 71 10 l m m Tìm thấy x vị trí r m 15 Minh họa tìm x = 45 x x x x 14 16 19 22 41 46 51 63 71 10 l m m r l > r: Kết thúc: Không tìm thấy m m 16 Giải thuật Bước 1: left = 1; right...
... trí 1) 10 15 11 i j Đổi chổ trực tiếp – interchange sort Bước 1: Xét phần tử (tại vị trí 1) 10 2 15 12 i j Đổi chổ trực tiếp – interchange sort Bước 1: Xét phần tử (tại vị trí 1) 10 2 15 13 i ... interchange sort Bước 1: Xét phần tử (tại vị trí 1) 10 3 15 i j Đổi chổ trực tiếp – interchange sort Bước 1: Xét phần tử (tại vị trí 1) 10 15 10 i j Đổi chổ trực tiếp – interchange sort Bước 1: Xét phần ... sau tăng dần 10 3 15 Đổi chổ trực tiếp – interchange sort Bước 1: Xét phần tử (tại vị trí 1) 10 3 15 i j Đổi chổ trực tiếp – interchange sort Bước 1: Xét phần tử (tại vị trí 1) 10 3 15 8 i j Đổi...
... lặp j Cuối lặp i 18 1. 2 Mảng hai chiều Khai báo mảngchiều kiểu int gồm 10 dòng, 10 cột: int A [10 ] [10 ]; Khai báo mảngchiều kiểu float gồm 10 dòng, 10 cột: float b [10 ] [10 ]; int A[3][4] ... tận 11 1.1 Khái niệm Mảng int { AmTanCung6(int a[], int n) i = 0; j = -1; while (i < n && j == -1) { if(a[i]
... tài 11 B8 Thường xuyên 11 B7 Thường xuyên 11 B6 không thường xuyên 11 B1 Không áp dụng Giỏi Yếu Kém 37,5% 37,5% 0% 0% 21, 6% 43,2% 35,2% 0% 0% 25% Khá TB 11 ,1% 27,8% 47,2% 13 ,9% 7,6% 20,5% 56,4% 12 ,8% ... sau đúng? a, Type 1chieu=array [1 100] of char; b, Type mang=array (1 100) of char c, Type mang1c=array [1- 100] of char; d, Type mang1c=array [1 100] of char; Câu 10 : Trong khai báo mảng thường ... thuộc nhiều vào học sinh Vậy, thực tế vấn đề nào? Để tìm hiểu ý kiến học sinh xung quanh vấn đề hứng thú học tập môn Tin học, tiến hành điều tra Đối với 40 học sinh lớp 11 B1, 11 B6, 11 B7, 11 B8 học...
... số dương // i vị trí // giá trị dương giá trị } } if (dem == 0) // giá trị dương return -1; for (i = i + 1; i < n; i++) { if((a[i] > 0) && (a[i] < a[min])) { = i; } } return min; } int main() {...