Tin k9-NBK Quảng Nam
Chào mừng bạn đến với diễn đàn Tin k9 Nbk Quảng Nam

Join the forum, it's quick and easy

Tin k9-NBK Quảng Nam
Chào mừng bạn đến với diễn đàn Tin k9 Nbk Quảng Nam
Tin k9-NBK Quảng Nam
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.
Similar topics

bai tap phan 4

Go down

bai tap phan 4 Empty bai tap phan 4

Bài gửi by Profession_jamy Fri Oct 29, 2010 6:05 pm

Program Tao_Bien_Dong;
TYPE
Str10 = String[10];
PStr = ^Str10;
VAR
Newp : PStr;
i : Integer;
Begin
Writeln('TAO BIEN DONG VA THEO DOI KICH THUOC BO NHO');
Writeln('-------------------------------------------');
Writeln;
Writeln('-Bo nho ban dau la: ',MemAvail,' bytes');
Writeln;
For i := 1 To 10 Do
Begin
New(Newp);
Writeln(' +Sau khi tao bien thu: ',i:2,' bo nho con lai la: ',MemAvail,' bytes');
End;
Writeln;
Writeln('-Bo nho bay gio la : ',MemAvail,' bytes');
Writeln;
Writeln(' Bam <Enter> de ket thuc');
Readln
End.
(==================================================) tongue
Program Tao_Bien_Dong;
TYPE
ConTro = ^BanGhi;
BanGhi = RECORD
HoTen : String[24];
Tuoi : Byte;
DiaChi : String[30];
Next : ConTro;
End;
VAR
Newp : ConTro;
HeapTop : Pointer;
i : Integer;
Begin
Writeln('TAO VA XOA CAC BIEN DONG');
Writeln('------------------------');
Writeln;
Writeln('-Bo nho ban dau la: ',MemAvail,' bytes');
Mark(HeapTop);
Writeln('-Kich thuoc cua ban ghi la: ',Sizeof(BanGhi),' bytes');
For i := 1 To 10 Do
Begin
New(Newp);
Writeln(' +Sau khi tao bien thu: ',i:2,' bo nho con lai: ',MemAvail,' Bytes');
End;
Writeln;
Writeln('-Bo nho bay gio la: ',MemAvail,' bytes');
Writeln;
Writeln(' Bam <Enter> de xoa cac bien dong');
Readln;
Release(HeapTop);
Writeln;
Writeln('-Bo nho bay gio lai la: ',MemAvail,' bytes');
Writeln;
Writeln(' Bam <Enter> de ket thuc');
Readln
End.
(==============================================) tongue
Program Tao_Bien_Dong;
TYPE
Str10 = String[10];
PStr = ^Str10;
VAR
Newp : Array[1..10] Of PStr;
i : Integer;
Begin
Writeln('TAO BIEN DONG VA THEO DOI KICH THUOC BO NHO');
Writeln('-------------------------------------------');
Writeln;
Writeln('-Bo nho ban dau la: ',MemAvail,' bytes');
Writeln;
For i := 1 To 10 Do
Begin
New(Newp[i]);
Writeln(' +Sau khi tao bien thu: ',i:2,' bo nho con lai la: ',MemAvail,' bytes');
End;
Writeln;
Writeln('Bo nho bay gio la: ',MemAvail,' bytes');
Writeln;
Writeln(' Bam <Enter> de bat dau xoa lan luot tung bien dong');
Readln;
For i := 1 To 10 Do
Begin
Dispose(Newp[i]);
Writeln('+Xoa bien thu: ',i:2,' bo nho tro la: ',Memavail,' bytes');
Writeln(' Bam <Enter> de xoa tiep');
Readln;
End;
Writeln;
Writeln('-Bo nho bay gio la : ',MemAvail,' bytes');
Writeln;
Writeln(' Bam <Enter> de ket thuc');
Readln
End.
(====================================) tongue
Program Tao_Con_Tro;
VAR
ConTro : ^String;
Begin
Writeln('TAO BIEN DONG TAI DIA CHI CHO TRUOC');
Writeln('-----------------------------------');
Writeln;
ConTro :=Ptr($B800,$0004);
ConTro^ := 'Turbo Pascal';
Writeln('-Du lieu cua bien ma con tro dang tro toi la: ',ConTro^);
Writeln;
Write(' Bam <Enter> de ket thuc');
Readln
End.
(==============================================) tongue
Program Tinh_Diem;
TYPE
ConTro = ^BanGhi;
BanGhi = RECORD
HoTen : String[24];
Tuoi : Byte;
Diem : Real;
End;
VAR
Newp : ConTro;
i,n : Integer;
d,tong,tb :Real;
Begin
Writeln('TINH DIEM TRUNG BINH CUA LOP');
Writeln('----------------------------');
Writeln;
Tong := 0.0;
Write('-Lop co bao nhieu nguoi: ');
Readln(n);
Writeln;
For i := 1 To N Do
Begin
New(Newp);
With Newp^ Do
Begin
Write(' +Ho ten nguoi thu: ',i:2,' la: ');
Readln(HoTen);
Write(' +Tuoi : ');
Readln(Tuoi);
Write(' +Diem : ');
Readln(Diem);
d := Diem;
Tong :=Tong + d;
End;
Tb := tong / n;
End;
Writeln('-Diem trung binh cua lop la: ',Tb:5:2);
Readln
End.
(==========================================) tongue
Program Sap_Xep_Theo_Ten;
TYPE
ConTro = ^HoSo;
HoSo = RECORD
HoLot : String[17];
Ten : String[7];
Diem : Real;
End;
VAR
a : Array[1..50] Of HoSo;
Tam : ConTro;
i,j,PhanTu : Integer;
BEGIN
PhanTu := 0;
New(Tam);
With Tam^ Do
Repeat
Write('-Nhap ho lot ( 0 de ket thu): ');
Readln(HoLot);
If HoLot <> '0' Then
Begin
Write('-Nhap ten : ');
Readln(Ten);
Write('-Nhap diem : ');
Readln(Diem);
PhanTu := PhanTu + 1;
a[PhanTu] := Tam^;
End;
Until HoLot = '0';
For i := 1 To PhanTu - 1 Do
For j := PhanTu DownTo i+1 Do
If a[j].Ten[1] < a[j-1].Ten[1] Then
Begin
Tam^ := a[j];
a[j] := a[j-1];
a[j-1] := Tam^;
End;
Writeln;
Writeln('------------------------------------');
Writeln('| HO VA TEN | DIEM |');
Writeln('|--------------------------|-------|');
For i := 1 To PhanTu Do
With a[i] Do
Writeln('|',HoLot:17,' ',Ten:7,' |',Diem:5:1,' |');
Writeln('------------------------------------');
Readln
END.
(=================================================) tongue
Program Sap_Xep_Diem_Tang;
TYPE
ConTro = ^Lop;
Lop = RECORD
HoTen : String[24];
NamSinh : Integer;
DiemTb : Real;
End;
VAR
Hs : Array[1..50] Of lop;
i,j,n : Integer;
Tam : ConTro;
Begin
Writeln('SAP XEP DIEM TANG DAN);');
Writeln('Giai thuat noi Buble');
Writeln('--------------------');
New(Tam);
Writeln;
Write('-So hoc sinh: ');
Readln(n);
For i := 1 To N Do
With Hs[i] Do
Begin
Write('+Ho ten hoc sinh thu: ',i:2,' la: ');
Readln(Hoten);
Write('+Nam sinh: ');
Readln(NamSinh);
Write('+Diem trung binh: ');
Readln(DiemTb);
End;
For i := 1 To N-1 Do
For j := 1 To N-i Do
If Hs[j].DiemTb > Hs[j+1].DiemTb Then
Begin
Tam^ := Hs[j];
Hs[j] := Hs[j+1];
Hs[j+1] := Tam^;
End;
Writeln;
Writeln(' DANH SACH SAP XEP');
Writeln;
For i := 1 To N Do
With Hs[i] Do
Writeln('-',HoTen:24,' :',Namsinh:4,' , ',DiemTb:5:2);
Readln
End.
(============================================) tongue
Program Hoa_Don;
CONST
Max = 100;
TYPE
ConTro = ^HoaDon;
HoaDon = RECORD
NguoiMua : String[24];
TenHang : String[10];
DonGia : Real;
SoLuong : Integer;
End;
VAR
a : Array[1..Max] Of HoaDon;
DsTenHang : Array[1..Max] Of String[10];
Tam : ConTro;
Spt, SoTenHang, i, j : Integer;
Tong : Real;
KiemTra : Boolean;
BEGIN
Writeln('HOA DON BAN HANG');
Writeln('----------------');
Writeln;
Spt := 0;
New(Tam);
With Tam^ do
Repeat
Write('-Ten nguoi mua (go 0 de thoat): ');
Readln(NguoiMua);
If NguoiMua <> '0' Then
Begin
Write('-Ten hang: ');
Readln(TenHang);
Write('-Don gia : ');
Readln(DonGia);
Write('-So luong: ');
Readln(SoLuong);
Spt := Spt + 1;
a[Spt] := Tam^;
End;
Until NguoiMua = '0';
SoTenHang := 0;
For i := 1 To Spt Do
Begin
KiemTra :=False;
For j := 1 To SoTenHang Do
If DsTenHang[j] = a[i].TenHang Then
KiemTra := True;
If NOT KiemTra Then
Begin
SoTenHang :=SoTenHang + 1;
DsTenHang[SoTenHang] := a[i].TenHang;
End;
End;
Writeln;
For i := 1 To SoTenHang Do
Begin
Tong := 0;
For j := 1 To Spt Do
With a[j] Do
If TenHang = DsTenHang[i] Then
Tong := Tong + (DonGia * Soluong);
Writeln(' +Tong so tien mua: ',DsTenHang[i]:10,' = ',tong:10:2);
End;
Readln
END.
(=============================================) tongue
Program Thu_Vien;
Uses Crt;
TYPE
ConTro = ^ThuVien;
ThuVien = RECORD
TenSach : String[30];
TacGia : String[24];
Namxb : Byte;
NguoiMuon: String[24];
Next : ConTro;
End;
VAR
First,Last,Newp : ConTro;
ds,dm : Integer;
Ch : Char;
HeapTop : ^Integer;
BEGIN
ClrScr;
GotoXY(5,25);
Write('Bam <Enter> de tiep tuc, bam <Esc> de thoat');
Window(1,1,80,24);
Writeln('QUAN LY THU VIEN');
Writeln('----------------');
Writeln;
ds := 0;
dm := 0;
First := Nil;
Mark(Heaptop);
Repeat
New(Newp);
With Newp^ Do
Begin
Write('-Ten sach : ');
Readln(TenSach);
If TenSach <> '' Then
Begin
ds := ds + 1;
Write('-Tac Gia: ');
Readln(TacGia);
Write('-Nam xuat ban : ');
Readln(Namxb);
Write('-Nguoi muon (Khong co ai muon thi bam <Enter>: ');
Readln(NguoiMuon);
If NguoiMuon <> '' Then
dm := dm + 1;
End;
End;
If First = Nil Then
First := Newp
Else
Last^.Next := Newp;
Last :=Newp;
Last^.Next := Nil;
Ch := ReadKey;
Until Ch = #27;
ClrScr;
Writeln('QUAN LY THU VIEN');
Writeln('----------------');
While First <> Nil Do
With First^ Do
Begin
Writeln('-Ten sach: ',TenSach);
Writeln('-Tac gia : ',TacGia);
Writeln('-Nam Xuat ban: ',Namxb);
Writeln('-Nguoi muon : ',NguoiMuon);
First := Next;
End;
Writeln;
Writeln('+Tong so sach: ',Ds);
Writeln('+So sach cho muon: ',Dm);
Release(HeapTop);
Writeln;
Write(' Bam <Esc> de thoat');
Readln
END.
(===================================================) tongue
Program Ho_So;
Uses Crt;
TYPE
ConTro = ^HoSo;
HoSo = RECORD
HoTen : String[24];
Tuoi : Integer;
Luong : LongInt;
Next : ConTro;
End;
VAR
First, Last, Newp : ConTro;
Hoten1, Hoten2 : String[24];
i,TuoiMax,TuoiMin : Integer;
LuongMax, LuongMin,LuongTb : LongInt;
Ch : Char;
HeapTop :^Integer;
Begin
ClrScr;
Writeln('HO SO NHAN VIEN');
Writeln('---------------');
Writeln;
GoToXY(5,25);
Write('Bam <Enter> de tiep tuc, bam <Esc> de thoat ');
Window(1,2,80,25);
First :=Nil;
Mark(HeapTop);
i := 0;
Repeat
i := i + 1;
New(Newp);
With Newp^ Do
Begin
Write('-Ho ten nhan vien thu: ',i:2,' la= ');
Readln(HoTen);
Write('-Tuoi = ');
Readln(Tuoi);
Write('-Bac luong = ');
Readln(Luong);
TuoiMax := Tuoi;
TuoiMin := Tuoi;
LuongMax := Luong;
LuongMin := Luong;
HoTen1 := HoTen;
HoTen2 := HoTen;
End;
If First = Nil Then
First := Newp
Else
Last^.Next := Newp;
Last := Newp;
Last^.Next := Nil;
Ch := ReadKey;
Until Ch = #27;
Writeln;
While First <> Nil Do
With First^ Do
Begin
If Tuoi > TuoiMax Then
TuoiMax := Tuoi
Else
If Tuoi < TuoiMin Then
TuoiMin := Tuoi;
If Luong > LuongMax Then
Begin
LuongMax := Luong;
HoTen1 := HoTen;
End
Else
If Luong < LuongMin Then
Begin
LuongMin := Luong;
HoTen2 := HoTen;
End;
First := Next;
End;
Writeln;
Writeln('+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;
Write(' Bam <Enter> de ket thuc ');
Readln
End.

(============================================) tongue
Program Gia_Canh;
Uses Crt;
CONST
Td1 ='|========================|========================|======|';
Td2 =#124 +' HO VA TEN '+
#124 +' HO TEN VO CHONG '+
#124 +'SO CON'+#124;
Td3 ='|------------------------|------------------------|------|';
TYPE
ConTro = ^GiaCanh;
GiaCanh = RECORD
HoTen :String[24];
Next : ConTro;
Case GiaDinh : Boolean Of
True : (VoChong : String[24];
SoCon : Byte);
End;
VAR
First, Last, Newp : ConTro;
i : Integer;
Ch : Char;
HeapTop : ^Integer;
BEGIN
ClrScr;
GotoXY(5,25);
Write('Bam <Enter> de tiep tuc, bam <Esc> de thoat');
Window(1,2,80,25);
Writeln('HO SO GIA CANH');
Writeln('--------------');
Writeln;
First := Nil;
Mark(HeapTop);
i := 0;
Repeat
i := i + 1;
New(Newp);
With Newp^ Do
Begin
Write('+Ho va ten nhan vien thu: ',i:2,' la= ');
Readln(HoTen);
Write('+Co gia dinh chua (C/K) ');
Readln(Ch);
Ch := UpCase(Ch);
If Ch = 'C' Then
Begin
GiaDinh := True;
Write(' +Ho ten vo/chong: ');
Readln(VoChong);
Write(' +So con : ');
Readln(SoCon);
End
Else
GiaDinh := False;
End;
If First = Nil Then
First := Newp
Else
Last^.Next := Newp;
Last := Newp;
Last^.Next := Nil;
Ch := ReadKey;
Until Ch = #27;
Writeln;
ClrScr;
Writeln(#32:25,'HOAN CANH GIA DINH NHAN VIEN');
Writeln(#32:12,Td1);
Writeln(#32:12,Td2);
Writeln(#32:12,Td3);
While First <> Nil Do {Xuat du lieu }
With First^ Do
Begin
Write(#32:12);
Write(#124,HoTen,#32:24-Length(HoTen));
If GiaDinh Then
Begin
Write(#124,VoChong,#32:24-Length(VoChong));
Writeln(#124,SoCon:6,#124);
End
Else
Begin
Write(#124,#32:24);
Writeln(#124,#32:6,#124);
End;
First := Next;
End;
Release(HeapTop);
Writeln(#32:12,Td1);
Readln
END.
((---------------------------------------------------------------)) tongue
Program Tinh_Diem_Xep_Hang;
TYPE
ConTro = ^Lop;
Lop = RECORD
HoTen : String[24];
NamSinh : Integer;
Tb1,Tb2,Tb : Real;
End;
VAR
Hs : Array[1..50] Of lop;
i,j,n,Hang: Integer;
Tam : ConTro;
Begin
Writeln('TINH DIEM VA XEP HANG);');
Writeln('Giai thuat noi Buble');
Writeln('--------------------');
Writeln;
New(Tam);
Write('-So hoc sinh: ');
Readln(n);
For i := 1 To N Do
With Hs[i] Do
Begin
Write(' +Ho ten hoc sinh thu: ',i:2,' la: ');
Readln(Hoten);
Write(' +Nam sinh: ');
Readln(NamSinh);
Write(' +Diem trung binh hoc ky 1: ');
Readln(Tb1);
Write(' +Diem trung binh hoc ky 2: ');
Readln(Tb2);
Tb :=(Tb1 + Tb2)/2;
Writeln;
End;
For i := 1 To N-1 Do
For j := 1 To N-i Do
If Hs[j].Tb < Hs[j+1].Tb Then
Begin
Tam^ := Hs[j];
Hs[j] := Hs[j+1];
Hs[j+1] := Tam^;
End;
Writeln;
Writeln(' DANH SACH XEP HANG');
Writeln;
Hang := 1;
For i := 1 To N Do
Begin
If (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);
End;
Readln
End.
(_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_) tongue
Profession_jamy
Profession_jamy
Ma cấp II
Ma cấp II

Tổng số bài gửi : 132
Join date : 25/10/2010
Age : 44
Đến từ : Tamky

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết