TIẾT 33 + 34: BÀI TẬP
1. Ổn định tổ chức
Lớp | Ngày dạy | Sĩ số | Họ tên học sinh vắng | Ghi chú |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
3. Dạy bài mới
Bài 6.
program bai6;
uses crt;
var Array[1..100] of integer;
i,n,dem,u,d:integer;
begin
clrscr;
write('Nhap so luong phan tu: ');readln(n);
for i:=1 to n do
begin
repeat
write('Nhap phan tu thu ',i,': ');
readln(a);
if abs(A)>1000 then write('Nhap so <1000 OK');
until abs(A)<1000;
end;
dem:=0;
for i:=1 to n do
begin
if a mod 2= 0 then dem:=dem+1;
end;
writeln('So luong so le: ',n-dem);
writeln('So luong so chan: ',dem);
for i:=1 to n do
if a>1 then
begin
u:=2;
while (u<=sqrt(A)) and (A mod u <> 0) do
u:=u+1;
if u>sqrt(A) then d:=d+1;
end;
write('So luong so nguyen to: ',d);
readln
end.
Bài 7.
program bai7;
uses crt;
var n, i:word; f, f1,f2:word;
begin
clrscr;
repeat
write('Nhap N: ');readln(n);
if n<2 then writeln('Nhap N>2 OK!');
until n>=2;
f1:=1;
f2:=2;
for i:=3 to n do
begin
f:=f1+f2;
f1:=f2;
f2:=f;
end;
write('So fibonaxi thu ',n,' la ' ,f);
readln
end.
Chương trình thực hiện đến Nmax=10001.
Bài 8.Chương trình thực hiện việc hoán đổi vị trí dòng thứ i với dòng thứ N-i+1, nghĩa là hoán đổi vị trí dòng đầu tiên với dòng cuối cùng của mảng hai chiều, dòng thứ hai từ trên xuống với dòng thứ hai từ dưới lên,… Việc hoán đổi vị trí dòng thứ i với dòng đối xứng với nó được thực hiện khi i nhận giá trị từ 1 đến N, làm cho mỗi dòng được hoán đổi vị trí 2 lần. Vì vậy mảng A sau khi hoán đổi không thay đổi so với ban đầu.
Bài 9.
program bai9;
uses crt;
var Array[1..15,1..15] of integer;
N, i, j, max, ind, vsp:integer;
begin
clrscr;
write('Nhap N: ');readln(n);
for i:=1 to n do
for j:=1 to n do
begin
write('Nhap A[',i,',',j,']: ');
readln(A[i,j]);
end;
for i:=1 to n do
begin
max:=A[1,i];ind:=1;
for j:=2 to n do
if A[j,i] > max then
begin
max:=A[j,i];
ind:=j;
end;
vsp:=A[i,i];
A[i,i]:=max;
A[ind,i]:=vsp;
end;
for i:=1 to n do
begin
writeln;
for j:=1 to n do write(A[i,j]);
end;
writeln;
readln
end.
Bài 10.
program bai10;
uses crt;
var S:string;
i,dem,n:integer;
begin
clrscr;
write('Nhap xau: ');readln(S);
n:=length(S);
dem:=0;
for i:=1 to n do
if (s>='0') and (s<='9') then dem:=dem+1;
write('Co ',dem,' chu so trong xau vua nhap');
readln
end.
Bài 11.
program bai11;
uses crt;
const max=60;
type Hocsinh = record
hoten:string[30];
ngaysinh:string[10];
diachi:string[50];
toan, van:real;
xeploai:char;
end;
var loprray[1..max] of hocsinh;
N, i:byte;
begin
clrscr;
write('Nhap so luong hoc sinh: ');readln(n);
for i:=1 to n do
with lop do {Chú ý câu lệnh này}
begin
writeln('Nhap so lieu hoc sinh thu ',i,':');
write('Ho va ten: ');readln(hoten);
write('Ngay sinh: ');readln(ngaysinh);
write('Dia chi : ');readln(diachi);
write('Diem toan: ');readln(toan);
write('Diem van : ');readln(van);
if toan+van>=18 then xeploai:='A';
if (toan+van>=14) and (toan+van<18) then xeploai:='B';
if (toan+van>=10) and (toan+van<14) then xeploai:='C';
if (toan+van<10) then xeploai:='D';
end;
clrscr;
writeln('Danh sach hoc sinh:');
for i:=1 to n do
with lop do
writeln(hoten0,'- xep loai: ',xeploai);
writeln('Danh sach hoc sinh loai A:');
for i:=1 to n do
with lop do
if xeploai='A' then
writeln(hoten0);
readln
end.