Bài tập ôn tập môn Tin học Lớp 8

Bài tập 1.4:

 Viết chương trình tính diện tích của tam giác có ba cạnh là a,b,c (được nhập từ bàn phím)

a. Hướng dẫn:

- Nhập ba cạnh của tam giác vào ba biến a,b,c.

- Nửa chu vi của tam giác p = (a+b+c)/2.

Bài tập 2.2:

Viết chương trình in ra số lớn nhất trong bốn số nhập từ bàn phím.

a. Hướng dẫn:

 Nếu a b và a c và a d thì a là số lớn nhất.

 Tương tự như thế xét các trường hợp còn lại để tìm số lớn nhất.

b. Mã chương trình:

 

doc14 trang | Chia sẻ: lethuong715 | Lượt xem: 519 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Bài tập ôn tập môn Tin học Lớp 8, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Bài tập 1.4:
	Viết chương trình tính diện tích của tam giác có ba cạnh là a,b,c (được nhập từ bàn phím)
a. Hướng dẫn:
- Nhập ba cạnh của tam giác vào ba biến a,b,c.
- Nửa chu vi của tam giác p = (a+b+c)/2.
- Diện tích của tam giác: s =.
b. Mã chương trình:
Program TAM_GIAC;
uses crt;
Var a,b,c,p,S: real;
Begin
 clrscr;
 Write('Nhap canh a:');readln(a);
 Write('Nhap canh b:');readln(b);
 Write('Nhap canh c:');readln(c);
 p:=(a+b+c)/2;
 S:= sqrt(p*(p-a)*(p-b)*(p-c));
 Write('Dien tich tam giac la:',s:10:2);
 readln
end.
Bài tập 2.2:
Viết chương trình in ra số lớn nhất trong bốn số nhập từ bàn phím.
a. Hướng dẫn:
	Nếu a³ b và a³ c và a³ d thì a là số lớn nhất.
	Tương tự như thế xét các trường hợp còn lại để tìm số lớn nhất.
b. Mã chương trình:
Program So_Lon_Nhat_1;
Uses crt;
Var a,b,c,d: real;
Begin
 Clrscr;
 Write('Nhap so thu nhat:');readln(a);
 Write('Nhap so thu hai:');readln(b);
 Write('Nhap so thu ba:');readln(c);
 Write('Nhap so thu tu:');readln(d);
 if (a>=b) and (a>=c) and (a>= d) then writeln('So lon nhat la:',a:10:2);
 if (b>=a) and (b>=c) and (b>= d) then writeln('So lon nhat la:',b:10:2);
 if (c>=a) and (c>=b) and (c>= d) then writeln('So lon nhat la:',c:10:2);
 if (d>=a) and (d>=b) and (d>= c) then writeln('So lon nhat la:',d:10:2);
 readln
end.
Bài tập 3.1:
	Viết chương trình in ra các số chẵn nhỏ hơn hoặc bằng n ( Với n được nhập).
a. Hướng dẫn: 
- Cho biến i chạy từ 1 đến n.
- Nếu i chẵn ( i chia 2 dư 0) thì in ra số n.
b. Mã chương trình:
Program In_So_Le;
Uses crt;
var i,n: integer;
Begin
 Clrscr;
 Write('Nhap so n ='); readln(n);
 For i:=1 to n do if i mod 2 =1 then Write(i:3,',');
 readln
end.
Bài tập 3.2:
	Viết chương trình nhập vào 1 số n. in ra các số lẻ nhỏ hơn hoặc bằng n Sao cho 15 số lẻ được in trên một dòng.
a. Hướng dẫn: 
- Cho j =0.
- Cho biến I chạy từ 1 đến n.
- Nếu I chẵn ( I chia 2 dư 0) thì in ra số n và tăng j lên 1
- Nếu j chia hết cho 15 thì thực hiện xuống dòng (Dùng Writeln).
b. Mã chương trình:
Program In_So_Le;
Uses crt;
var Dem,i,n: integer;
Begin
 Clrscr;
 Write('Nhap so n ='); readln(n);
 Dem:= 0;
 For i:=1 to n do if i mod 2 =1 then
 Begin Write(i:3,',');
 Dem:= Dem + 1;
 if Dem mod 15 = 0 then Writeln;
 end;
 readln
end.
Bài tập 4.1:
	Viết chương trình nhập vào 1 số n, in ra các số lẻ nhỏ hơn hoặc bằng n ( Với n được nhập).
a. Hướng dẫn: 
- Sử dụng kiến thức số lẻ đầu tiên bằng 1. Số lẻ sau bằng số trước cộng với 2.
- Cho biến i có giá trị ban đầu bằng 1.
- Dùng vòng lặp while do với điều kiện i < n và công việc bên trong là in i và tăng i lên 2.
b. Mã chương trình:
Program In_So_Le;
uses crt;
var i,n:integer;
begin
 clrscr;
 write('Nhap so n: ');readln(n);
 i:=1;
 while i<=n do
 begin
 write(i:3,', ');
 i:=i+2;
 end;
 readln
end.
Bài tập 5.1
	Viết chương trình cho phép nhập n số và in ra theo thứ tự ngược lại. Ví dụ nhập 3, 5, 7 thì in ra 7, 5, 3.
a.Hướng dẫn:
Dùng biến n để lưu lượng số cần nhập.
Dùng mảng để lưu các số vừa nhập.
Cho i chạy từ n về 1 để in các số vừa nhập.
b.Mã chương trình:
Program mang_1;
uses crt;
var n, i: integer;
 M: array[1..100] of real;
Begin
 write('Nhap so n: ');readln(n);
 for i:=1 to n do
 Begin
 write('M[',i,']='); readln(M[i]);
 end;
 for i:= n downto 1 do write(m[i],’ ,’);
 readln
end.
Bài tập 5.2
	Viết chương trình nhập dãy n số và in ra tổng các số lẻ trong dãy số vừa nhập.
a. Hướng dẫn:
b. Mã chương trình:
Program Mang_Tong_Le;
uses crt;
var i,n:byte;
 M:array[1..100] of integer;
 tong:longint;
begin
 write('Nhap so phan tu cua day: ');readln(n);
 for i:=1 to n do
 begin
 write('M[',i,']'); readln(M[i]);
 end;
 tong:=0;
 for i:=1 to n do if M[i] mod 2 =1 then 
 tong:=tong+M[i];
 write('Tong cac so le trong day la: ',tong);
 readln
end.
Bài tập 5.3
	Viết chương trình nhập n số, xoá số thứ k trong n số vừa nhập.In ra n-1 số còn lại.
n= 10 (Nhập 10 phần tử)
Ví dụ: Nhập 2, 3, 4, 5, 6, 8, 7, 6, 5, 4.
k= 8 (Xoá phần tử thứ 8).
In ra: 2, 3, 4, 5, 6, 8, 7, 5, 4.
a. Hướng dẫn:
	Xoá phần tử k bằng cách ghi đè phần tử thứ k+1 lên nó.
b. Mã chương trình:
Program Xoa_mang;
uses crt;
var m:array[1..100] of integer;
 n,i,k:byte;
begin
 Write('So phan tu cua day: ');readln(n);
 for i:=1 to n do
 Begin
 write('M[',i,']=');
 readln(M[i]);
 end;
 write('Nhap phan tu can xoa: ');readln(k);
 for i:=k to n-1 do m[i]:=m[i+1];
 for i:=1 to n-1 do write(m[i],', ');
 readln
end.
Bài tập 5.4
	Viết chương trình cho phép nhập nhập một dãy gồm n số nguyên. Nhập thêm một số và chèn thêm vào dãy sau phần tử k.
a. Hướng dẫn:
- Dời các phần tử từ vị trí k về sau một bước.
- Nhập giá trị cần chèn vào vị trí k.
b. Mã chương trình:
Program Mang_chen;
uses crt;
var M: array[1..100] of integer;
 i,n,k:integer;
begin
 clrscr;
 write('Nhap : ');readln(n);
 for i:=1 to n do
 begin
 write('M[',i,']='); readln(M[i]);
 end;
 write('Vi tri chen: ');readln(k);
 for i:=n+1 downto k+1 do M[i]:=M[i-1];
 write('Nhap so can chen: '); readln(M[k]);
 for i:=1 to n+1 do write(M[i],', ');
 readln
end.
Bài tập 5.5
	Viết chương trình cho phép nhập n số và cho biết số nhỏ nhất trong các số vừa nhập là số thứ mấy.
a.Hướng dẫn:
Dùng biến n để lưu lượng số cần nhập.
Dùng mảng để lưu các số vừa nhập.
Cho Min = M[1], j = 1 (Xem phần tử đầu tiên là bé nhất)
So sánh Min với n-1 số còn lại. Trong quá trình so sánh nếu Min > M[i] thì gán Min = M[i], j=i và tiếp tục so sánh .
b.Mã chương trình:
Program TIM_NHO_NHAT;
uses crt;
var n,i,nhonhat:integer;
 m: array[1..100] of real;
 min:real;
begin
 write('Nhap n: '); readln(n);
 for i:=1 to n do
 begin
 write('M[',i,']=');
 readln(m[i]);
 end;
 min:=m[1];
 nhonhat:=1;
 for i:=2 to n do if m[i] < min then
 begin
 min:=m[i];
 nhonhat:=i;
 end;
 writeln('phan tu nho nhat la phan tu thu',nhonhat);
 readln
end.
Bài tập 5.6
	Viết chương trình cho phép nhập n số sắp xếp và in ra các số đã nhập theo thứ tự tăng dần.
a. Hướng dẫn:
b. Mã chương trình:
Program Sap_xep_1;
uses crt;
var n,i,k,nhonhat:integer;
 m: array[1..100] of integer;
 min,tam:integer;
begin
{--- Nhap mang co n phan tu------}
 write('Nhap n: '); readln(n);
 for i:=1 to n do
 begin
 write('M[',i,']=');
 readln(m[i]);
 end;
{---Tim so be nhat --------}
 for k:=1 to n do
 begin
 min:=m[k];
 nhonhat:=k;
 for i:=k+1 to n do if m[i] < min then
 begin
 min:=m[i];
 nhonhat:=i;
 end;
{----Doi cho m[k] voi m[j] vi m[j] nho nhat -----------}
 tam:=m[k];
 m[k]:=m[nhonhat]
 m[nhonhat]:=tam;
 end;
{----In mang sau khi sap xep --}
 for i:=1 to n do write(m[i],', ');
 readln
end.

File đính kèm:

  • docbai tap tp 8.doc