Duy anh - Pascal bài 31- 60
Bài 31:viet thu tuc kiem tra xem n cu phai là so nguyon to khung
program bai_31;
var i,tong_uoc,n:integer;
procedure kiem_tra;
begin
tong_uoc:=0;
for i:=1 to n do
if n mod i = 0 then tong_uoc:=tong_uoc+i;
if (tong_uoc=1) or (tong_uoc= n+1) then
writeln(' ',n,' la so nguyen to ')
else
writeln('',n,' khong phai la so nguyen to');
end;
begin
write('nhap n = '); readln(n);
kiem_tra;
readln;
end.
Bài 32:viet hàm kiem tra xem n cu phai là so hoàn hao khung(ket qua tra ve thung qua ton hàm
program bai_32;
var i,n,tong_uoc:integer;
function kiem_tra(a:integer):integer;
begin
tong_uoc:=0;
for i:=1 to a-1 do
if a mod i = 0 then tong_uoc:=tong_uoc+i;
if tong_uoc = a then
writeln(a,' la so hoan hao')
else
writeln(a,' khong phai la so hoan hao');
end;
begin
write('nhap n = '); readln(n);
kiem_tra(n);
readln;
end.
Bài 33:viet thu tuc tonh tong cua n so tu nhien dau
program bai_33;
var i,n,tong:integer;
procedure tinh_tong;
begin
tong:=0;
for i:=1 to n do
tong:=tong+i;
end;
begin
write('nhap n = '); readln(n);
tinh_tong;
writeln('tong cua ',n,' so tu nhien dau tien la : ',tong);
readln;
end.
Bài 34:viet ham de quy tonh giai thua cua n;
program bai_34;
var i,k,n:integer;
function giai_thua(n:integer):integer;
begin
k:=1;
for i:=1 to n do
k:=k*i;
end;
begin
write('nhap n = '); readln(n);
giai_thua(n);
writeln('gia tri cua ',n,'! la: ',k);
readln;
end.
Bài 35:viet ham de quy tonh gio tri cua so fib tai vi tro thu n:
program bai_35;
var n:integer;
function fib(n:integer):integer;
begin
if (n=1) or (n=2) then fib:=1
else fib:=fib(n-2) + fib(n-1);
end;
begin
write('nhap n = '); readln(n);
writeln('gia tri day so fibonaci tai vi tri ',n,' la : ',fib(n));
readln;
end.
Bài 36:viet ham de quy tonh gio tri cua so fib tai vi tro thu n; su dung ham do in ra tat ca so hang cua doy voi do dài n;
program bai_36;
var i,n:integer;
function fib(n:integer):integer;
begin
if (n=1) or (n=2) then fib:=1
else fib:=fib(n-2)+fib(n-1);
end;
begin
write('nhap n = '); readln(n);
write('gia tri cua day fib la : ');
for i:=1 to n do write(fib(i):5);
readln;
end.
Bài 37:viet hàm tom USCLN,BSCNN cua 2 so(KQ tra ve thung qua ton hàm);
program bai_37;
var tich,a,b,u:integer; bs:real;
function USCLN(a,b:integer; var uoc:integer):integer;
begin
while a<>b do
if a>b then a:=a-b
else b:=b-a;
uoc:=a;
end;
function BSCNN(a,b:integer; var boi:real):integer;
begin
tich:=a*b;
while a<>b do
if a>b then a:=a-b
else b:=b-a;
boi:=tich/a;
end;
begin
write('nhap a = '); readln(a);
write('nhap b = '); readln(b);
USCLN(a,b,u);
writeln('uoc so chung lon nhat la: ',u);
BSCNN(a,b,bs);
writeln('boi so chung nho nhat la: ',bs:3:0);
readln;
end.
Bài 38:viet hàm tom uoc chung lon nhat(KQ tra ve thong qua ten ham); SD ham do toi gian tu so và phon so voi tu so và mau so duoc nhap tu bàn phom;
program bai_38;
var TS,MS:integer;
TSM,MSM:integer;
function uoc(a,b:integer):integer;
begin
while a<>b do
if a>b then a:=a-b
else b:=b-a;
uoc:=a;
end;
begin
write('nhap tu so : '); readln(TS);
write('nhap mau so : '); readln(MS);
TSM:=TS div uoc(TS,MS);
MSM:=MS div uoc(TS,MS);
writeln('phan so sau khi toi gian la : ',TSM,'/',MSM);
readln;
end.
Bài 39:viet thu tuc dua ra so ngày cua thang trong nam;
program bai_39;
var thang,nam,so_ngay:integer;
procedure tinh_ngay;
begin
case thang of
4,6,9,11: so_ngay:=30;
2: if nam mod thang = 0 then
so_ngay:=29
else so_ngay:=28;
1,3,5,7,8,10,12: so_ngay:=31;
end;
end;
begin
write('nhap nam : '); readln(nam);
write('nhap thang cua nam : '); readln(thang);
tinh_ngay;
writeln('so ngay cua thang: ',thang,' ,nam: ',nam, ' ,la: ',so_ngay);
readln;
end.
Bài 41:nhap mang 1 chieu,sap xep coc phan tu theo thu tu tang dan(giai thuat noi bot);
program sap_xep_mang_1_chieu_tang_dan;
uses crt;
var a:array[1..100] of integer;
i,j,n,sap_xep:integer;
begin
clrscr;
(*----------------------nhap mang 1 chieu-----------------*)
write(' nhap so phan tu cua mang n:= '); readln(n);
write(' nhap tung gia tri cua phan tu mang :');
for i:=1 to n do
begin
write(' phan tu a[',i,']:= '); readln(a[i]);
end;
(*---------------xuat mang theo thu tu tang dan------------*)
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]>a[j] then begin sap_xep:=a[i];
a[i]:=a[j];
a[j]:=sap_xep;
end;
write(' mang sau khi sap xep tang dan la : ');
for i:=1 to n do
write(a[i]:7);
readln;
end.
Bài 42:nhap mang 1 chieu,chon 1 phan tu cu gio tri x vào vi tro k, in ra mang sau khi chon;
program bai_42
var a:array[1..100] of integer;
i,n,k,x:integer;
begin
write('nhap so phan tu cua mang n = '); readln(n);
writeln('nhap tung gia tri cho tung phan tu mang : ');
for i:=1 to n do
begin
write('phan tu a[',i,']:= '); readln(a[i]);
end;
write('nhap vi tri can chen k = '); readln(k);
write('nhap gia tri cua phan tu can chen : '); readln(x);
for i:=n+1 downto k+1 do a[i]:=a[i-1];
a[k]:=x;
write('mang sau khi chen la : ');
for i:=1 to n+1 do write(a[i]);
readln;
end.
Bài 43:nhap mang 1 chieu,xua 1 phan tu mang tai vi tro k,in ra mang sau khi xua;
program bai_43;
var i,n,k:integer;
begin
(*--------------------nhap mang 1 chieu va vi tri muon xoa nhu bai 42; sau khi nhap thuc hien cac buoc sau---------------------------------------------------------------------:*);
for i:=k to n-1 do a[i]:=a[i+1]
write('mang sau khi xoa la : ');
for i:=1 to n-1 do write(a[i]:5);
readln;
end.
Bai 44: dung ham de quy tonh giai thua cua n
program bai_44;
var n:integer;
function giai_thua(n:integer):integer;
begin
if n=0 then giai_thua:=1
else giai_thua:=n*giai_thua(n-1);
end;
begin
write('nhap n = '); readln(n);
giai_thua(n);
writeln('giai thua cua n la: ',giai_thua(n));
readln;
end.
Bài 45:nhap mang 1 chieu,tonh tong phan tu mang;
program tinh_tong_phan_tu_mang;
var a:array[1..100] of integer;
i,n,tong:integer;
begin
write(' nhap so phan tu mang n = '); readln(n);
writeln(' nhap tung gia tri cho tung phan tu mang : ');
for i:=1 to n do
begin
write('a[',i,']:= ') ;
readln(a[i]);
end;
tong:=0;
for i:=1 to n do
tong:=tong+a[i];
writeln(' tong cac phan tu cua mang la : ',tong);
readln;
end.
Bài 46: tonh trung bonh coc phan tu mang;
program tinh_trung_binh_pt_mang;
var a:array[1..100] of integer;
i,n,tong:integer;
begin
write(' nhap so phan tu cua mang n = '); readln(n);
writeln(' nhap tung gia tri cho tung phan tu cua mang :');
for i:=1 to n do
begin
write(' - phan tu thu a[',i,']:= ');
readln(a[i]);
end;
(*---------------tinh trung binh cong va in ra ket qua------------*)
tong:=0;
for i:=1 to n do
tong:=tong+a[i];
writeln('trung binh cong cac phan tu cua mang la: ',tong/n:8:3);
readln;
end.
Bài 47:nhap mang 1 chieu,dua ra cac phan tu cu gio tri om trong mang;
program bai_47;
uses crt;
var a:array[1..100] of integer;
i,n,dem,so_am:integer;
begin
clrscr;
write('nhap so phan tu cua mang n = '); readln(n);
writeln('nhap gia tri cho tung phan tu cua mang : ');
for i:=1 to n do
begin
write(' - phan tu a[',i,']:= '); readln(a[i]);
end;
dem:=0;
write('nhung so am trong mang la : ');
for i:=1 to n do
if a[i]<0 then
begin
dem:=dem+1;
write(a[i]:5);
end;
readln;
writeln('co ',dem,' gia tri am trong mang ');
readln;
end.
Bài 48: Nhap mang 2 chieu' . Dua ra phan tu la boi cua 5 . Tinh tong cua no'
va' in ra
program boi_so_cua_5_va_tong_cac_boi;
var a:array[1..100,1..100] of integer;
i,j,m,n,tong:integer;
begin
(*------------------nhap mang 2 chieu------------------------*)
write('nhap so hang n= '); readln(n);
write('nhap so cot m= '); readln(m);
writeln('nhap tung gia tri cho tung phan tu cua mang :');
for i:=1 to n do
for j:=1 to m do
begin write(' - phan tu thu a[',i,',',j,']:= ');
readln(a[i,j]);
end;
(*--------tinh cac phan tu la boi cua 5 va tong cua no-------------*)
write('cac phan tu boi cua 5 la: ');
tong:=0;
for i:=1 to n do
for j:=1 to m do
if a[i,j] mod 5=0 then
begin
write(a[i,j]:7);
tong:=tong+a[i,j];
end;
(*---------------------------in ra ket qua--------------------------*)
writeln;
writeln('tong cac phan tu la boi cua 5 la : ',tong);
readln;
end.
Bài 49:nhap mang 2 chieu,tom phan tu cu gio tri nho nhat và chi ru vi tro cua nu
program gia_tri_nho_nhat_cua_pt_mang;
var a:array[1..100,1..100] of integer;
i,j,m,n,min,hang,cot:integer;
begin
(*------------------nhap mang 2 chieu---------------------*)
write(' nhap so hang n = '); readln(n);
write(' nhap so cot m = '); readln(m);
writeln(' nhap tung gia tri cua phan tu mang ');
for i:=1 to n do
for j:=1 to m do
begin
write(' gia tri phan tu thu a[',i,',',j,']:= ');
readln(a[i,j]);
end;
(*------------------tim gia tri nho nhat-------------------*)
min:=a[1,1];
cot:=1;
hang:=1;
for i:=1 to n do
for j:=1 to m do
if min>a[i,j] then begin min:=a[i,j];
hang:=i;
cot:=j;
end;
(*-----------------------xuat gia tri nho nhat,vi tri--------------*)
writeln('gia tri nho nhat la: ',min,' tai hang: ',hang,' tai cot: ',cot);
readln;
end.
Bài 50:nhap mang 2 chieu,tom phan tu cu gio tri lon nhat và chi ru vi tro cua nu;
program bai_50;
var i,j,m,n,max,hang,cot:integer;
a:array[1..100,1..100] of integer;
begin
write('nhap so hang n = '); readln(n);
write('nhap so cot m = '); readln(m);
writeln('nhap tung gia tri cho tung phan tu cua mang: ');
for i:=1 to n do
for j:=1 to m do
begin write(' -phan tu a[',i,'','',j,']:= ');
readln(a[i,j]);
end;
max:=a[1,1];
hang:=1;
cot:=1;
for i:=1 to n do
for j:=1 to m do
if max < a[i,j] then
begin
max:=a[i,j];
cot:=i;
hang:=j;
end;
writeln('_______PHAN TU CO GIA TRI LON NHAT LA: ',max,', Tai hang: ',hang,', Tai cot: ',cot);
readln;
end.
Bài 51: viet chuong tronh nhap vào xou x,thuc hien troch ra xou con y tu xou x voi k ko tu tu vi tro i
program bai_51;
var x,y:string;
i,k:integer;
begin
write('nhap vao xau x : '); readln(x);
write('nhap vi tri can xoa : '); readln(i);
write('nhap so ky tu can xoa : '); readln(k);
delete(x,i,k);
writeln('xau x sau khi bi xoa la : ',x);
readln;
end.
Bài 52:viet chuong tronh nhap vào 1 xou roi doi sang chu hoa;
program bai_52;
var x:string;
i:integer;
begin
write(' nhap xau x : '); readln(x);
for i:=1 to length(x) do
if (x[i]>=a) and (x[i]<=z) then x[i]:=chr(ord(x[i])-32);
write('xau doi sang chua hoa la : ',x);
readln;
end.
Bai 53:doi xou x sang chu thuong:
program bai_53;
var x:string;
i:integer;
begin
write(' nhap xau x : '); readln(x);
for i:=1 to length(x) do
if (x[i]>=A) and (x[i]<=Z) then x[i]:=chr(ord(x[i])+32);
write('xau doi sang chua thuong la : ',x);
readln;
end.
Bài 55:viet chuong tronh nhap vào xou x roi in ra coc ky tu so;
program bai_55;
var x,so:string;
i:integer;
begin
write('nhap xau : '); readln(x);
for i:=1 to length(x) do
begin
if (x[i]>=0) and (x[i]<= 9) then so:=so+x[i];
write('cac chu so trong xau la : ',so);
end;
readln;
end.
Bài 56:viet chuong tronh dao nguoc xou ko tu. Vd abc dao thành cba;
program bai_56;
var x,dao_nguoc:string;
i:integer;
begin
write('nhap xau ky tu : '); readln(x);
for i:=length(x) downto 1 do dao_nguoc:=dao_nguoc+x[i];
writeln('xau bi dao nguoc lai la : ',dao_nguoc);
readln;
end.
Bài 57:dung du lieu kieu ban ghi và bien mang; lap tronh nhap vào 1 donh soch gom n sinh vion voi cac truong ho ten nam sinh, roi tom và in ra màn honh coc sinh vion cu so tuoi cao nhat;
program bai_57;
uses crt;
type thong_tin=record
ho_ten:string[30];
nam_sinh:integer;
end;
var sinh_vien:array[1..100] of thong_tin;
i,n,min,dem:integer;
begin
clrscr;
write('nhap so luong sinh vien : '); readln(n);
writeln('nhap thong tin cho tung sinh vien : ');
for i:=1 to n do
begin
with sinh_vien[i] do
begin
writeln(' - sinh vien thu ',i,' :');
write(' + nhap ho ten: '); readln(ho_ten);
write(' + nhap nam sinh: '); readln(nam_sinh);
end;
end;
min:=sinh_vien[1].nam_sinh;
for i:=1 to n do
if min> sinh_vien[i].nam_sinh then
min:=sinh_vien[i].nam_sinh;
writeln('----------------------------------');
writeln('DANH SACH SINH VIEN CO SO TUOI CAO NHAT LA : ');
for i:=1 to n do
if min=sinh_vien[i].nam_sinh then
writeln(' + ho ten : ',sinh_vien[i].ho_ten,' , sinh nam : ',min);
readln;
end.
Bài 59:tonh tien o siou thi: khoch hàng mua nhieu mat hàng khoc nhau voi so luong va don gia khac nhau;
program bai_59;
type thong_tin = record
soluong,dongia:integer;
tien:real;
end;
var mat_hang:array[1..100] of thong_tin; i,n:integer;
tong:real;
begin
write('nhap so mat hang n = '); readln(n);
writeln('nhap thong tin cho tung mat hang : ');
for i:=1 to n do
with mat_hang[i] do
begin writeln(' - mat_hang[',i,']: ');
write(' + nhap so luong = '); readln(soluong);
write(' +nhap don gia (nghin dong) : '); readln(dongia);
tien:=soluong*dongia;
tong:=tong+tien;
end;
writeln('tong so tien phai tra la : ',tong:5:1,' nghin dong');
readln;
end.
Baif 60:viet thu tuc tonh tong S= 1/32 + 1/52 +...+ 1/n2
program bai_60;
var n:integer;
procedure tinh_tong(a:integer);
var i:integer; s:real;
begin
s:=0;
for i:=3 to a do
if (i-1) mod 2 = 0 then
s:=s+(1/(i*i));
writeln('tong S = ',s:1:6);
end;
begin
write('nhap n = '); readln(n);
tinh_tong(n);
readln;
end.
Bạn đang đọc truyện trên: Truyen4U.Com