End;Readln END.. Program TinhGiaiThua; Var i,n: Word; P: Real; BEGIN Writeln'Tinh giai thua cua so n>=0.';... Program BaiToanGaCho; Var sg,sc: Byte; BEGIN Writeln'Bai toan co Ga + Cho
Trang 1Program PhuongTrinhbac2;
Var a,b,c,delta,x1,x2,xk: real;
BEGIN
Writeln('Chuong trinh giai PT bac hai:');
Writeln('Hay nhap cac he so:');
Write('a = '); readln(a);
Write('b = '); readln(b);
Write('c = '); readln(c);
Delta:=b*b-4*a*c;
If Delta > 0 then
Begin
x1:=(-b+Sqrt(Delta))/(2*a);
x2:=(-b-Sqrt(Delta))/(2*a);
Writeln('Phuong trinh co hai nghiem phan biet:');
Writeln('x1 = ',x1:5:2);
Writeln('x2 = ',x2:5:2);
End
Else If Delta = 0 then
Begin
xk:=-b/(2*a);
Writeln('PT co mot nghiem kep xk = ',xk:5:2);
End
Else Writeln('Phuong trinh vo nghiem '); Readln
END
Program Max3;
Var a,b,c,max: Integer;
BEGIN
Writeln('Tim so lon nhat cua 3 so:');
Write('Nhap vao ba so a, b, c = ');Readln(a,b,c); max:= a;
If max < b then max:= b;
If max < c then max:= c;
Writeln('So lon nhat la: ',max);
Readln
END
Trang 2Program ThangQuy;
Var thang,quy:1 12;
BEGIN
Writeln('Chuong trinh kiem tra xem mot thang thuoc quy nao.');
Write('Nhap vao thang can kiem tra: '); Readln(thang);
If thang mod 3 = 0 then quy:= thang div 3
Else quy:= thang div 3 + 1;
Writeln('Thang ',thang,' thuoc quy ',quy);
Readln
END
Program KiemTraTamGiac;
Var a,b,c: Word;
BEGIN
Writeln('Kiem tra xem mot tam giac Nhon, Tu hay
Vuong:');
Writeln('Nhap vao ba canh cua tam giac (a, b, c >
0) ');
Write('a, b, c = '); Readln(a,b,c);
IF ((a+b)>c) And ((a+c)>b) And ((b+c)>a) then
Begin
IF (a>=b) And (a>=c) then
Begin
If a*a > b*b + c*c then Writeln('Day la tam giac Tu ');
If a*a = b*b + c*c then Writeln('Day la tam giac Vuong ');
If a*a < b*b + c*c then Writeln('Day la tam giac Nhon ');
End;
IF (b>=a) And (b>=c) then
Begin
If b*b > a*a + c*c then Writeln('Day la tam giac Tu ');
If b*b = a*a + c*c then Writeln('Day la tam giac Vuong ');
If b*b < a*a + c*c then Writeln('Day la tam giac Nhon ');
Trang 3End;
IF (c>=a) And (c>=b) then
Begin
If c*c > a*a + b*b then Writeln('Day la tam giac Tu ');
If c*c = a*a + b*b then Writeln('Day la tam giac Vuong ');
If c*c < a*a + b*b then Writeln('Day la tam giac Nhon ');
End;
End
Else Writeln('Khong la ba canh cua tam giac ');
Readln
END
Program GiaiHePT;
Var a1,b1,c1,a2,b2,c2: Integer;
Delta,deltax,deltay,x,y: Real;
BEGIN
Writeln('Giai he hai PT bac nhat hai an.');
Write('Nhap cac he so a1, b1, c1 = '); Readln(a1,b1,c1); Write('Nhap cac he so a2, b2, c2 = '); Readln(a2,b2,c2); Delta:=a1*b2-a2*b1;
Deltax:=c1*b2-c2*b1;
Deltay:=a1*c2-a2*c1;
IF Delta = 0 then
Begin
If Deltax <> Deltay then Writeln('He PT vo
nghiem ')
Else Writeln('He PT co vo so nghiem dang: x,
y=(',c1,'-',a1,'x)/',b1)
End
Else IF Deltax=Deltay then
Writeln('He PT co vo so nghiem dang: x,
y=(',c1,'-',a1,'x)/',b1)
ELse Begin
x:=Deltax/Delta;
y:=Deltay/Delta;
Writeln('He PT co nghiem x = ',x:0:2,', y = ',y:0:2);
Trang 4End;
Readln
END
Program TinhTong;
Var S,i,n: Word;
BEGIN
Writeln('Tinh tong cua n so tu nhien.');
Write('Nhap so tu nhien n = '); Readln(n);
S:= 0;
For i:= 1 to n do S:= S + i;
Writeln('Ket qua la: S = ',S);
Readln
END
Program TinhTongBinhPhuong;
Var S,i,n: Word;
BEGIN
Writeln('Tinh tong binh phuong cua n so tu nhien.'); Write('Nhap so tu nhien n = '); Readln(n);
S:= 0;
For i:= 1 to n do S:= S + i*i;
Writeln('Ket qua la: S = ',S);
Readln
END
Program TinhTongPhanSo;
Var S: Real; i,n: Word;
BEGIN
Writeln('Tinh tong 1/n cua n phan so.');
Write('Nhap so tu nhien n = '); Readln(n);
S:= 0;
For i:= 1 to n do S:= S + 1/i;
Writeln('Ket qua la: S = ',S:10:2);
Readln
END
Program TinhGiaiThua;
Var i,n: Word; P: Real;
BEGIN
Writeln('Tinh giai thua cua so n>=0.');
Trang 5Write('Nhap vao so n = '); Readln(n);
IF n>0 then
Begin
P:= 1;
For i:=1 to n do P:=P*i
End
Else If n=0 then
Readl
END
Program TinhCanThuc;
Var i,n:Word; S:Real;
BEGIN
Writeln('Tinh tong can thuc.');
Write('Nhap so n = '); Readln(n);
S:= n;
For i:=n-1 Downto 0 do
S:= i + Sqrt(S);
Writeln('Ket qua S = ',S:10:3);
Readln
END
Program TinhTongPhanSo;
Var i,n:Word; S:Real;
BEGIN
Writeln('Tinh tong Phan so.');
Write('Nhap so n = '); Readln(n);
S:= n;
For i:=n-1 Downto 0 do
S:= i + 1/S;
Writeln('Ket qua S = ',S:10:3);
Readln
END
Program TimUCLN;
Var a,b: Integer;
BEGIN
Writeln('Tim UCLN cua hai so khac 0.'); Write('Nhap hai so a, b = '); Readln(a,b); a:=ABS(a);
Trang 6b:=ABS(b);
While a<>b do
If a>b then a:=a-b Else b:=b-a;
Writeln('Ket qua UCLN cua hai so la: ',a);
Readln
END
Program BanCuuChuong;
Var i,j: Byte;
BEGIN
Writeln('BAN CUU CHUONG:');
For i:=2 to 9 do
For J:= 1 to 10 do
Writeln(i,'x',j,' = ',i*j);
Readln
END
Program BanCuuChuong;
Var i,j: Byte;
BEGIN
Writeln('BAN CUU CHUONG:');
For j:=1 to 10 do
Begin
For i:= 1 to 5 do
Write(i,'x',j:2,'=',i*j:2,' ');Writeln; End;
Writeln;
For j:=1 to 10 do
Begin
For i:= 6 to 10 do
Write(i,'x',j:2,'=',i*j:2,' ');Writeln; End;
Readln
END
Program BaiToanGaCho;
Var sg,sc: Byte;
BEGIN
Writeln('Bai toan co Ga + Cho = 36 con Chan ga + Chan Cho = 100 chan');
Trang 7For sg:=1 to 36 do
For sc:=1 to 25 do
If (sg*2+sc*4=100) And (sg+sc=36) then
Writeln('Ket qua So Ga la: ',sg,' So Cho la: ',sc);
Readln
END
Program BaiToanTramTrauTramCo;
Var td,tn,tg: Byte;
BEGIN
Writeln('Co 100 Trau an 100 bo co.');
Writeln('Trau dung an 5, Trau nam an 3, Trau gia 3 con/1bo.');
Writeln('CAC KET QUA LA:');
For td:=1 to 20 do
For tn:=1 to 33 do
For tg:=1 to 100 do
If (td*5+tn*3+tg/3=100) And (td+tn+tg=100) then Begin
Writeln('Trau dung co: ',td,' con');
Writeln('Trau nam co: ',tn,' con');
Writeln('Trau gia co: ',tg,' con');
Writeln;
End;
Readln
END
Program TinhTongChuSo;
Var n: LongInt; tong: Byte;
BEGIN
Writeln('Tinh tong cac chu so cua STN n.');
Write('Nhap STN n = '); Readln(n);
Write('Tong cac chu so cua ',n,' la: ');
tong:= 0;
Repeat
tong:=tong + n mod 10;
n:= n div 10;
Until n = 0;
Writeln(tong);
Trang 8END
Program KiemTraSNTo;
Var i,j,n: Integer;
Dung: Boolean;
BEGIN
Writeln('Kiem tra xem n co la So Nguyen To hay khong?'); Write('Nhap So Nguyen n = '); Readln(n);
Dung:= False;
IF (n=2) Or (n= 3) then Dung:=True;
IF n>3 then
Begin
i:=2; j:=n div 2;
While (i<=j) And (n mod i <> 0) do i:=i+1;
If i > j then Dung:= true;
End;
If Dung then Writeln('Ket qua ',n,' co la So Nguyen To.')
Else Writeln('Ket qua ',n,' khong la So Nguyen To.'); Readln
END
Program TinhTongCacUoc;
Var tong,n,i: integer;
BEGIN
Writeln('Chuong trinh tinh tong cac uoc thuc su cua mot so:');
Write('Nhap so n = '); Readln(n);
tong:=0;
For i:=2 to (n div 2) do
If n mod i = 0 then tong:= tong+i;
Writeln('Tong cac uoc thuc su cua ',n,' la: ',tong);
Readln
END
Program SoHoanHao;
Var Tonguoc,i,n: Integer;
BEGIN
Writeln('Kiem tra xem mot so cola So Hoan Hao khong?');
Trang 9Write('Nhap so n = '); Readln(n);
Tonguoc:= 0;
For i:= 1 to (n div 2) do
If (n mod i = 0) then Tonguoc:=Tonguoc + i;
If Tonguoc = n then Writeln('So ',n,' la So Hoan Hao') Else Writeln('So ',n,' Khong la So Hoan Hao');
Readln
END
Program TimCacSoHoanHao;
Var Tonguoc,i,j,n: Integer;
BEGIN
Writeln('Kiem tra xem co bao nhieu so la So Hoan Hao?'); Writeln('Tim kiem tu 1 den MaxInt ');
Writeln('Chuong trinh thuc hien trong may phut, Xin cho ');
Writeln('Cac so Hoan Hao la:');
n:= MaxInt;
For j:=2 to n do
Begin
Tonguoc:= 0;
For i:= 1 to (j div 2) do
If (j mod i = 0) then Tonguoc:=Tonguoc + i;
If Tonguoc = j then Writeln(j);
ENd;
Writeln('Ket thuc ');
Readln
END
Program TimKiemTheoMau;
Var M: Array[1 100] of Integer;
i,n: 1 100; x: Integer; Thay: Boolean;
BEGIN
Writeln('Chuong trinh tim xem x co thuoc day so nguyen hay khong?');
Write('Nhap day so, co so phan tu (n<= 100).Nhap n = '); Readln(n);
For i:= 1 to n do
Begin
Write('Phan tu thu ',i,' = '); Readln(M[i]);
Trang 10End;
Write('So can tim x = '); Readln(x);
i:=1; Thay:= False;
While (i<=n) And (not Thay) do
If x = M[i] then Thay:= true Else i:=i+1;
If thay then Writeln('So ',x,' tim thay tai vi tri ',i) Else Writeln('Khong co ',x,' trong day ');
Readln
END
Program TimKiemTheoMau;
Var M: Array[1 100] of Integer;
i,n: 1 100; x: Integer; Thay: Boolean;
BEGIN
Writeln('Chuong trinh tim xem x co thuoc day so nguyen hay khong?');
Write('Nhap day so, co so phan tu (n<= 100).Nhap n = '); Readln(n);
For i:= 1 to n do
Begin
Write('Phan tu thu ',i,' = '); Readln(M[i]);
End;
Write('So can tim x = '); Readln(x);
Write('So ',x,' tim thay tai cac vi tri la:');
Thay:= False;
For i:=1 to n do
If x = M[i] then
Begin
Thay:= true; Write(i:3);
End;
If not thay then Writeln('Khong co ',x,' trong day '); Readln
END
Program TimKiemMaxMin;
Var M: Array[1 100] of Integer;
i,n: 1 100;
vtmax,vtmin: Byte;
BEGIN
Writeln('Chuong trinh tim Min, Max cua day so nguyen?');
Trang 11Write('Nhap day so, co so phan tu (n<= 100).Nhap n = '); Readln(n);
For i:= 1 to n do
Begin
Write('Phan tu thu ',i,' = '); Readln(M[i]);
End;
vtmin:=1; vtmax:=1;
For i:=1 to n do
Begin
If M[i] > M[vtmax] then vtmax:=i;
If M[i] < M[vtmin] then vtmin:=i;
End;
Writeln('Phan tu Max co vi tri ',vtmax,' la:
',M[vtmax]);
Writeln('Phan tu Min co vi tri ',vtmin,' la:
',M[vtmin]);
Readln
END
Program TimSoChanChuc;
Var M: Array[1 100] of Integer;
i,n: 1 100;
vt: Byte;
BEGIN
Writeln('Chuong trinh tim So Tron Chuc cua day so
nguyen?');
Write('Nhap day so, co so phan tu (n<= 100).Nhap n = '); Readln(n);
For i:= 1 to n do
Begin
Write('Phan tu thu ',i,' = '); Readln(M[i]);
End;
vt:=0;
Write('Cac vi tri cua so tron chuc la:');
For i:=1 to n do
If M[i] mod 10 = 0 then
Begin
vt:=i; Write(vt:5);
End;
Trang 12If vt=0 then Writeln('Khong co phan tu nao tron
chuc ');
Readln
END
Program SapXepTangGiam;
Var M: Array[1 100] of Integer;
i,j,n: 1 100;
tg: Integer;
BEGIN
Writeln('Chuong trinh tim Sap Xep day so nguyen?');
Write('Nhap day so, co so phan tu (n<= 100).Nhap n = '); Readln(n);
For i:= 1 to n do
Begin
Write('Phan tu thu ',i,' = '); Readln(M[i]);
End;
Writeln;
For i:=1 to n-1 do
For j:=i+1 to n do
If M[i] > M[j] then
Begin
tg:=M[i]; M[i]:=M[j]; M[j]:=tg;
End;
Writeln('SAP XEP TANG DAN:');
For i:=1 to n do Write(M[i]:5);
Writeln; Writeln;
Writeln('SAP XEP GIAM DAN:');
For i:=n Downto 1 do Write(M[i]:5);
Readln
END
Program MaTranVuong;
Var i,j,n: Byte;
M: Array[1 100,1 100] of Integer;
BEGIN
Write('Nhap ma tran vuong cap (n<=100) n = ');
readln(n);
For i:= 1 to n do
Trang 13For j:= 1 to n do
Begin
Write('M[',i,',',j,']='); readln(M[i,j]);
End;
Writeln('Ma tran vuong nhap vao la:');
For i:= 1 to n do
Begin
For j:=1 to n do Write(M[i,j]:5);
Writeln;
End;
Writeln('Cac phan tu tren duong cheo chinh:');
For i:=1 to n do Write(M[i,i]:5);
Writeln;
Writeln('Cac phan tu tren duong cheo phu:');
For i:=1 to n do Write(M[n+1-i,i]:5);
Readln
END
Program CongMaTran;
Var A,B,C: Array[1 100,1 100] of Integer;
i,j,n,m: Byte;
BEGIN
Writeln('Chuong trinh cong ma tran C = A + B.');
Write('Nhap cap cua ma tran A va B (m,n<=100) m,n = '); readln(m,n);
Writeln('Nhap ma tran A: So dong ',m,' So cot ',n);
For i:= 1 to m do
For j:= 1 to n do
Begin
Write('A[',i,',',j,']='); readln(A[i,j]);
End;
Writeln('Nhap ma tran B: So dong ',m,' So cot ',n);
For i:= 1 to m do
For j:= 1 to n do
Begin
Write('B[',i,',',j,']='); readln(B[i,j]);
End;
For i:=1 to m do
For j:= 1 to n do C[i,j]:=A[i,j]+B[i,j];
Writeln('Ma tran C co cac phan tu la:');
Trang 14For i:= 1 to m do
Begin
For j:=1 to n do Write(C[i,j]:5);
Writeln;
End;
Readln
END
Program MaTranChuyenVi;
Var M,N: Array[1 100,1 100] of Integer;
i,j,dong,cot: Byte;
tg: Integer;
BEGIN
Writeln('Chuong trinh ma tran chuyen vi');
Write('Nhap cap cua ma tran M (m,n<=100) m,n = '); readln(dong,cot);
Writeln('Nhap ma tran M: So dong ',dong,' So cot ',cot); For i:= 1 to dong do
For j:= 1 to cot do
Begin
Write('M[',i,',',j,']='); readln(M[i,j]);
End;
Writeln('Ma tran nhap vao la:');
For i:= 1 to dong do
Begin
For j:=1 to cot do Write(M[i,j]:5);
Writeln;
End;
Writeln('Ma tran chuyen vi la:');
For i:=1 to cot do
For j:= 1 to dong do N[i,j]:=M[j,i];
For i:= 1 to cot do
Begin
For j:=1 to dong do Write(N[i,j]:5);
Writeln;
End;
Readln
END
Program CongPhanSo;
Trang 15Type Phanso = Record
ts,ms:Integer;
End;
Var ps1,ps2,kq: Phanso;
a,b: Integer;
BEGIN
Writeln('Chuong trinh cong phan so.');
Writeln('Nhap phan so thu nhat:');
Write('Tu so = '); Readln(ps1.ts);
Write('Mau so = '); Readln(ps1.ms);
Writeln('Nhap phan so thu hai:');
Write('Tu so = '); Readln(ps2.ts);
Write('Mau so = '); Readln(ps2.ms);
kq.ts:= ps1.ts*ps2.ms+ps1.ms*ps2.ts;
kq.ms:=ps1.ms*ps2.ms;
a:=ABS(kq.ts);
b:=ABS(kq.ms);
While a<>b do
If a>b then a:=a-b Else b:=b-a;
kq.ts:=kq.ts div a;
kq.ms:=kq.ms div b;
If kq.ms < 0 then
Begin
kq.ts:= -1*kq.ts;
kq.ms:= -1*kq.ms;
End;
Writeln('Ket qua: ',kq.ts,'/',kq.ms);
Readln
END
Program TinhGiaTriDaThuc;
Type Dathuc= Record
hs: Integer;
bac:1 20;
End;
Var F: Array[1 21] of Dathuc;
i,j,n:Byte; gtdt,x,tg: Real;
BEGIN
Writeln('Chuong trinh tinh gia tri cua da thuc tai x.'); Write('Nhap bac cua da thuc (n<=20) n = '); readln(n);
Trang 16Writeln('Nhap cac he so cua da thuc:');
n:=n+1;
For i:=n Downto 1 do
Begin
Write('a',i-1,' = ');Readln(F[i].hs);
F[i].bac:=i-1;
End;
Write('Nhap gia tri x can tinh x = '); Readln(x);
gtdt:=0;
For i:=1 to n do
Begin
tg:=1;
For j:= 1 to F[i].bac do tg:=tg*x;
gtdt:=gtdt+tg*F[i].hs;
End;
Writeln('Gia tri da thuc tai ',x:0:2,' la: ',gtdt:5:2); Readln
END }
Program Cong2DaThuc;
Type Dathuc= Record
hs: Integer;
bac:1 20;
End;
Var F,G,T: Array[1 21] of Dathuc;
i,j,n,m,bacmax:Byte;
BEGIN
Writeln('Chuong trinh tinh tong cua hai da thuc co bac n<=20.');
Write('Nhap bac cua hai da thuc F(x) n = ');
readln(n);
Writeln('Nhap cac he so cua da thuc F(x):');
n:=n+1;
For i:=n Downto 1 do
Begin
Write('a',i-1,' = ');Readln(F[i].hs);
F[i].bac:=i-1;
End;
Write('Nhap bac cua hai da thuc G(x) n = ');
readln(m);
Trang 17Writeln('Nhap cac he so cua da thuc G(x):');
m:=m+1;
For i:=m Downto 1 do
Begin
Write('a',i-1,' = ');Readln(G[i].hs);
G[i].bac:=i-1;
End;
If m>n Then For i:= 1 to m do
IF i<=n Then T[i].hs:=F[i].hs+G[i].hs Else T[i].hs:=G[i].hs
Else For i:= 1 to n do
IF i<=m Then T[i].hs:=F[i].hs+G[i].hs Else T[i].hs:=F[i].hs;
Write('Da thuc tong T(x) = ');
If m>n Then bacmax:=m Else bacmax:=n;
For i:=bacmax downto 1 do T[i].bac:=i-1;
For i:=bacmax downto 2 do
If (T[i].hs < 0) then
Write('(',T[i].hs,')x^',T[i].bac,' + ')
Else Write(T[i].hs,'x^',T[i].bac,' + ');
If T[1].hs<0 Then Write('(',t[1].hs,')') Else
Write(t[1].hs);
Readln
END
Program QuanLyHS;
Type Hocsinh = Record
ht: String[30];
ns: String[10];
dtoan,dvan,dnn:real;
td: real;
End;
Var hs: Array[1 100] of Hocsinh;
i,j,n,slg:Byte;
BEGIN
Writeln('Nhap danh sach Hoc Sinh:');
Write('Nhap so Hoc sinh (<=100), So HS = '); Readln(n); For i:= 1 to n do
With hs[i] do
Begin