Bài tập pascal cơ bản cho học sinh và sinh viên

Bài 25:

Cho các số tự nhiên n (khai bảo longint), và cho biết: n có bao nhiêu chữ số, tổng các chữ

số của n và số đảo ngược của n.

VD: số 123 có 3 chữ số, tổng các chữ số bằng 6, số đảo ngược là 321

Lời giải:

uses crt;

var m,n:longint;tong,dem:byte;

BEGIN

clrscr;

write('Nhap so n: ');readln(n);

m:=n;dem:=0;tong:=0;

while m>0 do

begin

tong:=tong+ m mod 10;

dem:=dem+1;

m:=m div 10;

end;

writeln(n,' co ',dem,' chu so va tong cac chu so cua ',n,' la: ',tong);

write('So dao nguoc cua ',n,' la: ');

m:=n;

while m>0 do

begin

write(m mod 10);

m:=m div 10;

end;

readln

END.

pdf17 trang | Chia sẻ: maiphuongdc | Lượt xem: 81617 | Lượt tải: 1download
Bạn đang xem nội dung tài liệu Bài tập pascal cơ bản cho học sinh và sinh viên, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Bài tập pascal cơ bản dành cho hs-sv thiết kế bởi: Vũ Đức Quang Bài 1: Viết chương trình nhập vào 1 số N nguyên dương và in ra màn hình các sỗ chẵn từ 0N mỗi số chiếm 4 vị trí và 15 số trên 1 dòng. Lời giải: uses crt; {khai bao' thu vien crt} var n,i,dem:integer; BEGIN clrscr;{ cau lenh xoa man hinh}; write('Nhap n: ');readln(n); dem:=0; for i:=1 to n do begin if i mod 2=0 then begin write(i:4); dem:=dem+1; end; if dem=15 then begin dem:=0; writeln;{in duoc 15 so thi xuong dong}; end; end; readln END. Bài 2: Nhập vào 2 số nguyên dương a và b. + Tính và in ra màn hình tổng, hiệu, tích, thương và UCLN của 2 số đó + Tính tổng các ước số dương của |a+b| Lời giải: uses crt; var a,b,tg,i,tong:integer; function tinh(x,y:integer):integer; begin tg:= x mod y; if tg=0 then tinh:=y else tinh:=tinh(y,tg); end; BEGIN clrscr; write('Nhap a: ');readln(a); write('Nhap b: ');readln(b); tong:=1; for i:=2 to abs(a+b) do if (abs(a+b) mod i =0) then tong:=tong+i; writeln('Tong 2 so la: ',a+b); writeln('Hieu 2 so la: ',a-b); writeln('Tich 2 so la: ',a*b); writeln('Thuong 2 so la: ',a/b:0:4); writeln('UCLN 2 so la: ',tinh(a,b)); writeln('Tong cac uoc cua ',a+b,' la: ',tong); readln END. Bài 3: Lập chương trình nhập vào độ dài các cạnh của tam giác rồi thực hiện : + Tính chu vi, diện tích, 3 đường cao của tam giác. + Kiểm tra xem tam giác đó có là tam giác cân hoặc vuông không? Lời giải: uses crt; var a,b,c,cv,dt,p:real; BEGIN clrscr; write('Nhap do dai canh a: ');readln(a); write('Nhap do dai canh b: ');readln(b); write('Nhap do dai canh c: ');readln(c); cv:=a+b+c; p:=(a+b+c)/2; dt:=sqrt(p*(p-a)*(p-b)*(p-c)); writeln('Chu vi tam giac la: ',cv:0:4); writeln('Dien tich tam giac la: ',dt:0:4); writeln('Duong cao canh thu 1 la: ',dt*2/a:0:4); writeln('Duong cao canh thu 2 la: ',dt*2/b:0:4); writeln('Duong cao canh thu 3 la: ',dt*2/c:0:4); if (a=b) or (a=c) or(b=c) then writeln('Tam giac can'); if (a*a=b*b+c*c) or (b*b=a*a+c*c) or (c*c=b*b+a*a)then writeln('Tam giac vuong'); readln END. Bài 4: Lập trình giải phương trình bậc 2: Lời giải: uses crt; var a,b,c,x1,x2,d:real; BEGIN clrscr; write('Nhap a: ');readln(a); write('Nhap b: ');readln(b); write('Nhap c: ');readln(c); d:=b*b-4*a*c; if d>0 then begin x1:=(-b+sqrt(d))/(2*a); x2:=(-b-sqrt(d))/(2*a); writeln('2 nghiem PT la: ',x1:0:2,' va: ',x2:0:2); end else if d=0 then begin x1:=(-b)/(2*a); writeln('PT co nghiem kep la: ',x1:0:2); end else writeln('PT vo nghiem'); readln END. Bài 5: Nhập vào 1 số nguyên gồm 4 chữ số -Kiểm tra tình chắn lể -kiểm tra xem có phải là số nguyên tố không -kiểm tra xem có phải là số hoàn hảo không Lời giải: uses crt; var n,i:integer;ok:boolean; BEGIN clrscr; write('Nhap n: ');readln(n); if n mod 2=0 then writeln('So ',n,' la so chan') else writeln('So ',n,' la so le'); if n<2 then write('So ',n,' khong la so nguyen to') else begin ok:=true; for i:=2 to trunc(sqrt(n)) do if n mod i=0 then ok:=false; if ok then writeln('So ',n,' la so nguyen to') else writeln('So ',n,' khong la so nguyen to'); end; readln END. Có thể thay câu lệnh lặp “for i:=2 to trunc(sqrt(n)) do” bằng câu lệnh while..do..khi đó ta không cần biến ok nữa. Bài 6: Nhập n,a hãy tính căn bậc n của a: Lời giải: uses crt; var n:integer;a,s:real; BEGIN clrscr; write('Nhap a: ');readln(a); repeat write('Nhap n: ');readln(n); until (n>0); if (n mod 2=0) and (a>=0) then begin s:=exp(1/n*ln(a)); writeln('Ket qua la: ',s:0:4); end else if (n mod 20) then begin s:=exp(1/n*ln(abs(a))); writeln('Ket qua la: ',s:0:4); end else writeln('Khong xac dinh'); readln END. Bài 7: Nhập số có 3 chữ số tính tổng các chữ số của nó: Lời giải: uses crt; var a:integer;tong:byte; BEGIN clrscr; write('Nhap 1 so co 3 chu so: ');readln(a); tong:= a mod 10; a:=a div 10; tong:=tong+a mod 10; a:=a div 10; tong:=tong+a mod 10; writeln('Tong cac chu so do la: ',tong); readln END. Bài 8: Nhập 2 số nguyên, hoán vị 2 số đó khi a>b Lời giải: uses crt; var a,b,tg:integer; BEGIN clrscr; write('Nhap a: ');readln(a); write('Nhap b: ');readln(b); if a>b then begin tg:=a; a:=b; b:=tg; end; writeln(a,' ',b); readln END. Bài 9: Nhập số nguyên dương n in ra tổng các số nguyên dương là bội của 3 hoặc 5 từ 1—>n Lời giải: uses crt; var n,tong,i:integer; BEGIN clrscr; write('Nhap so nguyen duong n: ');readln(n); tong:=0; for i:=1 to n do if (i mod 3=0) or (i mod 5=0) then tong:=tong+i; writeln('Tong cac so chia het cho 3 hoac 5 tu 0--> ',n,' la: ',tong); readln END. Bài 10: Nhập n in ra tổng các chữ số của n: Lời giải: uses crt; var n,m:longint;tong:byte; BEGIN clrscr; write('Nhap n: ');readln(n); tong:=0;m:=n; while m>0 do begin tong:=tong+m mod 10; m:=m div 10; end; writeln('Tong cac chu so cua ',n,' la: ',tong); readln END. Bài 11: Số nguyên tố là số nguyên dương chỉ chia hết cho 1 và chính nó, ngoại trừ 0 và 1. Lập trình nhập vào 1 số nguyên dương n và kiểm tra xem nó có phải là số nguyên tố không? Lời giải: uses crt; var n,i:integer; BEGIN clrscr; write('Nhap so nguyen duong n: '); readln(n); if n<2 then writeln(n,' khong la so nguyen to') else begin i:=2; while ((i0)) do i:=i+1; if i>trunc(sqrt(n)) then writeln(n,' la so nguyen to') else writeln(n,' khong la so nguyen to'); end; readln END. Bài 12: Số hoàn hảo là số mà có tổng các ước của nó không kể nó bằng chính nó. VD: số 28 có các ước là: 1 2 4 7 14 số 6 có các ước là: 1 2 3 Lập trình nhập vào 1 số nguyên dương n và kiểm tra xem số đó có là số hoàn hảo không? Lời giải: uses crt; var n:longint;tong,i:integer; BEGIN clrscr; write('Nhap so nguyen duong n: ');readln(n); tong:=0; for i:=1 to n div 2 do if n mod i=0 then tong:=tong+i; if tong=n then writeln(n,' la so hoan hao') else writeln(n,'khong la so hoan hao'); readln END. Bài 13: Số chính phương là số có căn bậc 2 là 1 số nguyên. VD số 9 là số chính phương vì căn bậc 2 của 9 bằng 3. Lập trình nhập 1 số nguyên dương n từ bàn phím kiểm tra xem số đó có là số chính phương không? Lời giải: uses crt; var n:longint; BEGIN clrscr; write('Nhap so nguyen duong n: ');readln(n); if sqrt(n)=trunc(sqrt(n)) then writeln(n,' la so chinh phuong') else writeln(n,' khong la so chinh phuong'); readln END. Bài 14: Nhập vào 1 xâu kí tự và cho biết xâu vừa nhập vào có bao nhiêu nguyên âm và bao nhiêu kí tự số. Lời giải: uses crt; var s:string;dem1,dem2,i:byte; BEGIN clrscr; write('Nhap 1 xau: ');readln(s); dem1:=0;dem2:=0; for i:=1 to length(s) do begin if s[i] in ['a','e','i','o','u','y','A','E','I','O','U','Y'] then dem1:=dem1+1; if s[i] in ['0','1','2','3','4','5','6','7','8','9'] then dem2:=dem2+1; end; writeln('Trong xau ',s,' co ',dem1,' nguyen am va co ',dem2,' ki tu so'); readln END. Bài 15: bài toán cố sau Vừa gà vừa chó Bó lại cho tròn Ba mưoi sáu con Một trăm chân chẵn Lời giải: uses crt; var cho:byte; BEGIN clrscr; for cho:=1 to 25 do if 4*cho+(36-cho)*2=100 then writeln('So ga la: ',36-cho,' so cho la: ',cho); readln END. Bài 16: Nhập 1 số nguyên dương n <1000 cho biết có bao nhiêu số nguyên tố từ 0n Lời giải: uses crt; var n,i,j,dem:integer; BEGIN clrscr; write('Nhap so nguyen duong n: ');readln(n); dem:=0; for i:=2 to n do begin j:=2; while ((j0)) do j:=j+1; if j>trunc(sqrt(i)) then dem:=dem+1; end; writeln('So luong so nguyen to trong khoang tu 0-->',n,' la: ',dem); readln END. Bài 17: Nhập 1 số n kiểm tra tính chẵn lẻ, xem số đó có chia hết cho 3 không,tổng các chữ số của nó có là bội của 6 không Lời giải: uses crt; var n,m,tong:integer; BEGIN clrscr; write('Nhap n: ');readln(n); if n mod 3=0 then writeln(n,' chia het cho 3') else writeln(n,' khong chia het cho 3'); m:=n;tong:=0; while m>0 do begin tong:=tong+m mod 10; m:=m div 10; end; if tong mod 6=0 then writeln('Tong cac chu so cua ',n,' la ',tong,' chia het cho 6') else writeln('Tong cac chu so cua ',n,' la ',tong,' khong chia het cho 6'); readln END. Bài 18: Tính tổng n số phibonaci: F0=F1=1;Fi=Fi-1+Fi-2. (với mọi i>1). Lời giải uses crt; var f,ft,ftn,tong:longint;n,i:integer; BEGIN clrscr; write('Nhap n: ');readln(n); ft:=1;ftn:=1;tong:=2; for i:=2 to n do begin f:=ft+ftn; tong:=tong+f; ftn:=ft; ft:=f; end; writeln('Tong n so hang dau day fibolaci la: ',tong); readln END. Có thể biến đổi đề bài của bài toán đi như: tính số phibonaci thứ n hoặc nhập vào 1 số kiểm tra xem số đó có phải là số phibonaci hay không…Các bài đó làm tương tự. Bài 19: Nhập số nguyên dương n lập chương trình tính: S1= 1+3+5+7+…+(2*n+1) Lời giải: uses crt; var i,n,s1:integer; BEGIN clrscr; write('Nhap n: ');readln(n); s1:=0; for i:=1 to 2*n+1 do if i mod 20 then s1:=s1+i; writeln('Tong S1 la: ',s1); readln END. Bài 20: Tính S2=13+23+33+…+n3 trong đó n nhập từ bàn phím. Lời giải: uses crt; var i,n:integer;s2:longint; BEGIN clrscr; write('Nhap so n: ');readln(n); s2:=0; for i:=1 to n do s2:=s2+i*i*i; writeln('Tong S2 la: ',s2); readln END. Bài 21: Nhập 2 số n,m sao cho m<n lập trình tính S3= Cnm = (n(n-1)…(n-m+1))/m! (Tổ hợp chập m của n) Lời giải: uses crt; var i,m,n,tu,mau:integer; s3:longint; BEGIN clrscr; repeat write('Nhap n: ');readln(n); until n>0; repeat write('Nhap m: ');readln(m); until (m0); tu:=1;mau:=1; for i:=n-m+1 to n do tu:=tu*i; for i:=2 to m do mau:=mau*i; s3:= tu div mau; writeln('to hop chap ',m,' cua ',n,' la: ',s3); readln END. Bài 22: Nhập số thực dương e(e<0.01) rồi tính tổng S4=1+1/22+1/32+…+1/n2 +… (chương trình kết thúc khi 1/n2<e) Lời giải: uses crt; var s4,e:real;i:integer; BEGIN clrscr; repeat write('Nhap so thuc duong e<0.01: '); readln(e); until (e>0) and (e<0.01); s4:=0;i:=1; while 1/(i*i)>e do begin s4:=s4+1/(i*i); i:=i+1; end; writeln('Ket qua la: ',s4:0:4); readln END. Bài 23: Nhập số thực dương e(e<0.01) rồi tính tổng S5= 1- 1/3+1/5-1/7+…+(-1)n/(2*n+1)(dừng khi 1/(2*n+1) <e) Lời giải: uses crt; var s5,e:real;i:integer; BEGIN clrscr; repeat write('Nhap so thuc duong e<0.01: '); readln(e); until (e>0) and (e<0.01); s5:=1;i:=1; while 1/(2*i+1)>e do begin if i mod 2=0 then s5:=s5+1/(2*i+1) else s5:=s5-1/(2*i+1); i:=i+1; end; writeln('ket qua la: ',s5:0:4); readln END. Bài 24: Lập chương trình để nhập vào 4 dãy số a1,..,an;b1,…bn;c1,…,cn;d1,…,dn. Sau đó in ra kết quả n dòng 6 giá trị theo mẫu sau: Ai bi ci di max(ai,bi,ci,di) min(ai,bi,ci,di) Lời giải: uses crt; var a,b,c,d:array[1..1000]of integer; n,max,min,i:integer; BEGIN clrscr; write('Nhap n: ');readln(n); for i:=1 to n do begin write('Nhap A[',i,']: '); readln(a[i]); write('Nhap B[',i,']: '); readln(b[i]); write('Nhap C[',i,']: '); readln(c[i]); write('Nhap D[',i,']: '); readln(d[i]); end; for i:=1 to n do begin write(a[i],' ',b[i],' ',c[i],' ',d[i],' '); max:=a[i];min:=a[i]; if b[i]>max then max:=b[i]; if c[i]>max then max:=c[i]; if d[i]>max then max:=d[i]; write(max,' '); if b[i]<min then min:=b[i]; if c[i]<min then min:=c[i]; if d[i]<min then min:=d[i]; writeln(min); end; readln END. Bài 25: Cho các số tự nhiên n (khai bảo longint), và cho biết: n có bao nhiêu chữ số, tổng các chữ số của n và số đảo ngược của n. VD: số 123 có 3 chữ số, tổng các chữ số bằng 6, số đảo ngược là 321 Lời giải: uses crt; var m,n:longint;tong,dem:byte; BEGIN clrscr; write('Nhap so n: ');readln(n); m:=n;dem:=0;tong:=0; while m>0 do begin tong:=tong+ m mod 10; dem:=dem+1; m:=m div 10; end; writeln(n,' co ',dem,' chu so va tong cac chu so cua ',n,' la: ',tong); write('So dao nguoc cua ',n,' la: '); m:=n; while m>0 do begin write(m mod 10); m:=m div 10; end; readln END. Bài 26: Nhập số nguyên dương n và dãy số a1,a2,…,an hãy in ra max, min dãy đó Lời giải: uses crt; var n,i,max,min:integer; a:array[1..1000] of integer; BEGIN clrscr; repeat write('Nhap so nguyen duong n: '); readln(n); until (n>0) and (n<=1000); for i:=1 to n do begin write('Nhap A[',i,']: '); readln(a[i]); end; max:=a[1];min:=a[1]; for i:=2 to n do begin if a[i]>max then max:=a[i]; if a[i]<min then min:=a[i]; end; writeln('Max cua day so la: ',max); writeln('Min cua day so la: ',min); readln END. Bài 27: Nhập số nguyên dương n và dãy số a1,a2,…,an. Hãy sắp xếp dãy đó tăng dần và in dãy đã được sắp xếp ra màn hình. Lời giải: uses crt; var n,i,j,tg:integer; a:array[1..1000]of integer; BEGIN clrscr; repeat write('Nhap so nguyen duong n: '); readln(n); until (n>0) and (n<1000); for i:=1 to n do begin write('Nhap A[',i,']: ');readln(a[i]); end; for i:=1 to n-1 do for j:=i+1 to n do if a[i]>a[j] then begin tg:=a[i]; a[i]:=a[j]; a[j]:=tg; end; writeln('Day sau khi duoc sap xep la: '); for i:=1 to n do write(a[i]:4); readln END. Tương tự với bài sắp xếp với dãy giảm dần. 28. Viết chương trình Pascal tìm USCLN và BSCNN cùa 2 số nguyên dương Program Uoc_so_chung_Boi_so_chung; Var so1,so2:Word; p:LongInt; tiep:Char; Begin Writeln('TINH UOC SO CHUNG LON NHAT, BOI SO CHUNG NHO NHAT'); Writeln(' Su dung vong lap Repeat... Until'); Writeln('-------------------------------------------------'); Repeat Writeln; Write('-Nhap so thu nhat: '); Readln(so1); Write('-Nhap so thu hai : '); Readln(so2); p:=so1 * so2; Write('+Uoc so chung lon nhat cua ',so1,' va ',so2,' la: '); Repeat if so1 > so2 Then so1:=so1 - so2 Else so2:=so2 - so1; Until so1=so2; Writeln(so1); Writeln; Writeln('+Boi so chung nho nhat: ',P Div so1); Writeln; Write('-Co tiep tuc nua khong ? (C/K) '); Readln(tiep); Until Upcase(tiep)='K'; Writeln; Writeln(' Bam phim de ket thuc '); Readln End. 29.Viết chương trình Pascal tìm các số nguyên tố từ 2 đến N Program Tim_so_nguyen_to; Var n,i,j:Integer; nguyento:Boolean; Begin Writeln('TIM CAC SO NGUYEN TO TU 2 DEN N'); Writeln('-------------------------------'); Write('-Nhap so N= '); Readln(n); For i:=2 To n Do Begin nguyento:=True; j:=2; While nguyento And (j <i) Do Begin If (i Mod j)=0 Then nguyento:=False; j:=j+1; End; If nguyento Then Write(i:4); End; Writeln; Writeln(' Bam phim de ket thuc'); Readln End. Viết chương trình Pascal tìm USCLN, BSCNN Program Uoc_so_Boi_so_chung; Var a,b:Word; p:LongInt; Begin Writeln('UOC SO CHUNG LON NHAT, BOI SO CHUNG NHO NHAT'); Writeln('--------------------------------------------'); Write('-Nhap so thu nhat a= '); Readln(a); Write('-Nhap so thu hai b= '); Readln(b); p:=a * b; Write('+Uoc so chung lon nhat cua ',a,' va ',b,' la: '); While a b Do Begin If a > b Then a:=a - b Else b:=b-a End; Writeln(a); Writeln; Writeln('+Boi so chung nho nhat cua chung la: ',p Div a); writeln; Writeln(' Bam phim de ket thuc'); Readln End. 30. Viết chương trình Pascal tìm các ước của số nguyên N Program uoc_so; Var i,n:Integer; Begin Writeln('TIM CAC UOC SO CUA SO NGUYEN'); Writeln('----------------------------'); Write('-Nhap mot so nguyen: '); Readln(n); Writeln; Writeln('+Cac uoc so cua so ',n,' la: '); Writeln; For i:=1 To N Do If (n Mod i) = 0 Then Write(i:6); Writeln; Writeln; Writeln(' Bam phim de ket thuc'); Readln End. 31. Viết chương trình Pascal tính tổng nghịch đảo N số nguyê đầu tiên Program Tong_nghich_dao; Var n,i:Integer; s:Real; Begin Writeln('TINH TONG NGHICH DAO N SO NGUYEN DAU TIEN'); Writeln('-----------------------------------------'); Write('-Nhap so N= '); Readln(n); S:=0; For i:= 1 To N Do S:=S+(1/i); Writeln; Writeln('+Tong nghich dao cua ',n,' so nguyen dau tien= ',S:0:2); Writeln; Writeln(' Bam phim de ket thuc'); Readln End. 32. Viết chương trình Pascal tính tổng bình phương các số lẻ Program Tong_binh_phuong; Var i,n,tong:Integer; Begin Writeln('TINH TONG BINH PHUONG CAC SO LE'); Writeln(' Tu 1 den N'); Writeln('-------------------------------'); Write('-Nhap N= '); Readln(n); tong:=0; For i:=1 To N Do If odd(i) Then tong:=tong+sqr(i); Writeln; Writeln('+Tong binh phuong cac so le cua ',n,' so nguyen= ',tong); Writeln; Writeln(' Bam phim de ket thuc'); Readln End. 33. Viết chương trình Pascal tìm số lớn nhất trong N số nguyên Program Cuc_dai; Var i,n:Byte; so,solon:Integer; Begin Writeln('TIM SO LON NHAT TRONG N SO NGUYEN'); Writeln('---------------------------------'); Write('-Muon nhap bao nhieu so: '); Readln(n); i:=1; Write('-So thu ',i,' = '); Readln(so); solon:=so; For i:=2 To N Do Begin Write('-So thu ',i,' = '); Readln(so); If solon < so Then solon:=so; End; Writeln; Writeln('+So lon nhat trong ',n,' so vua nhap la so: ',solon); Writeln(' Bam phim de ket thuc'); Readln End. 34Viết chương trình Pascal kiểm tra tính nguyên tố của 1 số nguyên Program So_nguyen_to; Var n,i:Integer; Begin Writeln('SO VUA NHAP CO PHAI LA SO NGUYEN TO ?'); Writeln('-------------------------------------'); Write('-Nhap mot so : '); Readln(n); While n > 1 Do Begin i:=2; While (n Mod i 0) Do i:=i+1; if i=n Then Writeln('-So ',n,' la so nguyen to') Else Writeln('-So ',n,' khong phai la so nguyen to'); Write('-Nhap mot so (so 0 de ngung): '); Readln(n); End; Writeln; Writeln(' Bam phim de ket thuc'); Readln End. 35. Viết chương trình Pascal phân tích N thành các thừa số nguyên tố Program thuaso; Var n,i:Integer; Begin Writeln('PHAN TICH N THANH TICH CAC THUA SO NGUYEN TO'); Writeln('--------------------------------------------'); Write('-Nhap so N= '); Readln(n); Repeat i:=2; While (n Mod i 0) And (i < n ) Do i:=i + 1; Write(i:4); n:=n Div i; Until n=1; Writeln; Writeln(' Bam phim de ket thuc'); Readln End. 36. Viết chương trình Pascal tính diện tích tam giác Program Dien_tich_tam_giac; Var a,b,c:Integer; p,s:Real; Begin Writeln('DIEN TICH TAM GIAC'); Writeln('------------------'); Write('-Nhap so thu nhat: '); Readln(a); Write('-Nhap so thu hai : '); Readln(b); Write('-Nhap so thu ba : '); Readln(c); If (a+b>c) And (b+c>a) And (c+a>b) Then Begin Writeln('+Dung la Tam giac'); p:=0.5*(a+b+c); s:=Sqrt(p*(p-a)*(p-b)*(p-c)); Writeln('+Dien tich= ',s:10:2); End Else Writeln('+Khong phai la Tam giac'); Writeln; Writeln(' Bam phim de ket thuc'); Readln End. 37. Viết chương trình Pascal kiểm tra đây là tam giác gì Program Tam_giac; Var a,b,c:Integer; tamgiac,deu,can:Boolean; Begin Writeln('BA CANH CUA TAM GIAC ?'); Writeln('----------------------'); Write('-Nhap so thu nhat= '); Readln(a); Write('-Nhap so thu hai = '); Readln(b); Write('-Nhap so thu ba = '); Readln(c); tamgiac:=False; deu:=False; can:=False; If (a+b>c) And (b+c>a) And (c+a>b) Then Begin tamgiac:=True; If (a=b) And (b=c) Then deu:=True; If (a=b) Or (b=c) Or (c=a) Then can:=True; End; Writeln; Writeln(' 3 so vua nhap la:'); Writeln('+Tam giac: ',tamgiac); Writeln('+Tam giac deu: ',deu); Writeln('+Tam giac can: ',can); Writeln; Writeln(' Bam phim de ket thuc'); Readln End. 38. Viết chương trình Pascal đổi chữ thường ra chữ HOA Program Doi_chu_thuong_ra_chu_HOA; Var ch,c1,c2:Char; Begin Writeln('DOI CHU THUONG RA CHU HOA'); Writeln('-------------------------'); Write('-Nhap mot ky tu bat ky: '); Readln(ch); c1:=upcase(ch); c2:=chr(ord(ch)-32); Writeln('+Cach thu nhat, dung ham Upcase: ',c1); Writeln('+Cach thu hai,khong dung ham Upcase: ',c2); Readln End. 39. Viết chương trình Pascal tính tổng của N số nguyên Program Tinh_tong; Var n,tong:Integer; Begin Writeln('TINH TONG CUA N SO NGUYEN'); Writeln('-------------------'); Writeln; Write('-Nhap so nguyen N: '); Readln(n); tong:=(n * (n + 1) DIV 2); Writeln('*Tong tu 1 den N = ',tong); Writeln(' Bam phim de ket thuc'); Readln End.

Các file đính kèm theo tài liệu này:

  • pdfai_tap_pascal_co_ban_danh_cho_hs_co_ban_7315.pdf
Tài liệu liên quan