*Bài tập Pascal về kiểu mảng:
( N<= 12)
Bài 1: Tính trung bình cộng các phần tử là ước của X với X được nhập từ bàn phím.
Bài 2: Hãy sắp xếp nửa mảng đầu tiên tăng dần, nửa mảng cuối giảm dần ( Với N chẵn, N lẻ phần tử giữa mảng làm trục đối xứng).
Bài 3: Thay tất cả các phần tử có giá trị âm bằng giá trị M với M được nhập từ bàn phím.
Bài 4: Hãy xét xem trong mảng các cặp số nào trong các số đó có quan hệ chia hết hay không? Nếu có in các cặp số đó ra màn hình.
Bài 5: Hãy xét xem trong mảng các cặp số nào trong các số đó mà số này bằng bình phương số kia hay không? Nếu có in các cặp số đó ra màn hình.
Bài 6: Hãy xét xem trong mảng các cặp ố nào trong các số đó màng tổng bình phương của chúng bằng 100 hay không? Nếu có in các cặp số đó ra màn hình.
Bài 7: Kiểm tra xem tổng các phần tử ở vị trí lẻ có bằng tổng các phần tử ở trí chẵn hay không?
Bài 8: Kiểm tra xem các phần tử ở ví trí chẵn có được sắp xếp tăng dần hay không?
Bài 9: Sắp xếp các phần tử lẻ về đầu mảng và các phần tử chẵn về cuối mảng , in mảng sau khi thay đổi.
Bài 1:
uses crt;
var x,i,t,dem:longint;
tbc:real;
begin
clrscr;
write('nhap x=');readln(x);
t:=0;
dem:=0;
for i:=1 to x do
if x mod i=0 then
begin
t:=t+i;
inc(dem);
end;
tbc:=t/dem;
writeln('trung binh cong cac phan tu la uoc cua ',x,' la: ',tbc:4:2);
readln;
end.
Bài 3:
uses crt;
var a:array[1..100]of integer;
m,n,i:integer;
begin
clrscr;
write('n='); readln(n);
for i:=1 to n do
begin
write('a[',i,']='); readln(a[i]);
end;
{----------------------------------------------------}
write('m='); readln(m);
for i:=1 to n do
if a[i]<0 then a[i]:=m;
for i:=1 to n do
write(a[i]:4);
readln;
end.
Bài 4:
uses crt;
var a:array[1..100]of integer;
n,i,j:integer;
begin
clrscr;
write('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:=i+1 to n do
if (a[i] mod a[j]=0) then writeln(a[i],' ',a[j]);
if a[j] mod a[i]=0 then writeln(a[j],' ',a[i]);
readln;
end.
Bài 5:
uses crt;
var a:array[1..100]of integer;
n,i,j:integer;
begin
clrscr;
write('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:=i+1 to n do
if a[i]=sqr(a[j]) then writeln(a[i],' ',a[j]);
if a[j]=sqr(a[i]) then writeln(a[j],' ',a[i]);
readln;
end.
Bài 6:
uses crt;
var a:array[1..100]of integer;
n,i,j:integer;
begin
clrscr;
write('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:=i+1 to n do
if sqr(a[i])+sqr(a[j])=100 then writeln(a[i],' ',a[j]);
if sqr(a[j])+sqr(a[i])=100 then writeln(a[j],' ',a[i]);
readln;
end.
Bài 7:
uses crt;
var a:array[1..100]of integer;
n,i,t1,t2:integer;
begin
clrscr;
write('n='); readln(n);
for i:=1 to n do
begin
write('a[',i,']='); readln(a[i]);
end;
{----------------------------------------------------}
t1:=0;
t2:=0;
for i:=1to n do
begin
if i mod 2=0 then t1:=t1+a[i]
else t2:=t2+a[i];
end;
if t1=t2 then writeln('thoa man')
else writeln('khong thoa man');
readln;
end.
Bài 8:
uses crt;
var a,b:array[1..100]of integer;
n,i,kt,j,dem:integer;
begin
clrscr;
write('n='); readln(n);
for i:=1 to n do
begin
write('a[',i,']='); readln(a[i]);
end;
{----------------------------------------------------}
dem:=0;
for i:=1 to n do
if i mod 2=0 then
begin
dem:=dem+1;
b[dem]:=a[i];
end;
kt:=0;
for j:=1 to dem-1 do
if a[j]>a[j+1] then kt:=1;
if kt=0 then writeln('cac phan tu o vi tri chan cua day tang dan')
else writeln('cac phan tu o vi tri chan cua day khong tang dan');
readln;
end.
Bài 9:
uses crt;
var a,b,c:array[1..100]of integer;
n,i,j,dem,dem1:integer;
begin
clrscr;
write('n='); readln(n);
for i:=1 to n do
begin
write('a[',i,']='); readln(a[i]);
end;
{----------------------------------------------------}
for i:=1 to n do
begin
if i mod 2=1 then
begin
dem:=dem+1;
b[dem]:=a[i];
end
else begin
dem1:=dem1+1;
c[dem1]:=a[i];
end;
end;
for i:=1 to dem do
write(b[i]:4);
for j:=1 to dem1 do
write(c[j]:4);
readln;
end.