Tam : ConTro; Begin Writeln'SAP XEP DIEM TANG DAN;'; Writeln'Giai thuat noi Buble';... TextcolorLightGreen; Writeln' Bam phim de ket thuc'; Readln END... If NOT TimDuoc then Writeln'
Trang 1Thư Viện Các Dạng Bài Tập Pascal của Tin Học 11 - Phần 1
For j := PhanTu DownTo i+1 Do
If a[j].Ten[1] < a[j-1].Ten[1] Then
Trang 2Tam : ConTro;
Begin
Writeln('SAP XEP DIEM TANG DAN);');
Writeln('Giai thuat noi Buble');
Trang 3If TenHang = DsTenHang[i] Then
Tong := Tong + (DonGia * Soluong);
Writeln(' +Tong so tien mua: ',DsTenHang[i]:10,' = ',tong:10:2);
Trang 4Writeln('-Ten sach: ',TenSach);
Writeln('-Tac gia : ',TacGia);
Writeln('-Nam Xuat ban: ',Namxb);
Writeln('-Nguoi muon : ',NguoiMuon);
Trang 5First, Last, Newp : ConTro;
Hoten1, Hoten2 : String[24]; i,TuoiMax,TuoiMin : Integer;
LuongMax, LuongMin,LuongTb : LongInt;
Trang 6Writeln('Nhan vien co tuoi lon nhat la: ',TuoiMax);
Writeln('Nhan vien co tuoi nho nhat la:',TuoiMin);
Writeln('Nhan vien: ',HoTen1,' ,co bac luong lon nhat: ',LuongMax:10); Writeln('+Nhan vien: ',HoTen2,' ,co bac luong nho nhat: ',LuongMin:10); Release(HeapTop);
Writeln('TINH DIEM VA XEP HANG);');
Writeln('Giai thuat noi Buble');
Writeln(' Hoc sinh : ',Hs[i].HoTen);
Writeln(' Nam sinh : ',Hs[i].NamSinh);
Writeln(' Diem trung binh ca nam : ',Hs[i].Tb:5:2);
Writeln(' Xep hang ca nam : ',Hang);
Trang 7New(Chuoi1);
New(Chuoi2);
Chuoi1^ := 'Giao trinh Turbo Pascal 7.0';
Chuoi2^ := 'Giao trinh FoxPro 2.6';
Writeln;
Writeln('NOI DUNG BAN DAU CUA 2 CHUOI');
Writeln(' -');
Writeln;
Writeln('-Chuoi thu nhat: ',Chuoi1^);
Writeln('-Chuoi thu hai : ',Chuoi2^);
Writeln('-Chuoi thu nhat: ',Chuoi1^);
Writeln('-Chuoi thu hai : ',Chuoi2^);
Trang 8Until Tam1 = Nil;
Writeln('Sau khi dao: ');
Trang 10Write('Nhap nua khong ? (c/k) ');
Trai := Nil; Phai := Nil;
New(P);
With P^ Do
Trang 12While (P <> Nil) And (P^.HoTen <> Nv.HoTen) Do
If NV.HoTen < P^.HoTen Then
Writeln('1-Khoi tao cay');
Writeln('2-Noi them vao cay');
Writeln('3-Xoa khoi cay');
Writeln('4-Tim kiem tren cay');
Writeln('5-Liet ke danh sach');
Writeln('6-Ket thuc chuong trinh');
Trang 13Writeln(' -');
Writeln;
ketThuc := False;
Repeat
Trang 14Writeln('Hien thi theo thu tu ABC ');
'6' : Begin
KET THUC CHUONG TRINH');
Writeln;
End;
Trang 17Write('-Nhap so kieu Word: ');
Trang 18SoHex[4]:= KyTuHe16[Lo(SoWord) AND $F];
Writeln('+So nguyen kieu Word = ',soWord);
Writeln('+Doi ra so he thap luc = $',SoHex);
Write('-Nhap so kieu Word: ');
Readln(SoWord);
SoBinary[0]:=#16;
For i:=15 DownTo 0 Do
If (SoWord AND (1 SHL i)) = (1 SHL i) Then SoBinary[16-i]:= KyTuHe2[1]
Else
SoBinary[16-i]:= KyTuHe2[0];
Writeln('+So nguyen kieu Word = ',soWord);
Writeln('+Doi ra so he nhi phan= B ',SoBinary); Writeln;
Writeln(' Bam phim <Enter> de ket thuc ');
Trang 22{Giai he phuong trinh}
Dt:= a[1,1]*a[2,2]-a[1,2]*a[2,1]; {Dt: Dinh thuc} Dtx:=c[1]*a[2,2]-c[2]*a[2,1];
Trang 24Writeln('+Chuoi ban dau : ',St1,' co: ',l:2,' ky tu');
Writeln(' Sau khi xoa ky tu trung nhau');
Writeln(' Chuoi con lai: ',St,' gom: ',l1:2,' ky tu');
Trang 27Write('-Nhap mot cau: ');
For i:=1 To (l Div 2) Do
If St[i] <> St[l-i+1] Then
Dung:=False;
If Dung Then
Writeln('+Chuoi nay doi xung')
Trang 31For i:=1 to Max-1 Do
For j:= i+1 To Max Do
Trang 32Writeln(' Bam phim <Enter> de ket thuc ');
For j:= spt Downto i+1 Do
If a[j] < a[j-1] Then
Begin
tam:=a[j];
a[j]:=a[j-1];
a[j-1]:=tam;
Trang 36Writeln(' Bam phim <Enter> de ket thuc ');
Trang 37Textcolor(LightGreen);
Writeln(' Bam phim <Enter> de ket thuc');
Readln
END
Trang 3850/Tìm 2 phần tử liên tiếp trong bảng X:
Trang 39Th31ngay: Set of byte = [1,3,5,7,8,10,12];
BaoLoi : Array[1 3] Of String[30] =('-Ban nhap sai ngay, thang', '-Thang nay khong co ngay 31','-thang 2 khong co ngay nay'); TYPE
Loi[1] := (NOT(Ng In Ngay)) OR (NOT (Th In Thang));
Loi[2] := (Ng = 31) AND (NOT (Th In Th31Ngay));
Nhuan := ((Nam Mod 4) = 0) AND ((Nam Mod 100) <> 0)
Trang 40Max = 50;
Td1='| -| -| -| -|';
Td2=#124 +' HO VA TEN ' + #124 + ' VAN ' + #124+ 'TOAN ' + #124 + ' LY |';
Trang 41Writeln(#124, HoTen, #32 :24 - Length(HoTen),
#124,Ngay,' / ',Thang,' / ',nam, #124);
Trang 42Writeln('-Tu thu: ',i);
Write(' +Nghia tieng Anh : ');
Readln(a[i].Anh);
Write(' +Nghia tieng Viet : ');
Readln(a[i].Viet);
End;
Trang 43If NOT TimDuoc then
Writeln('Tu nay khong co trong tu dien');
Trang 44Writeln('THANH TICH NAM: ',nam);
Writeln('Cua doi bong: ',TenDoi);
Writeln(' -');
Writeln;
Writeln('-Cau thu: ',Ten1,' co tuoi lon nhat: ',TuoiCao);
Writeln('-Cau thu: ',Ten2,' co tuoi nho nhat: ',TuoiThap);
Writeln;
Writeln('-Cau thu: ',Ten1,' Co ban thang nhieu nhat: ',ThangNhieu); Writeln('-Cau thu: ',Ten2,' Co ban thang it nhat: ',ThangIt); Writeln;
Writeln('-So ban thang trung binh cua toan doi: ',Round(Tb/n)); Readln
Val(Copy(St1, 1, i-1), TuSo, Result);
Val(Copy(St1, i+1, Length(St1)-i), MauSo, Result);
End;
i := Pos('/', St2);
Trang 45Val(Copy(St2, 1, i-1), TuSo, Result);
Val(Copy(St2, i+1, Length(St2)-i), MauSo, Result);
TuSo :=TuSo Div n;
MauSo := MauSo Div n;
Trang 46For j := PhanTu DownTo i+1 Do
If a[j].Ten[1] < a[j-1].Ten[1] Then
Trang 47Write('-Ten nguoi mua (go 0 de thoat): ');
If TenHang = DsTenHang[i] Then
Tong := Tong + (DonGia * Soluong);
Writeln(' +Tong so tien mua: ',DsTenHang[i]:10,' =
Trang 48Writeln('*Chon phuong phap do ?');
Write('+Duong kinh (go K), +Chu vi (go V): ');
#124 +' HO TEN VO CHONG '+
#124 +'SO CON'+#124;
Td3 ='| -| -| -|'; TYPE
GiaCanh = RECORD
HoTen :String[24];
Case GiaDinh : Boolean Of
True : (VoChong : String[24];
Trang 50Writeln('+Nhan vien co tuoi lon nhat la: ',TuoiMax);
Writeln('+Nhan vien co tuoi nho nhat la: ',TuoiMin);
Writeln('+Nhan vien: ',HoTen1,' co bac luong lon nhat: ',LuongMax:10:2); Writeln('+Nhan vien: ',HoTen2,' co bac luong nho nhat: ',LuongMin:10:2); Writeln('+Bac luong trung binh cua toan Cong Ty : ',LuongTb/n:10:2); Readln
Trang 51Writeln('-Ten sach: ',TenSach);
Writeln(' +Tac gia : ',TacGia);
Writeln(' +Nam xuat ban : ',NamXb);
Writeln('SAP XEP DIEM TANG DAN);');
Writeln('Giai thuat noi Buble');
Trang 52Writeln('TINH DIEM VA XEP HANG);');
Writeln('Giai thuat noi Buble');
Trang 53If (i > 1) And (Hs[i].Tb <> Hs[i-1].Tb) Then
Hang := i;
Writeln(' .Hoc sinh : ',Hs[i].HoTen);
Writeln(' .Nam sinh : ',Hs[i].NamSinh);
Writeln(' .Diem trung binh ca nam : ',Hs[i].Tb:5:2); Writeln(' .Xep hang ca nam : ',Hang);
Writeln('*Duong tron thu nhat');
Write(' +Ban kinh: ');
Writeln('*Duong tron thu hai');
Write(' +Ban kinh: ');
If (Kc = 0) AND (Hieu = 0) Then
Writeln('-Hai duong tron trung nhau')
Else
If (Hieu > Kc) Then
Writeln('-Hai duong tron long nhau')
Else
If (Tong = Kc) OR (Hieu = Kc) Then
Writeln('-Hai duong tron tiep xuc nhau')
Else
If (Tong > Kc) AND (Hieu < Kc) Then
Writeln('-Hai duong tron cat nhau')
Trang 54Td1 = '|========================|======|======|======|'; Td2 = '| HO VA TEN | DIEM | TL1 | TL2 |'; Td3 = '| -| -| -| -|'; Td4 = '| -|'; TYPE
DiemThi = RECORD
HoTen : String[24];
Diem1 : Real;
Case ThiLai1 : Boolean Of
True : (Diem2 : Real;
Case ThiLai2 : Boolean Of
True : (Diem3 : Real));
Writeln(#32:20,Td4);
Readln
END
69/Tính đa thức:
Trang 55Writeln('Hay nhap 2 da thu A(x), B(x) voi');
Write('-Bac A (phai <= ',MaxOrder,' ) = ');
Readln(A.Bac);
If A.Bac > MaxOrder Then
Writeln(#7,'Bac A phai <= ',MaxOrder,' ! nhap lai '); Write('-Bac B (phai <= ',MaxOrder,' ) = ');
Readln(B.Bac);
If B.Bac > MaxOrder Then
Writeln(#7,'Bac B phai <= ',MaxOrder,' ! nhap lai '); Until (A.Bac <= MaxOrder) And (B.Bac <= MaxOrder);
Writeln('Nhap ca he so cua da thuc A: ');
For i := A.Bac DownTo 0 Do
Writeln('Nhap ca he so cua da thuc B: ');
For i := B.Bac DownTo 0 Do
Trang 56If P.Bac < Q.Bac Then
For i := P.Bac + 1 To Q.Bac Do
P.Heso[i] := 0;
If P.Bac > Q.Bac Then
For i := Q.Bac + 1 To P.Bac Do
For i := P.Bac-Q.bac Downto 0 Do
Trang 58ConTro^ := 'Turbo Pascal';
Writeln('-Du lieu cua bien ma con tro dang tro toi la: ',ConTro^); Writeln;
Write(' Bam <Enter> de ket thuc');
Trang 60Writeln(' 1.Tach cau');
Writeln(' 2.Nen cau');
Writeln(' 3.Thay the');
Writeln(' 0.Ket thuc');
Trang 61New(Chuoi1);
New(Chuoi2);
Chuoi1^ := 'Giao trinh Turbo Pascal 7.0';
Chuoi2^ := 'Giao trinh FoxPro 2.6';
Writeln;
Writeln('NOI DUNG BAN DAU CUA 2 CHUOI');
Writeln(' -');
Writeln;
Writeln('-Chuoi thu nhat: ',Chuoi1^);
Writeln('-Chuoi thu hai : ',Chuoi2^);
Writeln('-Chuoi thu nhat: ',Chuoi1^);
Writeln('-Chuoi thu hai : ',Chuoi2^);
Trang 65Var
i : Word;
Begin
Writeln('NHAP CAC SO');
Writeln('Neu khong nhap, go so 0');
Trang 68{ -} Procedure TaoSo;
Trang 70Writeln(' -Danh sach thu nhat ( so le ) ');
Trang 73While (Tam <> Nil) And (Not TimThay) Do
If Tam^.So = So1 Then
Trang 7587/Đảo ngược danh sách:
Until Tam1 = Nil;
Writeln('Sau khi dao: ');
Trang 78Writeln('DUYET DANH SACH THEO 2 CHIEU');
Writeln('Tu dau den cuoi danh sach');
Writeln('Tu cuoi len dau danh sach');
Trang 81Writeln(' DANH SACH MOC NOI');
Writeln(' Them vao cuoi, xoa dau danh sach');
Trang 83Begin
Writeln;
If First = Nil Then
Writeln('Danh sach rong')
Writeln('Chu y: Danh sach LIFO hoac FILO');
Writeln('Ban ghi nhap vao dau nhung xuat ra cuoi'); Writeln('1-KHOI TAO DANH SACH');
Writeln('2-NOI THEM VAO DANH SACH');
Writeln('3-XOA KHOI DANH SACH');
Trang 84Writeln('4-TIM KIEM TRONG DANH SACH');
Writeln('5-LIET KE DANH SACH');
Writeln('6-DAO NGUOC DANH SACH');
Writeln('7-KET THUC CHUONG TRINH');
Trang 87Q1^.Phai := Q^.Trai; Q^.Trai := P^.Trai;
While (P <> Nil) And (P^.HoTen <> Nv.HoTen) Do
If NV.HoTen < P^.HoTen Then
Writeln('1-Khoi tao cay');
Writeln('2-Noi them vao cay');
Writeln('3-Xoa khoi cay');
Writeln('4-Tim kiem tren cay');
Writeln('5-Liet ke danh sach');
Writeln('6-Ket thuc chuong trinh');
Trang 89Writeln('5-LIET KE NOI DUNG CAY');
Writeln('Hien thi theo thu tu ABC ');
Trang 90Write('-Nhap so thu nhat: ');
Write('-Nhap so thu nhat: ');
Trang 91Constructor Init(InitStr : String);
Destructor Done; Virtual;
Procedure Print; Virtual;
Assign(F,'BAITHO.TXT'); {Gan bien tap tin}
Reset(F); {Mo tap tin da co tren dia }
While Not EOF(F) Do
Trang 92Constructor Init(InitI : Integer);
Procedure Print; Virtual;
End;
RealObjPtr = ^RealObj;
RealObj = OBJECT(Item)
R : Real;
Constructor init(InitReal : Real);
Procedure Print; Virtual;
End;
StrObjPtr = ^StrObj;
StrObj = OBJECT(Item)
St : ^String;
Constructor Init(InitStr : String);
Destructor Done; Virtual;
Procedure Print; Virtual;
Trang 93StartAngle, EndAngle : Integer;
Constructor Init(InitX,InitY,InitRadius, InitS,InitE:Integer); Procedure Show; Virtual;
Procedure Hide; Virtual;
Trang 95TuSo := TuSo Div u;
MauSo := MauSo Div u;