Bài 11. Kiểu mảng
Chia sẻ bởi Phung Thi Nguyet |
Ngày 10/05/2019 |
49
Chia sẻ tài liệu: Bài 11. Kiểu mảng thuộc Tin học 11
Nội dung tài liệu:
Kiểm tra bài cũ
Câu 1. Nêu khái niệm mảng một chiều và cách khai báo mảng một chiều bằng hai cách
Câu 2. Cho một dãy số nguyên gồm 20 số. Viết khai báo dãy số trên bằng hai cách
Đáp án
Câu 1.
Mảng một chiều là một dãy hữu hạn các phần tử có cùng một kiểu.
Khai báo
Cách 1.
Var : Array[kiểu chỉ số] of ;
Cách 2 :
Type = Array [] of ;
Var : ;
Câu 2.
Khai báo
Cách 1.
Var a : Array[1..20] of integer ;
Cách 2 :
Type songuyen = Array [1..20] of integer ;
Var a : songuyen ;
mảng một chiều (tiếp)
Giáo án điện tử tin học lớp 11
GV Phùng Thị Nguyệt
Trường THPT Trưng Vương
Bài 1. Tìm phần tử lớn nhất của dãy số nguyên (với n ? 250 và A[i] ? 500), nếu dãy có nhiều phần tử cùng giá trị thì đưa ra chỉ số của phần tử lớn nhất đầu tiên.
Hãy xác định Input, Output và nêu thuật toán tìm Max?
* INPUT: Nhập số nguyên dương n và dãy n số nguyên dương a1,a2,...,an.
* OUTPUT: Chỉ số và giá trị của phần tử lớn nhất trong dãy.
Quả này lớn nhất
Quả này mới lớn nhất
ồ! Quả này lớn hơn
Tìm ra quả lớn nhất rồi!
thuật toán tìm max
1. Nhập n và dãy a1,...,an;
Write(‘ Nhap vao so luong phan tu:’);
Readln(n);
For i:=1 to n do
begin
write(‘ Phan tu thu ’ ,i, ’ = ’);
readln(a[i])
end;
2. Max ? a1 ; i ? 1;
Max:=a[1]; csmax:=1;
For i :=2 to n do
IF a[i]>max then
begin
max:=a[i];
csmax:=i;
end;
3. Nếu i>N đưa ra MAX và chỉ số i => Kết thúc;
4. Nếu a[i]>max thì max?a[i],
i ? i+1 => quay lại bước 3.
thuật toán
thể hiện bằng pascal
Program Tim_Max;
Uses crt;
Type dayso = Array[1..250] of integer;
Var
A : dayso ;
i,n,max,csmax : integer;
BEGIN
Clrscr;
write(` Nhap vao so phan tu cua day so : `) ;
readln(n) ;
For i := 1 to n do
Begin
write(` Phan tu thu `,i,` = `) ;
readln(A[i]) ;
End;
Max := A[1[ ; csmax :=1 ;
For i := 1 to n do
If (A[i]>max) Then
begin
max := a[i];
csmax=i;
end;
Writeln(` Gia tri cua phan tu Max : `,Max) ;
Writeln(` Chi so cua phan tu Max : `, csmax) ;
Readln ;
END.
Nhap vao so phan tu cua day so :
7
Phan tu thu 1 =
15
20
16
25
18
12
19
Gia tri cua phan tu Max : 25
Chi so cua phan tu Max : 4
Chương trình chạy và cho kết quả như sau:
Phan tu thu 2 =
Phan tu thu 3 =
Phan tu thu 4 =
Phan tu thu 5 =
Phan tu thu 6 =
Phan tu thu 7 =
Bài 2. Nhập vào một dãy số nguyên, Tớnh t?ng cỏc s? chia h?t cho 5.
* INPUT: Nhập số nguyên dương n và dãy n số nguyên dương a1,a2,...,an.
* OUTPUT: T?ng c?a cỏc s? chia h?t cho 5
1. Nhập n và dãy a1,...,an;
Write(‘ Nhap vao so luong phan tu:’);
Readln(n);
For i:=1 to n do
begin
write(‘ Phan tu thu ’ ,i, ’ = ’);
readln(a[i])
end;
2. S ? 0, i ? 1;
S:=0;
For i :=1 to n do
IF a[i] mod 5 =0 then s:= s+ a[i];
3. Nếu i>N đưa ra t?ng S => Kết thúc;
4. Nếu a[i] mod 5 = 0 thì
S? S+ a[i],
i ? i+1 => quay lại bước 3.
thuật toán
thể hiện bằng pascal
Khai báo mảng 1 chiều
Nhập mảng 1 chiều
Tính tổng các số chia hết cho 5
In kết quả
PROGRAM tinhtong;
Uses crt;
Type dayso = Array[1..250] of integer;
Var
i, , n, s : integer;
A : dayso;
BEGIN
Clrscr;
write(‘ Nhap vao so phan tu cua day so : ’);
readln(n);
For i := 1 to n do
Begin
write(‘ Phan tu thu ‘,i,’ = ‘);
readln(A[i]);
end;
s:=0;
For i:=1 to n do
if a[i] mod 5 = 0 then s:=s+a[i];
Writeln(‘ Tong s là ’, s:8);
Readln;
END.
Chưư ơng trình pascal
cungr coos
Cảm ơn sự theo dõi của thầy cô và các em
Câu 1. Nêu khái niệm mảng một chiều và cách khai báo mảng một chiều bằng hai cách
Câu 2. Cho một dãy số nguyên gồm 20 số. Viết khai báo dãy số trên bằng hai cách
Đáp án
Câu 1.
Mảng một chiều là một dãy hữu hạn các phần tử có cùng một kiểu.
Khai báo
Cách 1.
Var
Cách 2 :
Type
Var
Câu 2.
Khai báo
Cách 1.
Var a : Array[1..20] of integer ;
Cách 2 :
Type songuyen = Array [1..20] of integer ;
Var a : songuyen ;
mảng một chiều (tiếp)
Giáo án điện tử tin học lớp 11
GV Phùng Thị Nguyệt
Trường THPT Trưng Vương
Bài 1. Tìm phần tử lớn nhất của dãy số nguyên (với n ? 250 và A[i] ? 500), nếu dãy có nhiều phần tử cùng giá trị thì đưa ra chỉ số của phần tử lớn nhất đầu tiên.
Hãy xác định Input, Output và nêu thuật toán tìm Max?
* INPUT: Nhập số nguyên dương n và dãy n số nguyên dương a1,a2,...,an.
* OUTPUT: Chỉ số và giá trị của phần tử lớn nhất trong dãy.
Quả này lớn nhất
Quả này mới lớn nhất
ồ! Quả này lớn hơn
Tìm ra quả lớn nhất rồi!
thuật toán tìm max
1. Nhập n và dãy a1,...,an;
Write(‘ Nhap vao so luong phan tu:’);
Readln(n);
For i:=1 to n do
begin
write(‘ Phan tu thu ’ ,i, ’ = ’);
readln(a[i])
end;
2. Max ? a1 ; i ? 1;
Max:=a[1]; csmax:=1;
For i :=2 to n do
IF a[i]>max then
begin
max:=a[i];
csmax:=i;
end;
3. Nếu i>N đưa ra MAX và chỉ số i => Kết thúc;
4. Nếu a[i]>max thì max?a[i],
i ? i+1 => quay lại bước 3.
thuật toán
thể hiện bằng pascal
Program Tim_Max;
Uses crt;
Type dayso = Array[1..250] of integer;
Var
A : dayso ;
i,n,max,csmax : integer;
BEGIN
Clrscr;
write(` Nhap vao so phan tu cua day so : `) ;
readln(n) ;
For i := 1 to n do
Begin
write(` Phan tu thu `,i,` = `) ;
readln(A[i]) ;
End;
Max := A[1[ ; csmax :=1 ;
For i := 1 to n do
If (A[i]>max) Then
begin
max := a[i];
csmax=i;
end;
Writeln(` Gia tri cua phan tu Max : `,Max) ;
Writeln(` Chi so cua phan tu Max : `, csmax) ;
Readln ;
END.
Nhap vao so phan tu cua day so :
7
Phan tu thu 1 =
15
20
16
25
18
12
19
Gia tri cua phan tu Max : 25
Chi so cua phan tu Max : 4
Chương trình chạy và cho kết quả như sau:
Phan tu thu 2 =
Phan tu thu 3 =
Phan tu thu 4 =
Phan tu thu 5 =
Phan tu thu 6 =
Phan tu thu 7 =
Bài 2. Nhập vào một dãy số nguyên, Tớnh t?ng cỏc s? chia h?t cho 5.
* INPUT: Nhập số nguyên dương n và dãy n số nguyên dương a1,a2,...,an.
* OUTPUT: T?ng c?a cỏc s? chia h?t cho 5
1. Nhập n và dãy a1,...,an;
Write(‘ Nhap vao so luong phan tu:’);
Readln(n);
For i:=1 to n do
begin
write(‘ Phan tu thu ’ ,i, ’ = ’);
readln(a[i])
end;
2. S ? 0, i ? 1;
S:=0;
For i :=1 to n do
IF a[i] mod 5 =0 then s:= s+ a[i];
3. Nếu i>N đưa ra t?ng S => Kết thúc;
4. Nếu a[i] mod 5 = 0 thì
S? S+ a[i],
i ? i+1 => quay lại bước 3.
thuật toán
thể hiện bằng pascal
Khai báo mảng 1 chiều
Nhập mảng 1 chiều
Tính tổng các số chia hết cho 5
In kết quả
PROGRAM tinhtong;
Uses crt;
Type dayso = Array[1..250] of integer;
Var
i, , n, s : integer;
A : dayso;
BEGIN
Clrscr;
write(‘ Nhap vao so phan tu cua day so : ’);
readln(n);
For i := 1 to n do
Begin
write(‘ Phan tu thu ‘,i,’ = ‘);
readln(A[i]);
end;
s:=0;
For i:=1 to n do
if a[i] mod 5 = 0 then s:=s+a[i];
Writeln(‘ Tong s là ’, s:8);
Readln;
END.
Chưư ơng trình pascal
cungr coos
Cảm ơn sự theo dõi của thầy cô và các em
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Phung Thi Nguyet
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)