You are on page 1of 15

CÁC BÀI TẬP TIN HỌC THI HKI

1. Xuất ra (Vị trí) Số nguyên tố lớn nhất, lớn nhì, không lớn nhất, không lớn nhì (8 bài)
2. Xuất ra (Vị trí) Số chính phương lớn nhất, lớn nhì, không lớn nhất, không lớn nhì (8 bài).
3. Xuất ra (Vị trí) số đối xứng lớn nhất, lớn nhì, không lớn nhất, không lớn nhì (8 bài).
4. Xuất ra có bao nhiêu (Vị trí) số nguyên tố, không phải số nguyên tố.(4 bài)
5. Xuất ra có bao nhiêu (Vị trí) số chính phương, không phải số chính phương.(4 bài)
6. Xuất ra có bao nhiêu (Vị trí) số lớn nhất, không phải số lớn nhất (4 bài)
7. Xuất ra tổng vị trí số lớn nhất, không phải số lớn nhất, không phải số lớn nhất (2 bài)
8. Xuất ra có bao nhiêu (Vị trí) số lớn nhì, không phải số lớn nhì ( 4 bài)
9. Xuất ra tổng vị trí số lớn nhì, không phải số lớn nhì ( 2 bài)
GIẢI
VI TRÍ SỐ ĐỐI XỨNG LỚN NHÌ
program So_doi_xung_lon_nhi;
var A: Array[1..2000] of integer;
i, n, x, y, max, max2, tong, j, maxdx, maxdx2: word;
begin
randomize;
writeln(' Nhap n');
readln(n); while(n<=0) do
begin
writeln('Nhap lai n');
read(n);
end;
begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
Writeln('Cac so doi xung la');
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) then write(' A[',i,']= ',A[i]);
end;
writeln;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) then maxdx:=A[i];
end;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) and (A[i] > maxdx) then
maxdx:=A[i];
end;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) and (A[i] <> maxdx) then
maxdx2:=A[i];
end;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) and (A[i] <> maxdx) and (A[i] >
maxdx2) then maxdx2:=A[i];
end;
if(maxdx=0) then writeln('KHONG CO SO DX LON NHAT') else
if(maxdx2=0) then writeln('KHONG CO SO DX LON NHI') else
begin
writeln('Vi tri so dx lon nhi la');
for i:=1 to n do
begin
if(A[i]=maxdx2) then write(' ',i,' ');
end;
end;
writeln;
writeln;
end;
readln;
end.

SỐ ĐỐI XỨNG LỚN NHÌ


program so_doi_xung_lon_nhi;
var A: Array[1..2000] of integer;
i, n, x, y, max, max2, tong, j, maxdx, maxdx2 : word;
begin
Randomize;
writeln('Nhap n ');
Readln(n); while (n<=0) do
begin
Writeln ('Nhap lai n ');
Read(n);
end;
Begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
Begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) then maxdx:=A[i];
end;
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) and ( A[i] > maxdx) then
maxdx:=A[i];
end;
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) and ( A[i] <> maxdx) then
maxdx2:=A[i];
end;
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) and ( A[i] <> maxdx) and (A[i] >
maxdx2) then maxdx2:=A[i];
end;
writeln;
writeln;
if(maxdx=0) then writeln('KHONG CO SO DX LON NHAT') else
if(maxdx2=0) then writeln('KHONG CO SO DX LON NHI') else writeln('So
doi xung lon nhi la ',maxdx2);
end;
readln;
end.

SỐ ĐỐI XỨNG LỚN NHẤT


program doi_xung_lon_nhat;
var A: Array[1..2000] of integer;
i, n, x, y, max, max2, tong, j, maxdx : word;
begin
Randomize;
writeln('Nhap n ');
Readln(n); while (n<=0) do
begin
Writeln ('Nhap lai n ');
Read(n);
end;
Begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
Begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
For i:=1 to n do
Begin
maxdx:=0;
if(A[i] mod 10 = A[i] div 100) then maxdx:=A[i];
end;
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) and ( A[i] > maxdx) then
maxdx:=A[i];
end;
writeln;
writeln;
if(maxdx=0) then writeln(' KHONG CO SO DX LON NHAT') else max:=maxdx;
writeln('So doi xung lon nhat la ',max);
end;
readln;
end.

SỐ ĐỐI XỨNG KHÔNG LỚN NHẤT


program vi_tri_so_doi_xung_lon_nhat;
var A: Array[1..2000] of integer;
i, n, x, y, max, max2, tong, j, maxdx : word;
begin
Randomize;
writeln('Nhap n ');
Readln(n); while (n<=0) do
begin
Writeln ('Nhap lai n ');
Read(n);
end;
Begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
Begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) then maxdx:=A[i];
end;
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) and ( A[i] > maxdx) then
maxdx:=A[i];
end;
if(maxdx=0) then writeln(' KHONG CO SO DX LON NHAT') else
begin
Writeln('Cac so doi xung con lai khong lon nhat la');
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) and ( A[i] <> maxdx) then write('
',A[i],' ');
end;
end;
writeln;
writeln;
end;
readln;
end.

VỊ TRÍ SỐ ĐỐI XỨNG LỚN NHẤT


program Vi_tri_so_doi_xung_lon_nhat;
var A: Array[1..2000] of integer;
i, n, x, y, max, max2, tong, j, maxdx, maxdx2: word;
begin
randomize;
writeln(' Nhap n');
readln(n); while(n<=0) do
begin
writeln('Nhap lai n');
read(n);
end;
begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
Writeln('Cac so doi xung la');
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) then write(' A[',i,']= ',A[i]);
end;
writeln;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) then maxdx:=A[i];
end;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) and (A[i] > maxdx) then
maxdx:=A[i];
end;
if(maxdx=0) then writeln('KHONG CO SO DX LON NHAT') else
begin
writeln('Vi tri so dx lon nhat la');
for i:=1 to n do
begin
if(A[i]=maxdx) then write(' ',i,' ');
end;
end;
writeln;
writeln;
end;
readln;
end.

VỊ TRÍ SỐ ĐX KHÔNG LỚN NHẤT ( VỞ NGÀY 22/11/2022)


program vi_tri_so_doi_xung_lon_nhat;
var A: Array[1..2000] of integer;
i, n, x, y, max, max2, tong, j, maxdx : word;
begin
Randomize;
writeln('Nhap n ');
Readln(n); while (n<=0) do
begin
Writeln ('Nhap lai n ');
Read(n);
end;
Begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
Begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) then maxdx:=A[i];
end;
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) and ( A[i] > maxdx) then
maxdx:=A[i];
end;
if(maxdx=0) then writeln(' KHONG CO SO DX LON NHAT') else
begin
Writeln('Vi tri Cac so doi xung con lai khong lon nhat la');
For i:=1 to n do
Begin
if(A[i] mod 10 = A[i] div 100) and ( A[i] <> maxdx)
then write(' ',i,' ');
end;
end;
writeln;
writeln;
end;
readln;
end.
VỊ TRÍ SỐ ĐỐI XỨNG KHÔNG LỚN NHÌ
program So_doi_xung_khong_lon_nhi_vi_tri;
var A: Array[1..2000] of integer;
i, n, x, y, max, max2, tong, j, maxdx, maxdx2: word;
begin
randomize;
writeln(' Nhap n');
readln(n); while(n<=0) do
begin
writeln('Nhap lai n');
read(n);
end;
begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
Writeln('Cac so doi xung la');
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) then write(' A[',i,']= ',A[i]);
end;
writeln;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) then maxdx:=A[i];
end;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) and (A[i] > maxdx) then
maxdx:=A[i];
end;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) and (A[i] <> maxdx) then
maxdx2:=A[i];
end;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) and (A[i] <> maxdx) and (A[i] >
maxdx2) then maxdx2:=A[i];
end;
if(maxdx=0) then writeln('KHONG CO SO DX LON NHAT') else
if(maxdx2=0) then writeln('KHONG CO SO DX LON NHI') else
begin
writeln('Vi tri so dx khong lon nhi la');
for i:=1 to n do
begin
if (A[i] mod 10 = A[i] div 100) and (A[i]<>maxdx2)
then write(' ',i,' ');
end;
end;
writeln;
writeln;
end;
readln;
end.

SỐ ĐX KHÔNG LỚN NHÌ


program So_doi_xung_khong_lon_nhi;
var A: Array[1..2000] of integer;
i, n, x, y, max, max2, tong, j, maxdx, maxdx2: word;
begin
randomize;
writeln(' Nhap n');
readln(n); while(n<=0) do
begin
writeln('Nhap lai n');
read(n);
end;
begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
Writeln('Cac so doi xung la');
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) then write(' A[',i,']= ',A[i]);
end;
writeln;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) then maxdx:=A[i];
end;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) and (A[i] > maxdx) then
maxdx:=A[i];
end;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) and (A[i] <> maxdx) then
maxdx2:=A[i];
end;
for i:=1 to n do
begin
if(A[i] mod 10 = A[i] div 100) and (A[i] <> maxdx) and (A[i] >
maxdx2) then maxdx2:=A[i];
end;
if(maxdx=0) then writeln('KHONG CO SO DX LON NHAT') else
if(maxdx2=0) then writeln('KHONG CO SO DX LON NHI') else
begin
writeln('Vi tri so dx khong lon nhi la');
for i:=1 to n do
begin
if (A[i] mod 10 = A[i] div 100) and (A[i]<>maxdx2)
then write(' ',A[i],' ');
end;
end;
writeln;
writeln;
end;
readln;
end.

SỐ NGUYÊN TỐ LỚN NHẤT


program so_nguyen_to_lon_nhat;
var A: Array[1..100] of integer;
i, n, x, y, max, max2, tong, j: word;
begin
Randomize;
writeln('Nhap n ');
Readln(n); while (n<=0) do
begin
Writeln ('Nhap lai n ');
Read(n);
end;
Begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
Begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
y:=A[i];
end;
end;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
if(y < A[i]) then y:=A[i];
end;
end;
if(y=0) then writeln('KHONG CO SO NGUYEN TO') else
writeln('so ngto lon nhat la ');
for i:=1 to n do
begin
if(y=A[i]) then write(' ',A[i],' ');
end;
writeln;
writeln;
end;
readln;
end.

VỊ TRÍ SỐ NGUYÊN TỐ LỚN NHẤT


program so_nguyen_to_lon_nhat_vi_tri;
var A: Array[1..100] of integer;
i, n, x, y, max, max2, tong, j: word;
begin
Randomize;
writeln('Nhap n ');
Readln(n); while (n<=0) do
begin
Writeln ('Nhap lai n ');
Read(n);
end;
Begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
Begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
y:=A[i];
end;
end;
writeln('CAC SO NGTO DA NHAP LA');
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
write(' A[',i,']= ',A[i]);
end;
end;
writeln;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
if(y < A[i]) then y:=A[i];
end;
end;
if(y=0) then writeln('KHONG CO SO NGUYEN TO') else
writeln('vi tri so ngto lon nhat la ');
for i:=1 to n do
begin
if(y=A[i]) then write(' ',i,' ');
end;
writeln;
writeln;
end;
readln;
end.

SỐ NGUYÊN TỐ KO LỚN NHẤT


program so_nguyen_to_ko_lon_nhat;
var A: Array[1..100] of integer;
i, n, x, y, max, max2, tong, j: word;
begin
Randomize;
writeln('Nhap n ');
Readln(n); while (n<=0) do
begin
Writeln ('Nhap lai n ');
Read(n);
end;
Begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
Begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
y:=A[i];
end;
end;
writeln('CAC SO NGTO DA NHAP LA');
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
write(' A[',i,']= ',A[i]);
end;
end;
writeln;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
if(y < A[i]) then y:=A[i];
end;
end;
if(y=0) then writeln('KHONG CO SO NGUYEN TO') else
writeln('so ngto ko lon nhat la ');
for i:=1 to n do
begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) and (A[i]<>y) then
Begin
write(' A[',i,']= ',A[i]);
end;
end;
writeln;
writeln;
end;
readln;
end.

VỊ TRÍ SỐ NGUYÊN TỐ KHÔNG LỚN NHẤT


program so_nguyen_to_lon_nhat_vi_tri;
var A: Array[1..100] of integer;
i, n, x, y, max, max2, tong, j: word;
begin
Randomize;
writeln('Nhap n ');
Readln(n); while (n<=0) do
begin
Writeln ('Nhap lai n ');
Read(n);
end;
Begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
Begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
writeln('CAC SO NGTO DA NHAP LA');
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
write(' A[',i,']= ',A[i]);
end;
end;
writeln;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then y:=A[i];
end;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
if(y < A[i]) then y:=A[i];
end;
end;
if(y=0) then writeln('KHONG CO SO NGUYEN TO') else
writeln('so ngto ko lon nhat la ');
for i:=1 to n do
begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) and (A[i]<>y) then
Begin
write(' ',i,' ');
end;
end;
writeln;
writeln;
end;
readln;
end.

SỐ NGUYÊN TỐ LỚN NHÌ


program so_nguyen_to_lon_nhi;
var A: Array[1..100] of integer;
i, n, x, y, max, max2, tong, j: word;
begin
Randomize;
writeln('Nhap n ');
Readln(n); while (n<=0) do
begin
Writeln ('Nhap lai n ');
Read(n);
end;
Begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
Begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
writeln('CAC SO NGTO DA NHAP LA');
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
write(' A[',i,']= ',A[i]);
end;
end;
writeln;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then y:=A[i];
end;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) and (y < A[i])then y:=A[i];
end;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) and (y <> A[i]) then max2:=A[i];
end;
for i:=1 to n do
begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) and (A[i]<>y) and (A[i]>max2) then max2:=A[i];
end;
if(y=0) then writeln('KHONG CO SO NGUYEN TO') else
writeln('so ngto lon nhi la ',max2);
writeln;
writeln;
end;
readln;
end.

VỊ TRÍ SỐ NGUYÊN TỐ LỚN NHÌ


program so_nguyen_to_lon_nhi;
var A: Array[1..100] of integer;
i, n, x, y, max, max2, tong, j: word;
begin
Randomize;
writeln('Nhap n ');
Readln(n); while (n<=0) do
begin
Writeln ('Nhap lai n ');
Read(n);
end;
Begin
writeln('Cac A[i] da nhap');
for i:=1 to n do
Begin
A[i]:= 100 + random(900);
writeln('A[',i,']= ',A[i]);
end;
writeln;
writeln;
writeln('CAC SO NGTO DA NHAP LA');
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
write(' A[',i,']= ',A[i]);
end;
end;
writeln;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then y:=A[i];
end;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) then
Begin
if(y < A[i]) then y:=A[i];
end;
end;
For i:=1 to n do
Begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) and (y <> A[i]) then max2:=A[i];
end;
for i:=1 to n do
begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(x=2) and (A[i]<>y) and (A[i]>max2) then max2:=A[i];
end;
if(y=0) then writeln('KHONG CO SO NGUYEN TO') else
writeln('vi tri so ngto lon nhi la ');
for i:=1 to n do
begin
x:=0;
for j:=1 to A[i] do
begin
If(A[i] mod j = 0) then x:=x+1;
end;
If(A[i]=max2) then write(' ',i,' ');
end;
writeln;
writeln;
end;
readln;
end.

You might also like