Pascal1 Sp2
DE THI PASCAL HP1 Director by:Luu Cong Hoan BT 2.29.Giai PT ax+b>0Program BT229;Uses crt;Var a,b,x:real;Beginclrscr;writeln('Giai BPT dang ax+b>0');write('Nhap vao a,b= '); readln(a,b);if a=0 then if b>0 then writeln('Pt co vo so nghiem!') else write('Pt vo nghiem!');if a<>0 then if a>0 then writeln('Pt co nghien la x> ',-b/a:0:4); if a<0 then writeln('Pt co nghien la x< ',-b/a:0:4); end;readlnEnd.BT 2.20.Giai BPT bac hai : ax^2+bx+c >0Uses crt;Var a,b,c,d,x1,x2:real;Begin clrscr; writeln('Giai bpt ax^2+bx+c>0'); write('Nhap vao a,b,c:'); readln(a,b,c); d:=b*b-4*a*c; if a>0 then if d<0 then writeln('BPT co vo so nghien thuc'); if d=0 then writeln('BPT co nghien la moi x khac ',-b/(2*a):0:2); if d>0 then x1:=(-b-sqrt(d))/(2*a); x2:=(-b+sqrt(d))/(2*a); writeln(' BPT co nghiem x<',x1:0:2,' x>',x2:0:2); end; end; if a<0 then if d<=0 then writeln('BPT vo nghien!'); if d>0 then x1:=(-b+sqrt(d))/(2*a); x2:=(-b-sqrt(d))/(2*a); writeln('BPT co nghiem la: ',x1:0:2,' <x< ',x2:0:2); end; end; if a=0 then if b=0 then if c>0 then writeln('BPT co vo so nghiem x thuoc R') else writeln('BPT vo nghiem'); end; if b>0 then writeln('BPT co nghiem x >',-c/b:0:2); if b<0 then writeln('BPT co nghiem x <',-c/b:0:2); end; readlnEnd.BT 2.21.Giai PT bac 4: ax^4+bx^2+c =0 (a#0)Uses crt;Var a,b,c,d:real; t1,t2:real;Begin clrscr; repeat writeln('Giai pttp ax^4+bx^2+c=0 (a#0)'); write('nhap he so a,b,c='); readln(a,b,c); until a<>0; d:=b*b-4*a*c; if d<0 then writeln('pt vo nghiem'); if d=0 then if a*b>0 then writeln('pt vo nghiem'); if a*b=0 then writeln('pt co 1 nghiem x=0'); if a*b<0 then writeln('pt co 2 nghiem x1=',-sqrt(-b/2/a):0:2,'; x2=',sqrt(-b/2/a):0:2); end; if d>0 then t1:=(-b-sqrt(d))/2/a; t2:=(-b+sqrt(d))/2/a; if a>0 then if t2<0 then writeln('pt vo nghiem'); if t2=0 then writeln('pt co 1 nghiem x=0'); if t2>0 then if t1<0 then writeln('pt co 2 nghiem x1=',-sqrt(t2):0:2,'; x2=',sqrt(t2):0:2); if t1=0 then writeln('pt co 3 nghiem x1=0; x2=',-sqrt(t2):0:2,'; x3=',sqrt(t2):0:2); if t1>0 then writeln('pt co 4 nghiem x1=',-sqrt(t1):0:2,'; x2=',sqrt(t1):0:2); writeln(' x3=',-sqrt(t2):0:2,'; x4=',sqrt(t2):0:2); end; end; end; if a<0 then if t1<0 then writeln('pt vo nghiem'); if t1=0 then writeln('pt co 1 nghiem x=0'); if t1>0 then if t2<0 then writeln('pt co 2 nghiem x1=',-sqrt(t1):0:2,'; x2=',sqrt(t1):0:2); if t2=0 then writeln('pt co 3 nghiem x1=0; x2=',-sqrt(t1):0:2,'; x3=',sqrt(t1):0:2); if t2>0 then writeln('pt co 4 nghiem x1=',-sqrt(t1):0:2,'; x2=',sqrt(t1):0:2); writeln(' x3=',-sqrt(t2):0:2,'; x4=',sqrt(t2):0:2); end; end; end; end;readlnEnd.BT 2.22.Giai PT bac nhat 2 an : Var a,b,c,d,e,f,DT,Dx,Dy:real;Begin writeln('Giai HPT bac nhat 2 an so'); write('Nhap cac he so a,b,c='); readln(a,b,c); write('Nhap cac he so d,e,f='); readln(d,e,f); DT:=a*e-b*d; Dx:=c*e-b*f; Dy:=a*f-c*d; if DT=0 then Begin If Dx=Dy=0 then writeln('HPT co vo so nghiem!'); If (Dx<>0) or (Dy<>0) then writeln('HPT vo nghiem!'); End; if DT<>0 then writeln('HPT co ng ! x=',Dx/DT:0:2,' y=',Dy/DT:0:2); readlnEnd.BT 2.23. Cho 3 so thuc duong a,b,c. a, Ton tai hay khong, mot tam giac nhan chung lam 3 canh. b, Neu ton tai, xet tam giac do la vuong, nhon hay tu.Var a,b,c:real;Begin write('Nhap vao 3 so bat ki a,b,c='); readln(a,b,c); if (a>0) and (b>0) and (c>0) and (a+b>c) and (c+b>a) and (a+c>b) then writeln('Day la 3 canh cua mot tam giac'); if (a*a+b*b=c*c) or (a*a+c*c=b*b) or (c*c+b*b=a*a) then writeln('Day la tam giac vuong') else begin if (a*a+b*b>c*c) and (a*a+c*c>b*b) and (c*c+b*b>a*a) then writeln('Day la tam giac nhon') else writeln('Day la tam giac tu'); end; end else writeln('Day ko la 3 canh tam giac'); readlnEnd.BT 2.26. Cho so tu nhien n(n<=1000); a, Hoi n co bao nhieu chu so. b, Tinh tong cac chu so cua n. c, Tim chu so dau tien, cuoi cung cua n.Var n,:word; Scs,Tcs,Csd,Csc:byte;Begin repeatwriteln('Cho so tu nhien n(n<1000)); readln(n); until (n>0) and(n<1000);Csc:=n mod 10;Tcs:=0; Scs:=0;repeatScs:=Scs+1;Tcs:=Tcs+(n mod 10);Csc:= n mod 10;until n=0;writeln(n, 'co',Scs,'so chu so');writeln('Tong cac chu so la',Tcs);writeln('Chu so dau la',Csd,';Chu so cuoi',Csc);readlnEnd.BT 2.29. Nhap vao 1 day cac so nguyen tu ban phim cho den khi gap so 0, Sau do tinh tong cac so duong, trung binh cong cac so am.Var n,Tsd,Tsa:integer; d:byte;Begin writeln('Nhap vao 1 day cac so nguyen cho den khi gap so 0'); Tsd:=0; Tsa:=0; d:=0; repeat write('Nhap n='); readln(n); if n>0 then Tsd:=Tsd+n; if n<0 then Tsa:=Tsa+n; inc(d); end; until n=0; writeln('TongSoDuong la:',Tsd); if d>0 then writeln('TrungBinhCong so am la:',Tsa/d:0:2) else writeln('Khong co so am nao'); readlnEnd.BT 2.35. Cho so tu nhien h(1<h<25).Su dung ki tu '*' in ra ma hinh tam giac can dac voi chieu cao hVar i,j,h:byte;Begin writeln('In Tamgiac can boi * chieu cao h(1<h<25)'); repeat write('Nhap chieu cao h(1<h<25):'); readln(h); until (h>1) and (h<25); for i:=1 to h do gotoxy(41-i,i); {41 48} for j:=1 to 2*i-1 do write('*'); writeln; end; readln;End.BT 2.37. Btoan :"Tram trau tram co, trau dung an 5, trau nam an 3 lai nhai nghe hoa, ba con 1 bo"Var d,n,ng:byte; SoNg:word;Begin SoNg:=0; writeln('Trau dung Trau nam Nghe hoa'); for ng:=1 to 100 do for n:=1 to 34 do for d:=1 to 20 do if 5*d+3*n+ng/3=100 then writeln(d:4,n:4,ng:4); inc(SoNg); end; if SoNg>0 then writeln('So nghiem Btoan la',SoNg) else writeln('PT vo nghiem'); readlnEnd.BT 2.38. Tim nghiem ngduong PT:2x+5y=k, voi k nhap tu ban phim(k<=10000).Var k,x,y,SoNg:word;Begin writeln('Giai pt 2x+5y=k,k nhap tu ban phim'); repeat write('Nhap so tu nhien k(k<10000):'); readln(k); until (k>0) and (k<10000); SoNg:=0; for x:=1 to Trunc(k/2) do for y:=1 to Trunc(k/5) do if 2*x+5*y=k then write('(',x,',',y,') '); inc(SoNg); end; writeln; if SoNg>0 then writeln('So nghiem nguyen duong PT la:',SoNg) else writeln('PT vo nghiem nguyen duong'); readlnEnd.BT 2.39. Mot nguoi gui vao ngan hang so tien A dong.Lai xuat moi thang la 0.8%. De co B dong(B>A), can phai gui it nhat bao nhieu thang ?Const LS=0.008;Var A,B:real; t:word;Begin writeln('BToan gui tien tiet kiem'); write('Co bao nhieu?'); readln(A); write('Muon co bao nhieu?'); readln(B); t:=0; while A<B do A:=A*LS; inc(t); end; writeln('Can gui it nhat la ',t,' thang'); writeln('Bam phim Enter de ket thuc!'); readlnEnd.BT 2.40. Mot nguoi gui vao ngan hang so tien A dong ,loai co ki han 3 thang (tron 3 thang tinh lai 1 lan) voi lai suat moi thang la 1.0%. Hoi sau t thang nguoi do nhan duoc bao nhieu tien?Const LS=0.01;Var A: real; i,t: word;Begin writeln('Lai suat gui tiet kiem co ky han'); write('Co bao nhieu?'); readln(A); write('Gui trong bao lau(thang):'); readln(t); for i:=1 to Trunc(t/3) do A:= A+3*0.01*A; writeln('So tien co sau ',t,' thang la:',A:0:0); readlnEnd.{Sau du 3 thang moi duoc tinh lai, luc do lai suat duoc nhap vao von, nghia la sau du 3 thang co A:=A+3*0.01*A. so lan duoc tinh la[t/3]}BT 2.44. So n!! duoc dinh nghia nhu sau : Cho n thuoc.Tinh tong S= 1!!-2!!+....+(-1)n+1n!!.Var i,n:integer; S,S1,S2:real;Begin repeat write('Nhap vao so tu nhien n:');readln(n); until n>0; writeln('Tinh S=1!!-2!!+...+[(-1)^(n+1)]*n!!'); S:=0; S1:=1; S2:=1; for i:= 1 to n do if i mod 2 <> 0 then S1:=S1*i; S:=S+S1; end else S2:=S2*i; S:=S-S2; end; writeln('Tong can tim la S=',S:0:2); writeln('Bam phim Enter de tro ve!'); readln;End.BT 2.48.Cho 2 so nguyen n,m(n,m< 2147483648).Tim (m,n)?[n,m]?Var m,n,mn:longint;Begin writeln('Tim UXLN,BCNN cua 2 so nguyen'); write('cho m,n:'); readln(m,n); if (m=0) and (n=0) then writeln('Ko ton tai UCLN,BCNN') else m:=ABS(m); n:=ABS(n); mn:=ABS(m*n); if m*n =0 then writeln('UCLN=',m+n,' BCNN ko ton tai') else while m<>n do if m>n then m:=m-n else n:=n-m; writeln('UCLN=',m,' ;BCNN=',mn div m); end; end; writeln('Ban phim Enter de tro ve !'); readlnEnd.{Cach2: Function UCLN(a,b:longint): longint; var r: longint; a:=Abs(a) ; b:=Abs(b) ; while b<>0 do r:=a mod b; a:=b; b:=r; end; UCLN:= a; end; }BT 2.49.Cho so tu nhien n(n<214783648).Ktra xem n co thuoc day Fibonaci hay khong? Neu co thi nam o vi tri nao? Var n,f0,f1,f,p:Longint; ok:Boolean;Begin writeln('Ktra n thuoc day Fibonaci?'); repeat write('Cho so tu nhien n(n<2147483648)'); readln(n); until n>0; if n=1 then writeln('So 1 thuoc day, o vi tri 1 hoac 2') else f0:=1; f1:=1; f:=2; ok:=false; p:=2;{so n chua thuoc day,Vitri neu co tu 3} while (f<=n) and (not ok) do f0:=f1; f1:=f; f:=f0+f1; ok:=(f=n); inc(p); end; if ok then write('So ',n,' thuoc day,o vi tri ',p) else writeln('So ',n,' khong thuoc day Fibonaci'); end; writeln; writeln('Bam phim Enter de ket thuc!'); readlnEnd.BT 2.50. Day so {ak} duoc xac dinh nhu sau: a1=1, ak=ak-1+(k-1), k=2,3,... cho so tu nhien n(n<32768), in ra man hinh cac gtri a1,a2,...,an. uses crt;Var a,n,k:integer;Begin clrscr; repeat write('Nhap so tu nhien n(n<32767)'); readln(n); until n>0; writeln('Day so can tim la:'); write(1); a:=1; for k:=2 to n do a:=a+(k-1); write(' ',a); end; readlnEnd.BT 2.54. So tu nhien a1a2..ak duoc goi la so Amstrong neu: a1a2..ak=a1^k+a2^k+...ak^k .Tim cac so Amstrong co it hon 4 chu so?Uses crt;Var i,a,b,c:byte; d:word;Begin clrscr; writeln('So a1a2..ak, la so Amtrong neu: a1a2..ak=a1^k+a2^k+...ak^k); writeln('Cac so Amstrong co it hon 4 chu so:'); d:=9; for i:=1 to 9 do write(i,' '); for a:=1 to 9 do for b:=0 to 9 do if 10*a+b=a*a+b*b then write(a,b,' '); inc(d); end; for a:=1 to 9 do for b:=0 to 9 do for c:=0 to 9 do if 100*a+10*b+c=a*a*a+b*b*b+c*c*c then write(a,b,c,' '); inc(d); end; writeln; writeln('Co ',d,' so Amstrong co it hon 4 chu so!'); readlnEnd.BT 2.55.So n thuoc N duoc goi la so palindrome neu no doi xung(Vd:121,3223,..)Kiem tra so n(n<2147483648) co la so palindrome hay khong?Var d,l,i:integer; n:longint; s: string;Begin repeat write('cho n=');readln(n); until (n>0); str(n,s); l:= length(s); d:=0; for i:= 1 to l div 2 do if s[i] = s[l-i+1] then inc(d); if d = l div 2 then writeln(n,' la xau doi xung') else writeln(n,' ko la xau doi xung'); readln;End.BT 3.4.Cho 3 so thuc a,b,c tinh gia tri cua bthuc.Uses crt;Var a,b,c:real;Function Min(a,b:real):real; if a<b then min:=a else min:=b;end;Function Max(a,b,c:real):real;var m:real; m:=a; if m<b then m:=b; if m<c then m:=c; max:=m;end;Begin {Ctrinh chinh} clrscr; writeln('Tinh gia tri cua bieu thuc:'); writeln('(min(a,a+b)+min(a,b+c))/(1+max(a+bc,1,2008))'); write('Cho 3 so thuc a,b,c: '); readln(a,b,c); writeln('Gia tri cua bthuc da cho la:'); writeln((min(a,a+b)+min(a,b+c))/(1+max(a+b*c,1,2008))); readlnEnd.BT 3.5.Cho so thuc s,t tinh gia tri bthuc.Var s,t:real;Function H(a,b:real):real; H:=a/(1+b*b)+b/(1+a*a)-(a-b)*(a-b)*(a-b);;end;Function Max(a,b,c:real):real;var m:real; m:=a; if m<b then m:=b; if m<c then m:=c; Max:=m;end;Begin {Ctrinh chinh} writeln('Tinh gia tri bieu thu'); writeln('P=H(s,t)+Max((h(s-t,st))^2,(H(s-t,s+t))^4,(h(1,1)'); write('Cho 2 so s,t:'); readln(s,t); writeln('P= ',H(s,t)+Max(H(s-t,s*t)*H(s-t,s*t),H(s-t,s+t)*H(s-t,s+t)*H(s-t,s+t)*H(s-t,s+t),h(1,1)):0:2); readln;End.BT 3.6.Tim UCLN cua 4 so nguyen a,b,c,d nhap tu ban phim?Var a,b,c,d:longint;Function ucln(a,b:longint):longint;var r:longint; while b<>0 do a:=Abs(a); b:=Abs(b); r:=a mod b; a:=b; b:=r; end; ucln:=a;end;Begin write('nhap vao a,b,c,d:'); readln(a,b,c,d); if (a=0) and (b=0) and (c=0) and (d=0) then writeln('UCLN ko ton tai!') else begin writeln('UCLN(a,b,c,d)=',ucln(ucln(ucln(a,b),c),d)); end; readln;End.BT 3.7.Viet ham de quy tim UCLN 2 so nghuyen duong a,b.Ap dung tim UCLN(a1,a2,...an)uses crt;Var i,n:word; a1,u,b:longint;Function ucln(a,b:longint):longint; a:=Abs(a); b:=Abs(b); if b=0 then ucln:=a else ucln:=ucln(b,a mod b); {if a*b=0 then ucln:=a+b else if a>b then ucln:=ucln(a mod b,b) else ucln:=ucln(a,b mod a); }end;Function bcnn(a,b:longint):longint; a:=Abs(a); b:=Abs(b); bcnn:=a*b div ucln(a,b);end;Begin {Ctrinh chinh} clrscr; writeln('Tim UCLN,BCNN cua n so nguyen nhap tu ban phim'); write('Cho so phan tu n= '); readln(n); write('So thu 1:'); readln(a1); u:=a1; b:=a1; for i:=2 to n do write('So thu ',i,':');readln(a1);{nhap so thu i vao a1} u:=ucln(u,a1);{gan u bang UCLN cua u va a1} b:=bcnn(b,a1);{gan b bang BCNN cua b va a1} end; writeln('UCLN= ',u); writeln('BCNN= ',b); readln;End.BT 3.11. Thap Ha NoiVar n:byte; d:longint;Procedure Doi(k,c1,c2,c3:integer); if k=1 then d:=d+1; write('Buoc',d,':',c1,'->',c2,' '); exit; end; Doi(k-1,c1,c3,c2); Doi(1,c1,c2,c3); Doi(k-1,c3,c2,c1);end;Begin {Ctrinh chinh} write('Cho so dia:'); readln(n); d:=0; Doi(n,1,2,3); readlnEnd.BT 3.18. Tim cac so nguyen to cung nhau voi n va nho hon n.Var i,n:longint;Function ucln(a,b:longint):longint;var r:longint; a:=Abs(a); b:=Abs(b); while b<>0 do r:=a mod b; a:=b; b:=r; end; ucln:=a;end;Begin writeln('Liet ke cac so nho hon n va nguyen to cung nhau voi n'); write('Cho so tu nhien n='); readln(n); writeln('Cac so nho hon n va nguyen to cung nhau voi n la:'); for i:=1 to n-1 do if ucln(i,n)=1 then write(i,' '); readln;End.BT 3.19. Tim cac so nguyen to nho hon n.Var i,n:longint;Function Nto(n:longint):boolean;var i:longint; Nto:=false; if n<2 then exit; for i:=2 to trunc(sqrt(n)) do if n mod i=0 then exit; Nto:=true;end;Begin write('Cho so tu nhien n:'); readln(n); for i:=2 to n-1 do if Nto(i) then write(i,' '); readln;End.BT 3.20. Tim cac so hoan hao nho hon k (k thuoc N)Var i,k,d:longint;Function Tonguoc(n:longint):longint;var s,i:longint; s:=0; for i:=1 to n div 2 do if n mod i=0 then s:=s+i; Tonguoc:=s;end;Begin writeln('Tim cac so hoan hao nho hon k!'); write('nhap k:');readln(k); d:=0; for i:=2 to k-1 do if i=Tonguoc(i) then write(i,' '); inc(d); end; if d=0 then writeln('Ko co so hoan hao nao nho hon',k);readln;End.BT 3.22. Tim cac so H-Nto nam giua 2 stn m va n(n,n<2147483648)Var m,n,i,d:longint;Function Nto(n:longint):boolean;var i:longint; Nto:=false; if n<2 then exit; for i:=2 to trunc(sqrt(n)) do if n mod i =0 then exit; Nto:=true;end;Begin writeln('Tim so H-Nto nam giua 2 stn m va n'); repeat write('nhap m,n:'); readln(m,n); until (m>0) and (n>0) and (m<n); d:=0; for i:=m to n do if Nto(i) and Nto(trunc(sqrt(i))) then write(i,' '); inc(d); end; if d=0 then writeln('Ko co so H-Nto nao giua ',m,' va ',n); readln;End.BT 3.23. So palidrome n duoc goi la Hp-nguyen to neu n la so nguyen to( vi du:2,3,5,7...).Nhap 2 so tu nhien m,n(m<n<2147483648),tim tat ca cac so H-nguyen to giua m va n.uses c1rt;Var m,n,i,dem:longint;Function nto(n:longint):boolean;var i:longint; nto:=false; if n<2 then exit; for i:=2 to trunc(sqrt(n)) do if n mod i=0 then exit; nto:=true;end;Function Dx(n:longint):boolean;{doi xung}var d,l,i:byte; s:string; Dx:=false; str(n,s); l:=length(s); d:=0; for i:=1 to l div 2 do if s[i]=s[l-i+1] then d:=d+1; Dx:=(d=l div 2);end;Begin writeln('Tim so Hp_ngto giau m va n'); repeat write('Cho m,n(m<n):'); readln(m,n); until (m>0) and (n>0) and (m<n); dem:=0; for i:= m to n do if nto(i) and Dx(i) then write(i,' '); inc(dem); end; if dem=0 then writeln('Ko co so Hp-ngto nao'); readln;End.
Bạn đang đọc truyện trên: ZingTruyen.Store