Tóm tắt chương IV Tin học tập lớp 11. Giải câu 1 đến câu 11 trang 79, 80 . Nguyên nhân mảng là kiểu tài liệu có cấu trúc…

Câu 1: Tại sao mảng là kiểu dữ liệu có cấu trúc?

Mảng là kiểu dữ liệu có cấu trúc chính vì mảng (một chiều, hai phía hay nhiều chiều) là dạng hình có cấu tạo được kể tới sớm nhất trong các ngôn ngữ lập trình. Nó được xây dừng từ phần đa kiểu dữ liệu dã tất cả theo nguyên tắc khuôn dạng do ngôn ngữ lập trình cung cấp. Nó được dùng để làm chỉ định một nhóm đối tượng cùng một tính chất nào đó. Chẳng hạn, vectơ là một trong nhóm các số cơ mà mỗi số ta rất có thể xác định chỉ cần biết chỉ số. Như vậy, nhằm khai báo giao diện mảng buộc phải chỉ ra kiểu dữ liệu chung của các bộ phận và thứ hạng chỉ số.

Bạn đang xem: Tại sao phải khai báo kích thước của mảng

Chúng ta đề nghị khai báo size cùa mảng chính vì để giải pháp đánh số các phần tử của nó.

Câu 2: Tại sao yêu cầu khai báo size của mảng?

Các phần tử của mảng hoàn toàn có thể có đông đảo kiểu sau đây: real, boolean, integer, longint

Câu 3: Các bộ phận của mảng hoàn toàn có thể có đều kiểu gì?

Tham chiếu đến bộ phận của mảng một chiều được xác định bởi thương hiệu mảng cùng rất chỉ số, được viết trong cặp ngoặc < cùng > (ví dụ nhietdo<20J). Còn tham chiếu đến phần tử của mảng hai chiều được xác định bởi tên mảng cùng rất hai chỉ số được ngăn cách bởi vết phẩy và viết trong cặp ngoặc < và > (ví dụ Arrlnt<5, 9J).

Câu 4: Tham chiếu đến phần tử của mảng bằng phương pháp nào?

 Mảng có các kiểu như biến đổi : integer.Real.char.String.byte…

– Tham chiếu đến phần tử của mạng có 2 phong cách :** với mảng 1 chiều:– cách tham chiếu cho mảng: A với i là chỉ số phân tử trong mảng.vd: Vẫn xét mảng 10 trăng tròn 30 5 6 7A<1>=10; A<2>=20; A<3>=30; A<4>=50; A<5>=6; A<7>=7

– biện pháp khai báo mảng: tất cả 2 giải pháp khai báo:

Khai báo trực tiếp: hay thì bí quyết khai báo trực tiếp được dùng nhiều hơn nữa vì nó ngắn gọn.

var :array of ;

ví dụ:a:array<1..100> of integer;b,c:array<1..250> of integer;

Khai báo gián tiếp:

type =array of ;var :;

vd:type mang=array<1..100> of integer;var a,b,c:mang;

**Với mảng 2 chiều :– Tham chiếu: bởi vì mảng 2 chiều là bảng đề nghị sẽ nên chỉ số hàng và chỉ số cột: A cùng với i là chỉ số hàng, j là chỉ số cột.

– Khai báo: tựa như như mảng 1 chiều nhưng thêm chỉ số cột.

Câu 5: Viết lịch trình nhập từ keyboard số nguyên dương N (N ≤100) cùng dãy A có N số nguyên A1…AN có giá bán trị tuyệt đối lớn hơn 1000. Hãy cho biết dãy A gồm phải là một trong những cấp số cộng hay là không và thông báo hiệu quả ra mành hình.

Trả lời

Để lập công tác nhập từ keyboard số nguyên dương N (NN có mức giá trị hoàn hảo nhất không lớn hơn 100, thì ta phải phải triển khai việc khám nghiệm xem số N nhập vào (số thành phần của dãy) có thỏa mãn yêu mong của đầu bài hay không nghĩa là 0N của mảng cũng yêu cầu là đầy đủ số nguyên và có mức giá trị tuyệt vời và hoàn hảo nhất không to hơn 100 (A >= -100 và A=1000) or (N0) and (N100) or (A-1000) and (A0 then writeln(‘A khong la cap so cong’) else writeln(’A la cap so cong’);

readln,

end.

Khi chạy chương trình, ví như nhập số phần tử cùa hàng N= 5 với các bộ phận của hàng theo vật dụng tự là 2,4,6, 8,10 thì chương trình đưa ra thông tin “A la cap so cong”(Hình 59).

*

Nhưng khi nhập N không thỏa mãn điều khiếu nại đầu bài, chẳng hạn N= -5 thì lịch trình đưa ra thông báo “Mời nhập lại!”. Khi đó, ta yêu cầu vào lại N, chẳng hạn, N= 5 và nhập tiếp các phần tử của dãy, chẳng hạn: 1, 3, 5, 7, 9 thì hiệu quả của chương trình: “A la cap so cong’’ (Hình 60).

*

Còn trong trường đúng theo các phần tử nhập vào của dãy không thỏa mãn điều kiện A -1000: thì ta cần nhập lại các thành phần của dãy cho tới khi lịch trình đưa ra thông báo A là cung cấp số cùng hay không?

Chẳng hạn, ta nhập vào hàng N= 7 phần từ với mức giá trị các thành phần lần lượt như sau:

2, 5, 7 8, 9, 4, 7 (ở phần tử thứ tư lúc đầu nhập vào số-1500 thì chương trình yêu ước nhập lại và đã nhập vào số 8) thì công tác dưa ra thông báo: ” A khong la cap so cong* (Hình 62).

*

Bài 6: Viết lịch trình nhập từ bàn phím số nguyên dương N (N ≤100) và dãy A gồm N số nguyên A1, A2 …AN có giá trị hoàn hảo không lớn hơn 1000. Hãy giới thiệu những thông tin sau:

a) số lượng số chẵn và con số số lẻ

b) con số số nguyên tố trong dãy

Trả lời

Đối cùng với với việc này thì phần kiểm tra số nguyên dương N(N2 …AN có giá trị hoàn hảo không lớn hơn 1000 y như bài tập 5 đã nêu ờ trên. Họ chi cần giải quyết thêm 2 vụ việc nữa, chính là đếm con số số chẵn, số lẻ và con số số nhân tố trong dãy.

Xem thêm: Giải Bài Tập Thực Hành 1 Tin Học 11, Bài Tập Và Thực Hành 1

Chưntg trình:

progran baitap6_chuong4;

uses crt;

var

array<1..100> of integer;

if: boolean;

N, i„ l: integer; so_nt, so_chan: integer;

begin

for i := -1000 lớn 1000 bởi vì if i>0 then NT:= false;

so_chan:=0; so_nt:=0;

{Nhap vao)

repeat

write(‘So phan tu cua day A (N0) and

(N1000) or (a-1000) & (a1 then

begin

u: = 2 ;

while ((u0))) bởi u: = u + 1; if u>sqrt(A) then so_nt:= so_nt + 1;

end,

end;

In ra man hinh

writeln(‘So luong so chan:’,so_chan);

writeln(‘So luong so le:’,N – so_chan);

writeln(’So luong so nguyen tro:’, so_nt);

readln

End.

Khi chạy chương trình, ta thứu tự nhập các thành phần của hàng A:

 Với N = 3 và các phần tử được nhập vào theo thứ tự:

A<1>=5

A<2>=7

A<3>=900

thì chương trình chỉ dẫn thông báo:

So luong so chan: 1

So luong so le: 2

So luong so nguyen to: 2

– với 5 và các phần tử được nhập vào theo thiết bị tự:

A<1>=12

A<2>=3 A<3>=5

A<4>10 A <5> =11

thì chương trinh giới thiệu thông báo:

So luong so chan: 2

So luong so le: 3

So luong so nguyen to: 3

Kết quả của chương trình như hình 63 sau đây:

*

Trong trường hòa hợp số phần tử nhập vào và quý hiếm các bộ phận của hàng A không thỏa mãn điều khiếu nại thì chương trình sẽ sở hữu thông báo mời nhập lại. Chẳng hạn, trong các trường hợp sau đây: