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.

bai tap phan 3 tt

4 posters

Go down

bai tap phan 3 tt Empty bai tap phan 3 tt

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

Program Gia_Canh;
CONST
Max = 100;
Td1 ='|========================|========================|======|';
Td2 =#124 +' HO VA TEN '+
#124 +' HO TEN VO CHONG '+
#124 +'SO CON'+#124;
Td3 ='|------------------------|------------------------|------|';
TYPE
GiaCanh = RECORD
HoTen :String[24];
Case GiaDinh : Boolean Of
True : (VoChong : String[24];
SoCon : Byte);
End;
VAR
Hsgc :Array[1..Max] Of GiaCanh;
n, i : 1..Max;
Ch : Char;
BEGIN
Writeln('HO SO GIA CANH');
Writeln('--------------');
Writeln;
Write('-So luong nhan vien: ');
Readln(n);
For i := 1 To N Do {Nhap du lieu}
With Hsgc[i] 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;
Writeln;
Writeln(#32:25,'HOAN CANH GIA DINH NHAN VIEN');
Writeln(#32:12,Td1);
Writeln(#32:12,Td2);
Writeln(#32:12,Td3);
For i := 1 To N Do {Xuat du lieu }
With Hsgc[i] 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;
End;
Writeln(#32:12,Td1);
Readln
END.
(========================================================)
Program Ho_So;
CONST
Max = 100;
TYPE
Str = String[24];
HoSo = RECORD
HoTen : Str;
Tuoi : Integer;
Luong : Real;
End;
CongTy = Array[1..Max] Of HoSo;
VAR
Hoten1, Hoten2 : Str;
i,n,TuoiMax,TuoiMin : Integer;
LuongMax, LuongMin,LuongTb : Real;
Nv : CongTy;
Begin
Writeln('HO SO NHAN VIEN');
Writeln('---------------');
Writeln;
Write('-Co bao nhieu nguoi: ');
Readln(n);
For i := 1 To N Do
With Nv[i] Do
Begin
Write('-Ho ten nhan vien thu: ',i:2,' la= ');
Readln(HoTen);
Write('-Tuoi = ');
Readln(Tuoi);
Write('-Bac luong = ');
Readln(Luong);
End;
TuoiMax := Nv[1].Tuoi;
TuoiMin := Nv[1].Tuoi;
LuongMax := Nv[1].Luong;
LuongMin := Nv[1].Luong;
HoTen1 := Nv[1].HoTen;
HoTen2 := Nv[1].HoTen;
LuongTb := Nv[1].Luong;
For i := 2 To N Do
Begin
If Nv[i].Tuoi > TuoiMax Then
TuoiMax := Nv[i].Tuoi
Else
If Nv[i].Tuoi < TuoiMin Then
TuoiMin := Nv[i].Tuoi;
If Nv[i].Luong > LuongMax Then
Begin
LuongMax := Nv[i].Luong;
HoTen1 := Nv[i].HoTen;
End
Else
If Nv[i].Luong < LuongMin Then
Begin
LuongMin := Nv[i].Luong;
HoTen2 := Nv[i].HoTen;
End;
LuongTb := LuongTb + Nv[i].Luong;
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: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
End.

(=============================================)
Program Thu_vien;
CONST
Max = 100;
TYPE
ThuVien = RECORD
TenSach : String[30];
TacGia : String[24];
NamXb : 1900..1999;
NguoiMuon : String[24];
End;
VAR
Sach : Array[1..Max] Of ThuVien;
i, n, x : Integer;
Begin
Writeln('QUAN LY SACH CUA THU VIEN');
Writeln('-------------------------');
Write('-So luong sach: ');
Readln(n);
For i := 1 To N Do
With Sach[i] Do
Begin
Write('+Ten sach : ');
Readln(TenSach);
Write('+Tac gia : ');
Readln(TacGia);
Write('+Nam Xuat ban : ');
Readln(NamXb);
Write('+Nguoi muon (Neu khong co ai muon thi bam <Enter>: ');
Readln(NguoiMuon);
End;
Writeln;
x := 0;
For i := 1 To N Do
With Sach[i] Do
Begin
Writeln('-Ten sach: ',TenSach);
Writeln(' +Tac gia : ',TacGia);
Writeln(' +Nam xuat ban : ',NamXb);
If NguoiMuon <> ' ' Then
Begin
Writeln(' +Nguoi muon : ',NguoiMuon);
x := x + 1;
End;
End;
Writeln;
Writeln('+So sach da cho muon: ',x,' quyen');
Readln
End.
(==================================================)
Program Sap_Xep_Diem_Tang;
TYPE
Lop = RECORD
HoTen : String[24];
NamSinh : Integer;
DiemTb : Real;
End;
VAR
Hs : Array[1..50] Of lop;
i,j,n : Integer;
Tam : Lop;
Begin
Writeln('SAP XEP DIEM TANG DAN);');
Writeln('Giai thuat noi Buble');
Writeln('--------------------');
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.
(========================================)
Program Tinh_Diem_Xep_Hang;
TYPE
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 : Lop;
Begin
Writeln('TINH DIEM VA XEP HANG);');
Writeln('Giai thuat noi Buble');
Writeln('--------------------');
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 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.
(=============================================)
Program Tinh_Diem_Xep_Hang_Hoc_ky;
TYPE
Lop = RECORD
HoTen : String[24];
V,T,L,H,Nn,Tb : Real;
End;
VAR
Hs : Array[1..50] Of lop;
i,j,n,Hang: Integer;
Tam : Lop;
Begin
Writeln('TINH DIEM VA XEP HANG);');
Writeln('Giai thuat noi Buble');
Writeln('--------------------');
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(' +Diem mon Van: ');
Readln(V);
Write(' +Diem mon Toan: ');
Readln(T);
Write(' +Diem mon Ly: ');
Readln(L);
Write(' +Diem mon Hoa: ');
Readln(H);
Write(' +Diem mon Ngoai ngu: ');
Readln(Nn);
Tb :=((V*3 + T*3)+(L*2 + H*2 + Nn*2)) /12;
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(' .Diem trung binh ca nam : ',Hs[i].Tb:5:2);
Writeln(' .Xep hang ca nam : ',Hang);
End;
Readln
End.
(=======================================)
Program Sap_Xep_Tuoi;
TYPE
Ngay_Sinh = RECORD
Ngay,Thang,Nam : Integer;
End;
CongTy = RECORD
HoTen : String[24];
NgaySinh : Ngay_Sinh;
End;
VAR
i,j,n : Integer;
Tam : CongTy;
Nv : Array[1..100] Of CongTy;
Begin
Writeln('SAP XEP THEO TUOI');
Writeln('-----------------');
Writeln;
Write('-So nhan vien: ');
Readln(n);
For i := 1 To N Do
With Nv[i] Do
Begin
Write('-Ho ten nhan vien thu: ',i,' la: ');
Readln(HoTen);
Writeln('-Nhap ngay, thang, nam sinh');
With NgaySinh Do
Begin
Write(' +Ngay : ');
Readln(ngay);
Write(' +Thang: ');
Readln(Thang);
Write(' +Nam : ');
Readln(Nam);
End;
End;
For i := 1 To N-1 Do
For j := 1 To N - i Do
If (Nv[j].Ngaysinh.Nam > Nv[j+1].NgaySinh.Nam) OR
((Nv[j].Ngaysinh.Nam = Nv[j+1].NgaySinh.Nam) AND
(Nv[j].Ngaysinh.Thang > Nv[j+1].NgaySinh.Thang)) OR
((Nv[j].Ngaysinh.Nam = Nv[j+1].NgaySinh.Nam) AND
(Nv[j].Ngaysinh.Thang = Nv[j+1].NgaySinh.Thang) AND
(Nv[j].Ngaysinh.Ngay > Nv[j+1].NgaySinh.Ngay)) Then
Begin
Tam := Nv[j];
Nv[j] := Nv[j+1];
Nv[j+1] := Tam;
End;
Writeln;
Writeln('DANH SACH NHAN VIEN XEP THEO TUOI GIAM DAN');
Writeln;
For i := 1 To N Do
With Nv[i] Do
Writeln('-',Hoten:24,' ,sinh ngay: ',NgaySinh.Ngay,'/',NgaySinh.Thang,'/',NgaySinh.Nam);
Readln
End.
(============================================)
Program Khao_Sat_Hai_Duong_Tron;
TYPE
DuongTron = RECORD
R : Real;
x, y : Real;
End;
VAR
Dt1, Dt2 : DuongTron;
Kc, Tong, Hieu : Real;
BEGIN
Writeln('KHAO SAT 2 DUONG TRON');
Writeln('---------------------');
Writeln;
Writeln('*Duong tron thu nhat');
Write(' +Ban kinh: ');
Readln(Dt1.R);
Write(' +Toa do x: ');
Readln(Dt1.x);
Write(' +Toa do y: ');
Readln(Dt1.y);
writeln;
Writeln('*Duong tron thu hai');
Write(' +Ban kinh: ');
Readln(Dt2.R);
Write(' +Toa do x: ');
Readln(Dt2.x);
Write(' +Toa do y: ');
Readln(Dt2.y);
Kc := Sqrt(Sqr(Dt1.x - Dt2.x) + Sqr(Dt1.y - Dt2.y));
Tong := Dt1.R + Dt2.R;
Hieu := ABS(Dt1.R - Dt2.R);
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')
Else
If (Tong < Kc) Then
Writeln('-Hai duong tron o ngoai nhau');
Readln
END.
(============================================)
Program Diem_Thi;
CONST
Max = 50;
Td1 = '|========================|======|======|======|';
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));
End;
VAR
Diem : Array[1..Max] Of DiemThi;
n, i : 1..Max;
BEGIN
Writeln('-So luong sinh vien: ');
Readln(n);
For i := 1 To N Do
With Diem[i] do
Begin
Write('+Ho va ten sinh vien thu: ',i,' = ');
Readln(HoTen);
Write('+Diem thi : ');
Readln(Diem1);
If Diem1 < 5 Then
Begin
ThiLai1 := True;
Write(' -Diem thi lai lan 1= ');
Readln(Diem2);
If Diem2 < 5 Then
Begin
ThiLai2 := True;
Write(' -Diem thi lai lan 2= ');
Readln(Diem3);
End;
End;
End;
Writeln(#32:34,'KET QUA HOC TAP');
Writeln(#32:20,Td1);
Writeln(#32:20,Td2);
Writeln(#32:20,Td3);
For i := 1 To N Do
With Diem[i] Do
Begin
Write(#32:20);
Write(#124,HoTen,#32:24-length(HoTen));
Write(#124,Diem1:6:1);
If Diem1 < 5 Then
Begin
Write(#124,Diem2:6:1);
If Diem2 < 5 Then
Writeln(#124,Diem3:6:1,#124)
Else
Writeln(#124,#32:6,#124);
End
Else
Writeln(#124,#32 :6, #124, #32 :6, #124);
End;
Writeln(#32:20,Td4);
Readln
END.
(================================================)
Program Da_Thuc;
CONST
MaxOrder = 10;
TYPE
PolyNom = RECORD
Bac : Integer;
HeSo : Array[0..MaxOrder] Of Real;
End;
VAR
A,B,C : Polynom;
i : Integer;
{-------------------------}
Procedure Nhap;
Var
i : Integer;
Begin
Repeat
Writeln;
Writeln('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);
For i := 0 To MaxOrder Do
Begin
A.Heso[i] :=0;
B.Heso[i] :=0;
End;
Writeln;
Writeln('Nhap ca he so cua da thuc A: ');
For i := A.Bac DownTo 0 Do
Begin
Write(' A[',i,'] = ');
Readln(A.heso[i]);
End;
Writeln;
Writeln('Nhap ca he so cua da thuc B: ');
For i := B.Bac DownTo 0 Do
Begin
Write(' B[',i,'] = ');
Readln(B.heso[i]);
End;
End;
{-------------------------}
Procedure Cong(A,B : Polynom; Var C : Polynom);
Var
BacMax :Integer;
Begin
If A.Bac < B.Bac Then
Begin
C.Bac :=B.Bac;
For i := A.Bac + 1 To B.Bac Do
A.Heso[i] := 0
End
Else
Begin
C.Bac := A.Bac;
For i := B.Bac + 1 To A.Bac Do
B.Heso[i] := 0
End;
C.Bac :=A.Bac;
For i := C.Bac To MaxOrder Do
C.Heso[i] := 0;
For i := 0 To C.Bac Do
C.Heso[i] := A.Heso[i] + B.Heso[i];
End;
{-------------------------}
Procedure Nhan(A,B : Polynom; Var C:Polynom);
Var
i,j : Integer;
Begin
For i := 0 To MaxOrder Do
C.Heso[i] := 0;
For i := 0 To A.Bac Do
For j := 0 To B.Bac Do
C.Heso[i+j] := C.Heso[i+j] + A.Heso[i] * B.Heso[j];
C.Bac :=A.Bac + B.Bac;
End;
{-------------------------}
procedure Chia(P, Q :Polynom);
Var
i,k,kk : Integer;
G : Polynom;
Begin
If 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
Q.Heso[i] := 0;
Write('-Hay cho he so trong ket qua phep chia: ');
Readln(kk);
Writeln('Da thuc ket qua xep theo so mu giam dan. ');
Writeln;
Write('Bac: ');
For k := 0 To kk Do
Write(P.Bac-Q.Bac-k:6);
Writeln;
Write('He so ');
For k := 0 To kk Do
Begin
G.Heso[k] := P.Heso[P.bac] / Q.Heso[Q.Bac];
If Frac(G.Heso[k]) =0 Then
Write(G.Heso[k]:6:0)
Else
Write(G.Heso[k]:6:0);
For i:= Q.Bac DownTo 1 Do
P.Heso[P.Bac-Q.Bac+i] := P.Heso[P.Bac+i-1] - G.Heso[k]*Q.Heso[i-1];
For i := P.Bac-Q.bac Downto 0 Do
P.Heso[i] :=0;
End;
End;
{--------------------------}
BEGIN
Nhap;
Nhan(A,B,C);
Writeln;
Writeln('Cac he so cua da thuc tich: ');
Write('Bac: ');
For i := 0 To C.Bac Do
Write(i:7);
Writeln;
Write('He so: ');
For i := 0 To C.Bac Do
If Frac(C.Heso[i]) = 0 Then
Write(C.Heso[i]:7:0)
Else
Write(C.Heso[i]:7:0);
Writeln;
Writeln;
Chia(A,B);
Readln
END.
I love you I love you I love you I love you I love you I love you I love you I love you I love you I love you I love you I love you
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

bai tap phan 3 tt Empty Re: bai tap phan 3 tt

Bài gửi by quyetchi Fri Oct 29, 2010 7:58 pm

post lên bài sau nhớ ghi đề nhé
quyetchi
quyetchi
Ma cấp I
Ma cấp I

Tổng số bài gửi : 67
Join date : 22/10/2010

Về Đầu Trang Go down

bai tap phan 3 tt Empty Re: bai tap phan 3 tt

Bài gửi by pvnhattoan Fri Oct 29, 2010 10:24 pm

Ông nội ni POST bài mô nhớ ghi đề chứ không tui trừ điểm đó nghe
pvnhattoan
pvnhattoan
Ma cấp I
Ma cấp I

Tổng số bài gửi : 59
Join date : 25/10/2010
Age : 29
Đến từ : 3ky, Quãng Nam

Về Đầu Trang Go down

bai tap phan 3 tt Empty Re: bai tap phan 3 tt

Bài gửi by Profession_jamy Sat Oct 30, 2010 9:19 am

co thang du` moj' hok biet bai` lam de mo:::::::::
trong bai giai co' de luon ruj
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

bai tap phan 3 tt Empty Re: bai tap phan 3 tt

Bài gửi by Admin Sat Oct 30, 2010 11:42 am

hỏi thiệt nghe trình độ bạn tới đâu mà dám post mấy bài ni lên hỉ
bik kiểu tập tin là chi ko hỉ
đừng post bài mà ko suy nghĩ hỉ
Admin
Admin
Admin
Admin

Tổng số bài gửi : 116
Join date : 08/09/2010
Age : 29

https://tink9.forumvi.net

Về Đầu Trang Go down

bai tap phan 3 tt Empty Re: bai tap phan 3 tt

Bài gửi by Admin Sat Oct 30, 2010 11:44 am

nếu như bạn hiểu dc bài ni thì tui thách bạn giải thích dc đó
Admin
Admin
Admin
Admin

Tổng số bài gửi : 116
Join date : 08/09/2010
Age : 29

https://tink9.forumvi.net

Về Đầu Trang Go down

bai tap phan 3 tt Empty Re: bai tap phan 3 tt

Bài gửi by Sponsored content


Sponsored content


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