Bài viết: 65 



BÀI 1: Viết chương trình nhập từ bàn phím vào số nguyên dương n và danh sách số nguyên phân biệt. Đưa ra mạn hình số lượng phần tử chia hết cho 5 trong danh sách đó.
Lời giải:
N=int (input ('so nguyen duong: '))
A=0
For i in range (1, n+1) :
If i%5==0: A=a+1
Print (' số số hạng chia hết cho 5 trong dãy là ', a)
BÀI 2: Viết hàm kiểm tra một số nguyên n có là số nguyên tố. In các cặp số sinh đôi nhỏ hơn 1000. Các số "sinh đôi" là các số nguyên tố mà khoảng cách giữa chúng là 2.
Lời giải:
Def prime (n) :
S=0
For i in range (2, n) :
If n%i==0:
S=1
Return s
N=int (input ('nhap so nguyen'))
For i in range (2, n+1) :
If prime (i) ==0:
For y in range (2, n+1) :
If prime (y) ==0:
If i-y==2:
Print (y, i)
BÀI 3: Viết chương trình nhập vào số nguyên dương chẵn n từ bàn phím. Phân tích n thành tổng của hai số nguyên tố.
Lời giải:
Def prime (n) :
S=0
For i in range (2, n) :
If n%i==0:
S=1
Return s
N=int (input ('nhap so nguyen'))
For i in range (2, n+1) :
If prime (i) ==0:
For y in range (2, int (n//2) +1) :
If prime (y) ==0:
If y=i ==n: Print (y, i)
(còn nhiều nữa nên mình sẽ để ở các bài sau ạ ^. ^)
Bài 4 . (1.5 điểm) Cho giá trị a=31, b=16, c=8, d=5. Hãy xác định giá trị của biểu thức D:
D: = sqr (d) + b > c*d + a
(Tính cụ thể từng bước)
Giải
Sqr (d) + b = 25 + 16 = 41
C*d + a = 40 + 31 = 71
41 >= 71 → D: = FALSE
Bài 5. (1 điểm) Viết câu lệnh rẽ nhánh tính:
Giải
Cách 1:
If (x >= 0) and (y >= 0)
Then A: = sqr (x) + sqr (y) + 1 else A: = sqrt (x*y) ;
Cách 2:
If (x < 0) and (y < 0)
Then A: = sqrt (x*y) else A: = sqr (x) + sqr (y) + 1;
Bài 6. (2.5 điểm) Viết chương trình:
- Nhập mảng một chiều các số nguyên (không quá 100 phần tử).
- Đếm và tính tổng các số chẵn và là bội của 3. Thông báo kết quả ra màn hình.
Giải:
Sqrt (x*y) ;
Cách 2:
If (x < 0) and (y < 0)
Then A: = sqrt (x*y) else A: = sqr (x) + sqr (y) + 1;
Bài 3.
Program bt_3;
Uses crt;
Var a: Array[1.. 100] of integer;
Dem, Tong, n, i: Integer;
Begin
Clrscr;
Writeln ('nhap so phan tu, n=') ;
Readln (n) ;
for i: = 1 to n do
begin
writeln ('nhap gia trij phan tu thu ', i, ' =') ;
readln (a) ;
end;
Dem: =0;
Tong: =0;
For i: =1 to n do
If (amod 2 = 0) and (amod 3 = 0) then
begin
Dem: = Dem+1;
Tong: = Tong+a;
end;
writeln ('Dem la: ', Dem) ;
Writeln ('Tong la: ', Tong) ;
Readln
End.

Lời giải:
N=int (input ('so nguyen duong: '))
A=0
For i in range (1, n+1) :
If i%5==0: A=a+1
Print (' số số hạng chia hết cho 5 trong dãy là ', a)
BÀI 2: Viết hàm kiểm tra một số nguyên n có là số nguyên tố. In các cặp số sinh đôi nhỏ hơn 1000. Các số "sinh đôi" là các số nguyên tố mà khoảng cách giữa chúng là 2.
Lời giải:
Def prime (n) :
S=0
For i in range (2, n) :
If n%i==0:
S=1
Return s
N=int (input ('nhap so nguyen'))
For i in range (2, n+1) :
If prime (i) ==0:
For y in range (2, n+1) :
If prime (y) ==0:
If i-y==2:
Print (y, i)
BÀI 3: Viết chương trình nhập vào số nguyên dương chẵn n từ bàn phím. Phân tích n thành tổng của hai số nguyên tố.
Lời giải:
Def prime (n) :
S=0
For i in range (2, n) :
If n%i==0:
S=1
Return s
N=int (input ('nhap so nguyen'))
For i in range (2, n+1) :
If prime (i) ==0:
For y in range (2, int (n//2) +1) :
If prime (y) ==0:
If y=i ==n: Print (y, i)
(còn nhiều nữa nên mình sẽ để ở các bài sau ạ ^. ^)
Bài 4 . (1.5 điểm) Cho giá trị a=31, b=16, c=8, d=5. Hãy xác định giá trị của biểu thức D:
D: = sqr (d) + b > c*d + a
(Tính cụ thể từng bước)
Giải
Sqr (d) + b = 25 + 16 = 41
C*d + a = 40 + 31 = 71
41 >= 71 → D: = FALSE
Bài 5. (1 điểm) Viết câu lệnh rẽ nhánh tính:
Giải
Cách 1:
If (x >= 0) and (y >= 0)
Then A: = sqr (x) + sqr (y) + 1 else A: = sqrt (x*y) ;
Cách 2:
If (x < 0) and (y < 0)
Then A: = sqrt (x*y) else A: = sqr (x) + sqr (y) + 1;
Bài 6. (2.5 điểm) Viết chương trình:
- Nhập mảng một chiều các số nguyên (không quá 100 phần tử).
- Đếm và tính tổng các số chẵn và là bội của 3. Thông báo kết quả ra màn hình.
Giải:
Sqrt (x*y) ;
Cách 2:
If (x < 0) and (y < 0)
Then A: = sqrt (x*y) else A: = sqr (x) + sqr (y) + 1;
Bài 3.
Program bt_3;
Uses crt;
Var a: Array[1.. 100] of integer;
Dem, Tong, n, i: Integer;
Begin
Clrscr;
Writeln ('nhap so phan tu, n=') ;
Readln (n) ;
for i: = 1 to n do
begin
writeln ('nhap gia trij phan tu thu ', i, ' =') ;
readln (a) ;
end;
Dem: =0;
Tong: =0;
For i: =1 to n do
If (amod 2 = 0) and (amod 3 = 0) then
begin
Dem: = Dem+1;
Tong: = Tong+a;
end;
writeln ('Dem la: ', Dem) ;
Writeln ('Tong la: ', Tong) ;
Readln
End.
Last edited by a moderator: