K
Khách

Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.

Nhược điểm của biến mảng là:

  • Kích thước của mảng phải là cố định: Trong cấp phát mảng tĩnh, mảng cần được khai báo với kích thước xác định trước khi chạy chương trình. (vùng nhớ cho mảng được cấp phát khi biên dịch). Trong cấp phát động, vùng nhớ được cấp phát khi chạy chương trình. Như các bạn đã biết, vùng nhớ giành cho mỗi chương trình thường không dự đoán được trước. Nếu khai báo mảng với kích thước lớn, không sử dụng hết sẽ gây lãng phí bộ nhớ, ngược lại nếu kích thước vùng nhớ không đủ dùng, chúng ta không thể mở rộng vùng nhớ thêm được, dẫn đến buffer overrun ( tràn vùng nhớ).
  • Các byte vùng nhớ cấp phát mảng được sắp xếp liên tục: trong trường hợp vùng nhớ cho chương trình đang bị phân mảnh, chương trình sẽ báo lỗi khi chúng ta khai báo hoặc cấp phát cho mảng với kích thước lớn vì lý do: không đủ vùng nhớ liên tục cho mảng ( mặc dù tổng dung lượng vùng nhớ phân mảnh là đủ).
  • Việc chèn và xóa phần tử của mảng mất nhiều thời gian: vì vùng nhớ cấp phát cho mảng được sắp xếp liên tục nên việc chèn một phần tử mới vào hoặc xóa phần tử trong mảng trở lên khó khăn. Ví dụ: cho mảng A[100], chúng ta muốn chèn thêm phần tử mới vào vị trí i, tất cả các phần tử thứ i trở đi phải dịch sang vị trí kế tiếp để chèn giá trị vào vị trí thứ i. Việc xóa phần tử trong mảng cũng tương tự như vậy, dịch tất cả các phần tử từ vị trí thứ i+1 sang vị trí liền trước nó.
27 tháng 12 2020

Câu 1: 

am; a; at; ai; aj

Câu 2: 

Mỗi chữ dùng nhiều nhất một lần có thể tạo ra vô số cái tên trong Pascal

6 tháng 5 2019

Program hoc24hoc24;

Uses crt;

Var i: Integer;

A: array [1..10] of Integer;

BEGIN

Clrscr;

For i:=1 to 10 do

Begin write ('A[',i,']='); readln (A[i]); end;

For i:= 1 to 10 do write (A[i]:3);

Readln

End.

6 tháng 5 2019

Bài 9. Làm việc với dãy số

uses crt;

var i,n,t:integer;

begin

clrscr;

write('Nhap n='); readln(n);

t:=0;

for i:=1 to n do 

t:=t+i;

writeln(t);

readln;

end.

15 tháng 5 2021

n stn hay n stn đầu tiên vậy bạn ?

14 tháng 5 2021

Bài 1:program sothuc;

uses crt;

var a:array[1..10] of real;s,i,j:real;

begin

s:=0;

for i:=1 to 10 do begin writeln('A[',i,']=');readln(a[i]); end;

for i:=1 to 10 do if a[i]<0 then

for j:=1 to 10 do

begin a[j]:=sqr(a[i]); s:=s+a[j]; end;

writeln('tong binh phuong cac so am la: ',s:2:2); readln;

end. (Khi nào mình kiểm tra chạy lại trên phần mềm rồi sửa lại nếu sai nhé)

Bài 2: 

program soduong;

uses crt;

var a:array[1..100] of integer;s,i,n:integer;

begin

clrscr;

writeln('nhap do dai cua day');readln(n);

for i:=1 to n do begin

writeln('a[',i,']=');readln(a[i]);

if a[i] mod 2 = 0 then s:=s+a[i] end;

writeln('tong so duong trong day la',s:2:0);readln

end.

Bài 3: các số dương mà là số lẻ là sao thế bạn????

Bài 7. Truy vấn tổng                                                Tên file: QSUM.CPPCho một dãy số nguyên gồm N phần tử nguyên A1, A2, …, AN.Yêu cầu: Hãy trả lời Q truy vấn có dạng:- i j: tính tổng các phần tử liên tiếp thuộc đoạn từ i đến j.INPUT: QSUM.INPØ Dòng đầu tiên chứa 2 số nguyên dương N và Q (1 ≤ N, Q ≤ 105)Ø Dòng thứ 2 chứa N số nguyên A1, A2, …, AN...
Đọc tiếp
Bài 7. Truy vấn tổng                                                Tên file: QSUM.CPP

Cho một dãy số nguyên gồm N phần tử nguyên A1, A2, …, AN.

Yêu cầu: Hãy trả lời Q truy vấn có dạng:

- i j: tính tổng các phần tử liên tiếp thuộc đoạn từ i đến j.

INPUT: QSUM.INP

Ø Dòng đầu tiên chứa 2 số nguyên dương N và Q (1 ≤ N, Q ≤ 105)

Ø Dòng thứ 2 chứa N số nguyên A1, A2, …, AN (|Ai| ≤ 103)

Ø Q dòng tiếp theo mỗi dòng chứa hai số nguyên i, j (1 ≤ i ≤ j ≤ N) thể hiện một câu hỏi truy vấn.

OUTPUT: QSUM.OUT

Ø Chứa Q dòng, mỗi dòng là câu trả lời truy vấn tương ứng trong INPUT.

Ví dụ:

QSUM.INP

QSUM.OUT

Giải thích ví dụ

5 3

1 3 -4 5 -2

1 4

2 5

3 3

5

2

-4

Dãy có 5 phần tử và 3 truy vấn

- Truy vấn 1: tính tổng các phần từ thứ 1 đến thứ 4 là:

 1 + 3 + (-4) + 5 = 5

- Tương tự như vậy ta được kết quả của 2 truy vấn còn lại là 2 và -4

* Ghi chú:

          - Có 80% số test với dữ liệu cho là: 1 ≤ N, Q ≤ 5000.

 

2
D
datcoder
CTVVIP
3 tháng 1 2024

Program HOC24;

var i,n,q,j,k,l: integer;

t: longint;

a: array[1..5000] of integer;

f1,f2: text;

const fi='QSUM.INP' ;

fo='QSUM.OUT' ;

begin

assign(f1,fi);

assign(f2,fo);

reset(f1);

rewrite(f2);

readln(f1,n,q);

for i:=1 to n do read(f1,a[i]);

readln(f1);

for k:=1 to q do

begin

readln(f1,i,j);

t:=0;

for l:=i to j do t:=t+a[l];

writeln(f2,t);

end;

close(f1);

close(f2);

end.

2 tháng 1 2024

giúp  mình với mmik cần gấp

 

19 tháng 4 2018

program bai1;

var a:array[1..50] of longint;

i,n,s:longint;

begin

repeat

write('N= ');readln(n);

until n<=20;

s:=0;

for i:=1 to n do

begin

write('A[',i,']= ');

readln(a[i]);

s:=s+a[i];

end;

write('S= ',s);

readln

end.

19 tháng 4 2018

Program Tinhtong;

Uses Crt;

Var n,i,S: integer;

A:array [1..200] of integer;

Begin

writeln('Nhap cac phan tu cua dau:')

For i:=1 to 20 do

Begin

write('A[,'i',]=');Readln(A[i]);

end;

S:=0;

For i:=1 to 20 do S:=S+A[i];

Write('Tong la',S);

Readln;

end.

25 tháng 4 2021

uses crt;

var a:array[1..100]of integer;

i,n,t:integer;

begin

clrscr;

write('Nhap n='); readln(n);

for i:=1 to n do

begin

write('A[',i,']='); readln(a[i]);

end;

t:=1;

for i:=1 to n do 

  t:=t*a[i];

writeln(t);

readln;

end.