Chuyển đến nội dung chính

BÀI TẬP PASCAL VỀ BIẾN MẢNG

BÀI TẬP PASCAL VỀ  BIẾN MẢNG
Bài tập mảng: (su dung procedure)
- Nhập số phần tử mảng
- Nhập giá trị cho mảng
- In ra màn hình các giá trị của mảng
- Tính tổng các giá trị của mảng
- Tìm các số nguyên tố, số chính phương có trong mảng
- Tìm số lớn nhất, nhỏ nhất
- sắp xếp tăng dần, giảm dần
- Cho 1 số có giá trị K, tìm tất cả các vị trí trong mảng có giá trị K
- Thêm một phần tử vào cuối mảng
- Xóa một phần tử khỏi mảng
.........
uses crt;
var n,p,s,max,min,d,j,i,k,c:integer;
A:array[1..100] of integer;
{-------ham tinh so nguyen to------}
function snt( a:integer):boolean;
var j:integer; uoc:integer;
begin
uoc:=0;
for j:= 1 to a do
if a mod j =0 then uoc:=uoc+1;
if uoc=2 then snt:=true
else snt:=false;
end;
procedure nhapsophantu;
begin
write('nhap so phan tu cua mang:'); read(n);
{nhap day so cho mang}
for i:= 1 to n do
begin
write('nhap phan tu thu ',i, ':');
read(a[i]);
end;
end;
procedure xuat;
begin
{Xuat day so ra man hinh}
writeln('day so vua nhap la:');
for i:= 1 to n do
begin
write('nhap phan tu thu ',i, ':');
writeln(a[i], ' ');
end;
end;
{-----------------------------------}
procedure tinhtong;
begin
{Xuat day so ra man hinh}
writeln('day so vua nhap la:');
for i:= 1 to n do
begin
write('nhap phan tu thu ',i, ':');
writeln(a[i], ' ');
end;
end;
{--------------------------}
procedure sxtangdan;
begin
{sap xep theo thu tu tang dan}
Write(' danh sach da duoc sap xep tang dan');
for i:=1 to n-1 do
for j:=i+1 to n do
begin
if a[i]>a[j] then
begin
c:=a[i];
a[i]:=a[j];
a[j]:=c;
end;
end;
end;
procedure sxgiamdan;
begin
{sap xep theo thu tu tang dan}
Write(' danh sach da duoc sap xep tang dan');
for i:=1 to n-1 do
for j:=i+1 to n do
begin
if a[i]<a[j] then
begin
c:=a[i];
a[i]:=a[j];
a[j]:=c;
end;
end;
end;
{---------chuong trinh chinh-------------}
begin
nhapsophantu;
xuat;
sxtangdan;
xuat;
sxgiamdan;
xuat;
for i:= 1 to n do if snt(i) then write(i, ' ');
readkey;
end.

Nhận xét

Bài đăng phổ biến từ blog này

DÃY ĐAN DẤU TRONG PASCAL

DÃY ĐAN DẤU TRONG PASCAL Dãy đan dấu là dãy không có 2 phần tử cạnh nhau có dấu giống nhau. ví dụ: -2 4 -9 5 -23 8 là dãy đan dấu Thủ tục kiểm tra dãy đan dấu trong dãy số: procedure dandau; var i,j:integer;     kt:boolean; begin kt:=true; for i:=1 to N-1 do                 begin                 j:=i+1;                 if a[i] *a[j] >0 then kt:=false;                 end; If kt=true then write('Day A la day dan dau') else write('Day A khong phai day dan dau'); end;

Tam giác số (Pascal)

TAM GIÁC SỐ  (Câu 4. Hội thi Tin Học Trẻ Phú Yên lần thứ XIX - năm 2016)                              7                          3       8                      8      1       0                   2     7        4       4                 4    5      2       6       5 Cho một tam giác gồm các số nguyên không âm (xem hình trên). Hãy viết chương trình tính tổng lớn nhất của các số nằm trên lộ trình từ đỉnh xuống: - Tại mỗi bước đi, lộ trình có thể đi xuống phía bên trái hoặc xuống phía bên phải. - Số hàng trong tam giác lớn hơn...

VÒNG LẶP KHÔNG XÁC ĐỊNH WHILE..DO; REPEAT .. UNTIL

VÒNG LẶP KHÔNG XÁC ĐỊNH  WHILE..DO; REPEAT .. UNTIL - Vòng lặp While..do While <điều kiện > Do  <câu lệnh>; Câu lệnh sau do được thực hiện khi điều kiện được thỏa mãn (điều kiện =true); vòng lặp kết thúc khi điều kiện không thỏa (điều kiện =false) - Vòng lặp Repeat .. until; Repeat <câu lệnh>; Until <điều kiện>; Lặp lại câu lệnh cho đến khi nào  thỏa mãn điều kiện  (điều kiện =true) thì dừng lại;  Bài tập: Nhập vào một số nguyên A thỏa mãn (0<A<100), Tính tổng các số nguyên từ 1 đến A (S=1+2+...+A). Vận dụng câu lệnh While .. do uses crt; var A,I:  Integer; S:longint; begin          a:=0;          while not ((a>0) and (a<100)) do          begin          write('Nhap gia tri cua A:'); read(A);           end;          s:=0...