Bài 4: Lập phơng trình nhập vào một số tự nhiên n... Bài 4 : Lập chơng trình nhập vào một dãy số.. Bài 5 : Viết chơng trình nhập vào một mảng số thực.. Tính tổng số phần tử của mỗi dãy
Trang 1Tính chu vi của đa giác đều n cạnh nội tiếp đờng tròn bán kính R
Cạnh của đa giác đều tính theo công thức
sin2
a n − 1 +( −1)
2
)(a1 a n
Trang 2II Câu lệnh rẽ nhánh
Bài 1:
Cho 3 số thực x, y, z Tìm
a max ( x - y, y - z, z - x ) và min ( x +y, y + z , z + x)
b max ( x +y+z , xyz)
Hãy sử dụng toán tử điều kiện để tìm số lớp nhất, nhỏ nhất và sắp xếp theo thứ tự tăng dần cho ba số a, b, c nhập vào từ bàn phím.
d Tìm chữ số đầu tiên của n
e Với n ≥ 10 Hãy tìm chữ số hàng chục của n
III Câu lệnh lựa chọn CASE OF
Bài 1:
Viết phơng trình nhập vào số nguyên n ( 0 ≤ n ≤ 9) in ra màn hình cách đọc tiếng Việt của số đó
Bài 2:
Trang 3Viết phơng trình thực hiện việc sau: Nếu biến chọn nhận giá trị = 'A' thì yêu cầu tính diện tích hình chữ nhật, nếu biến chọn giá trị = ' B ' thì tính diện tích tam giác, bằng ' C ' thì tính chu vi hình tròn, các trờng hợp còn lại thì tính diện tích hình thang
Bài 3:
Một cửa hàng có 4 loại sản phẩm giá cho 1 mét khối từng loại là nh sau : Loại 1 là 200.000 đ , loại 2 là 100.000 đ, loại 3 là 70.000 đ , loại 4 là 20.000 đ Viết phơng trình tính tiền cho khách hàng
Bài 4:
Nhập các số thực x, y và ký tự ch Nếu ch là ký hiệu phép toán + , - , *, / thì thực hiện phép toán đó với x, y nếu không thì thông báo không phải là phép toán Trờng hợp chia cho 0 cũng phải thông báo
Lãi suất hàng tháng gửi tiết kiệm không kỳ hạn là t % ( t nhập từ bàn phím )
a Nhập số vốn ban đầu n và số tháng gửi k Tính số tiền nhận đợc sau k tháng
b Nhập số vốn ban đầu n và số tiền cần nhận m.Tính số tháng cần gửi.
c Nhập số tiền cần nhận m và số tháng gửi k Tính số vốn cần gửi ban đầu.
Tính số tiền thu đợc sau t tháng với tiền gửi ban đầu là x.
)2(
1
j
i i
Trang 497 2 108
101 2 8
2
n n
l n
n n
n s
Bài 8 :
Viết phơng trình giải bài toán
Vừa gà vừa chó 36 con
Bó lại cho tròn 100 chân chẵn Hỏi có bao nhiêu con gà có bao nhiêu con chó
Bài 9 :
Viết phơng trình giải bài toán
100 con trâu, 100 bó cỏ Trâu đứng ăn 5, trâu nằm ăn 3
Lụ khu trâu già 3 con một bó Hỏi mỗi loại trâu có bao nhiêu con Bài 10 :
Tìm các nguyện nguyên dơng của phơng trình vô định
111
11
n
Bài 12 : Lập chơng trình vào một số tự nhiên n Tính giá trị biểu thức
S = 1+ 1/2 + 1/3 + + 1/n Bài 13 : Lập chơng trình vào một số tự nhiên n Tính giá trị biểu thức
S = 1 + 22 + 32 + n2Bài 14 :
Nhập số tự nhiên n và số thực x Tính
A = sinx + sin2x + + sinn x
B = sinx + sin2x + + sinxn Bài 15 :
Nhập vào số tự nhiên n,m Tính giá trị biểu thức
(n n!++m m!!
Bài 16 :
Cho số thực a và số tự nhiên n Hãy tính
Trang 5a an
b.a ( a + 1 ) ( a + n + 1 )
)1(
11
n a a
a a
7()3()1(
)64) (
8()4()2(
x x
x x
x x
3
3
5.2
1
3
12
1
−+
−+
Theo c¸ch sau ®©y :
a TÝnh tõ tr¸i sang ph¶i
b TÝnh tõ ph¶i sang tr¸i
x
nx x
x x
x
x x
x
x
cos
2coscos
sin
2sinsin
2coscos
2sinsin
cos
sin
++
+++
++
++
Trang 7Bài 4: Lập phơng trình nhập vào một số tự nhiên n Tính giá trị biểu thức
!1
2
n
x x
+++
Với độ chính xác 0.00001 Tức là n cần chọn sao cho
!
n
x n
< 0.00001 Bài 6:
Lập chơng trình tính sin (x) theo công thức sau:
sin ( x) = x -
!12()1(
!5
!3
1 2 5
+
−+
−
n
x x
n
độ chính xác là esp
!12(
1 2
!2
4
x + - + ( -1 )
!2(
2
n
x n n
độ chính xác là esp
!2(
Trang 8Đọc vào một dãy số cho đến khi tổng của chúng lớn hơn 200 Tính trung bình cộng các số đã đọc.
Bài 14 :
Lập chơng trình xác định số hạng thứ n của dãy Fibonaci biết :
fn = f1 = 1
fn =fn-1 + fn - 2 Bài 15 :
Cho số thực a lập chơng trình tìm số tự nhiên bé nhất thoả mãn
1 + 1/2 + 1/3 + 1/4 + +1/n >a Bài 16 :
Nhập số m nguyên dơng dới dạng thực và liệt kê m số nguyên tố đầu tiên lên màn hình.
Nhập vào một dãy số thực tối đa 50 phân tử Nhập vào số nguyên k
a Xoá phần tử ở vị trí k trong dãy vừa nhập.
b Nhập vào số thực x Chèn x vào vị trí thứ k
Bài 3 :
Nhập vào một dãy số nguyên Hãy sắp xếp dãy số đó theo chiều tăng dần Chèn vào dãy một số x sao cho không mất tính tăng dần của dãy In dãy mới ra màn hình Bài 4 :
Lập chơng trình nhập vào một dãy số Tìm phần tử lớn nhất, nhỏ nhất và vị trí của
nó trong dãy vừa nhập
Bài 5 :
Viết chơng trình nhập vào một mảng số thực Sắp xếp mảng theo thứ tự tăng dần, giảm dần
Bài 6 :
Viết chơng trình nhầp vào một dãy số, sau đó tách dãy này thành 2 dãy chứa số
âm và dơng riêng biệt Tính tổng số phần tử của mỗi dãy sau đó sắp xếp dãy dơng theo thứ tự tăng dần, dãy âm theo thứ tự giảm dần
Trang 9T2 = 1/A1 - 1/A2 + 1/A3 - 1/A 4 + + ( -1) N-1 1/AN
Bài 10 Cho mảng A[1 50] gồm các phần tử tự nhiên với A[1] = 12m +2 Hãy tính
- Tổng các phần sử chia hết cho 3 của mảng
- Tổng các căn bậc 2 của các phần tử chia cho 7 d 4
- Tích các phần tử từ thứ 20 đến thứ 22 trong mảng
Bài 11:
Nhập vào một dãy n số thực, in dãy vừa nhập ra màn hình Tìm và in giá trị của phần tử Max, Min và vị trí của chúng trong mảng, sau đó đổi chỗ 2 phần tử này cho nhau IN ra dãy sau khi đổi chỗ
Trang 10a Đa ra thông báo có phần tử nào trong mảng có giá trị bằng x không Trong mảng có bao nhiêu phần tử có giá trị = x, hãy chỉ ra các vị trí trong mảng của các phần tử
d Tính trung bình của các số thuộc đoạn [ 20, 200 ]
e Sắp các số lẻ lên dãy đầu, các số chẵn xuống cuối dãy
a Xoá các số chẵn và chia hết cho 3 có trong dãy
b Xoá các số lẻ thuộc [ 10, 30 ] Đa ba dãy ra màn hình
Bài 22 :
Lập trình đọc vào từ bàn phím một dãy số nguyên
a Sắp xếp dãy theo thứ tự sau : Đầu dãy là các số chẵn chia hết cho 3, cuối dãy là các số lẻ chia hết cho 5 đoạn giữa là các số còn lại
b Đa ra màn hình các số và vị trí của nó trong dãy thoả mãn điều kiện : lẻ và chia hết cho 7
Bài 23 :
Lập trình đọc vào từ bàn phím một dãy n số nguyên ( n>3)
a Đọc một số nguyên x, thay giá trị của số thứ 3 bằng x
Trang 11Nhập một dãy số thực a Hãy thực hiện công việc loại bỏ sau : các phần tử trùng nhau trong dãy chỉ giữ lại một
Bài 26:
Viết phơng trình nhập vào mảng Amxn Tính tổng của các phần tử dơng và tổng các phần tử âm trên mỗi cột
Bài 27:
Cho mảng Amxn các số thực đợc nhập từ bàn phím Hãy
a Tính tổng các căn bậc hai của trị tuyệt đối của các phần tử > 3 hoặc không lớn hơn -1
b Tính tổng các phần nguyên của các phần tử có trị tuyệt đối > 1
- Chuyển xâu đó thành xâu chữ hoa
- Chuyển xâu đó thành xâu chữ thờng
- Các kỹ tự thờng trong xâu cũ đợc chuyển thành hoa và ngợc lại
Bài 3:
Nhập vào 2 xâu Kiểm tra 2 xâu đó bằng nhau không Nếu không thì thông báo vị trí khác nhau đầu tiên
Bài 4:
Trang 12Viết phơng trình nhập vào một xâu.Kiểm tra xem xâu đó có phải là xâu đối xứn hay không?
Bài 8:
Nhập vào một xâu văn bản Viết chơng trình thay tất cả các ký tự 'a' trong xâu =
ký tự 'b' và tìm số lầm xuất hiện của ký tự a trong xâu đó
Bài 12:
Lập chơng trình nhập một xâu từ bàn phím Kiểm tra và đa ra thông báo xâu này
có phải là xâu chuẩn bị không In xâu theo thứ tự ngợc lại
Bài 13:
Lập chơng trình nhập vào một xâu gồm họ và tên Đa ra màn hình họ, tên, họ đệm ( nếu có ) dới dạng : Họ Tên Họ đệm
Bài 14:
Lập trình thực hiện công việc sau
a Nhập một xâu st không quá 80 ký tự từ bàn phím Đa xâu vừa nhập ra màn hình
b Nhập 2 số nguyên n, m từ bàn phím Kiểm tra nếu n khác m và 1 ≤ n , m ≤ length(st) thì đổi chỗ hai ký tự thứ n và m cho nhau Đa xâu sau khi đổi chỗ ra màn hình
Trang 13Bài 15:
Lập chơng trình nhập vào một xâu ký tự
a, Đa xâu về dạng chuẩn
b Nhập vào số nguyên k, đa ra màn hình từ thứ có k trong xâu
c Xoá tất cả các từ bằng tự thứ k vừa tìm đợc Đếm số từ vừa bị xoá Đa xâu sau khi xoá ra màn hình
Viết chơng trình con tìm USCLN của hai số nguyên dơng Sử dụng để tính
USCLN của 4 số nguyên dơng a,b,c,d nhập từ bàn phím
Bài 3: Cho hàm :
).(
),
(x y = a−b a+b
∫
Trong đó : a = (xsin(x+2)+5 khi x > 100
3 2x+3 khi x ≤ 100
b = phần nguyên của y -> modf ( y&b)
a Lập chơng trình con tính giá trị hàm f(x) với x,y là số thực nhập từ bàn phím
Bài 5: a Viết hàm tính giá trị.
F (x) = 1 + sin (x) + sin2 (x) +sin3 (x) + + sin50 (x)
b Lập phơng trình nhập vào 4 số a,b,c,d Tính tổng F (a) +F (b) +F (c) +F (d) Bài 6: Nhập vào số tự nhiên n
a Lập phơng trình con kiểm tra một số có phải là số nguyên tố hay không?
b Tìm tổng tất cả các số nguyên tốt nhỏ hơn n
Bài 7: Nhập vào số tự nhiên n
a Lập chơng trình con kiểm tra xem, n, m có nguyên tố cùng nhau hay không ?
b Lập phơng trình kiểm kê các số bé hơn n và nguyên tố cùng nhau với n
Bài 8:
Một số nguyên dơng đợc gọi là đối xứng nếu chữ số thứ nhất bằng chữ số cuối cùng, chữ số thứ hai bằng chữ số gần cuối
Trang 14a Lập chơng trình con kiểm tra tính đối xứng của một số nguyên dơng
15)
(
x
x x
a Nhập chơng trình con tính hàm f (x)
b Nhập một số a từ bàn phím Tính và đa ra màn hình giá trị f ( a)
Bài 10 : a Lập chơng trình con tính giai thừa của 1 số n bất kỳ.
b Sử dụng chơng trình con để tính giá trị của biểu thức sau :
)(
!
!
m n
m n
++
Bài 11 :
Lập chơng trình thực hiện các công việc sau :
a Lập phơng trình có tính giai đoạn thừa của một số n bất kỳ
b Sử dụng chơng trình con để tính giá trị của biểu thức sau
s = 1 +2! +3! + +n!
Bài 12.
Lập phơng trình thực hiện công việc sau :
a Viết phơng trình con tìm giá trị lớn nhất của hai số x, y bất kỳ
b Sử dụng chơng trình con trên để tìm giá trị lớn nhất của 4 số a, b, c, d nhập từ bàn phím
IX Cấu trúc
Bài 1: Lập chơng trình nhập vào danh sách sinh viên ( số phần tử không biết trớc )
đến khi hoten thì dừng Mỗi sinh viên gồm có các thông tin , họ tên tuổi, điểm toán,
điểm lý , tổng điểm
1 In ra màn hình những sinh viên có tổng điểm > 14
2 In ra những sinh viên phải thi lại
3 Sắp xếp theo thứ tự tăng dần của tổng điểm
Bài 2: Lập chơng trình quản lý cán bộ gồm các thông tin: họ tên, ngày sinh ( ngày, tháng, năm ) bậc lơng
1.Sắp xếp danh sách theo trờng họ tên ( cùng tên thì sắp theo tuổi )
2 Tìm kiếm ngời có tên nhập từ bàn phím
3.Tính tổng số lơng của n ngời ( lơng = bậc lơng *210.000 )
Bài 3: Viết phơng trình quản lý điểm của một lớp gồm có những nhiệm vụ sau :
1.Nhập hồ sơ của mỗi học sinh gồm có họ tên, năm sinh, điểm trung bình học kỳI , điểm trung bình học kỳ II , điểm trung bình cả năm
Trang 152 In ra danh sách các học sinh có điểm trung bình cả năm từ 5,0 trở lên theo thứ
tự giảm dần của điểm trung bình cả năm
3.In ra các danh sách học sinh lu ban
4 Tính tỷ lệ học sinh giỏi, khá, trung bình, yếu của lớp
Bài 4: Lập chơng trình quản lý cán bộ gồm có các thông tin ; Họ tên, ngày sinh (ngày, tháng, năm ) giới tính , bậc lơng
1.Nhập danh sách cán bộ
2.Đa ra danh sách những ngời đã đến tuổi về hu ( nam là 60 tuổi, nữ là 55 tuổi) theo thứ tự a,b,c của tên
3 Những ngời có lơng cao nhất
4 Chèn vào vị trí thứ 3 trong danh sách một cán bộ mới
Trang 16write('Ban kinh duong tron R= ');
writeln('Dien tich xung quanh: ',4*sqr(a));
writeln('The tich: ',a*a*a);
writeln('Duong cheo: ',a*sqrt(3):0:2);
Trang 21writeln('a So tu nhien co ',cs,' chu so');
writeln('b Tong cac chu so cua n= ',a+b+c);
writeln('c Chu so cuoi cung cua n la: ',a);
writeln('d Chu so dau tien cua n la: ',dau);
Trang 23begin
writeln('Tinh dien tich hinh thang:');
write('Do dai day lon= ');
'+': writeln('Ket qua= ',x+y:0:1);
'-': writeln('Ket qua= ',x-y:0:1);
'*': writeln('Ket qua= ',x*y:0:1);
'/': if y=0 then writeln('Khong the chia 1 so cho 0!') else writeln('Ket qua= ',x/y:0:1);
Trang 27if (i+j=36)and (slchan=100) then
write('Ga: ',i,' con & Cho: ',j,' con');
Trang 33writeln('a Ket qua tinh tu trai sang phai: ',t);
for i:=10000 downto 1 do
begin
if (i mod 2)=0 then
dau:=1
Trang 46writeln('Tong cac chu so: ',tcs);
writeln('So cac chu so: ',socs);
Trang 49writeln('Day sau khi sap xep:');
end
Bài 5:
Trang 52writeln('So duong lon nhat la: ',max);
writeln('So am nho nhat la: ',min);
Trang 53writeln('Tong cac phan tu chia het cho 3 la: ',t1:0:0);
writeln('Tong can bac 2 cua cac phan tu chia 7 du 4 la: ',t2:0:2); writeln('Tich cac phan tu tu thu 20 den 22 la: ',t3:0:0);
Trang 59writeln('Min so chan la: ',min);
writeln('Max so le la: ',max);
dmax:=0; {Dem so = max}
dchan:=0; {Dem so chan}
Trang 60writeln('Co ',d1,' so nam trong doan [50,100]');
writeln('Co ',dmax,' so = so lon nhat');
writeln('Tong cac so le = ',tle,' & trung binh cong cac so chan la = ',tchan/dchan:0:2);
if d2=0 then
writeln('Khong co so nao nam trong doan [20,200]')
else
writeln('Trung binh cong cac so trong doan [20,200] la: ',t2/d2:0:2);
writeln('Day sau khi sap xep so le len truoc so chan:');
writeln('Tong cac so chan khong am la: ',t1);
writeln('Tong cac so thoa man |A[i]|<i^2 la: ',t2);
readln;
end
Trang 64for i:=2 to round(sqrt(x)) do
if (x mod i)=0 then
writeln('So phan tu da nhap: ',d1-1);
writeln('So phan tu chia het cho 2 & 5 la: ',d2);
writeln('So phan tu la so nguyen to: ',d3);
Trang 71writeln('Xau da chuan hoa: "',s,'"');
writeln('Xau tren co ',dem,' tu');
readln;
end
Bài 8:
program bai8;
Trang 74while chuan and (i<length(s)) do
writeln('Xau tren khong phai la 1 xau chuan');
for i:=length(s) downto 1 do
for i:=1 to length(s)-1 do
if(s[i]=' ')and(s[i+1]<>' ')then
Trang 76for i:=1 to length(s)-1 do
if (s1[i]=' ')and(s[i+1]<>' ')then
writeln('Co ',dem,' tu ',tu,' trong xau');
writeln('Xau sau khi bi xoa het cac tu ',tu,' la: "',s,'"'); readln;
end
VIII.CHƯƠNG TRÌNH CON
Bài 1:
Trang 79procedure nhap(var a:mang;n:integer);
Trang 82writeln('m & n khong phai nguyen to cung nhau');
writeln('Cac so nho hon n & nguyen to cung nhau voi n la:'); for i:=1 to n-1 do
Trang 87if not tontai then
writeln('Khong tim duoc nguoi co ten nhu tren'); luong:=0;
Trang 88writeln('| _| | | _| _| |'); for i:=1 to n do
begin
with hs[i] do
if dtb>5 then
writeln('|',j:3,'|':3,hoten:15,'|':4,namsinh:8:0,'|':5,dtbk1:7:2,'|':3,dtbk2:8:2,'|':2,dtb:8:2,'|':5); inc(j);
end;
writeln('| _| | | _| _| |'); j:=1;
writeln(' DANH SACH HOC SINH LUU BAN');
writeln(' '); writeln('| STT | Ho & ten | Nam sinh | DTB HK1 | DTB HK2 | DTB ca nam |');
writeln('| _| | | _| _| |'); for i:=1 to n do
begin
with hs[i] do
if dtb<5 then
writeln('|',j:3,'|':3,hoten:15,'|':4,namsinh:8:0,'|':5,dtbk1:7:2,'|':3,dtbk2:8:2,'|':2,dtb:8:2,'|':5); inc(j);
end;
writeln('| _| | | _| _| |'); gioi:=0;
writeln('Ty le hoc sinh gioi la: ',round(gioi/n*100),'%');
writeln('Ty le hoc sinh kha la: ',round(kha/n*100),'%');
writeln('Ty le hoc sinh trung binh la: ',round(tb/n*100),'%');
writeln('Ty le hoc sinh yeu la: ',round(yeu/n*100),'%');
Trang 89writeln('| _| | | _| _| | _|'); for i:=1 to n do
with cb[i] do
writeln('|',j:3,'|':3,hoten:14,'|':5,ngay:4,'|':3,thang:4,'|':4,nam:4,'|':4,gt:6,'|':7,bluong:8,'|':4);
writeln('| _| | | _| _| | _|'); for i:=1 to n-1 do
writeln('| _| | | _| _| | _|'); for i:=1 to n do
with cb[i] do
if((gt='Nam')and(nam<=1948))or((gt='Nu')and(nam<=1953))then
writeln('|',j:3,'|':3,hoten:14,'|':5,ngay:4,'|':3,thang:4,'|':4,nam:4,'|':4,gt:6,'|':7,bluong:8,'|':4);
writeln('| _| | | _| _| | _|');