Trong thời đại CNTT phát triển nhanh với tốc độ chóng mặt như hiện nay, Tin học Văn phòng là một trong những Kỹ năng mềm không thể thiếu được với mỗi sinh viên, nhân viên văn phòng,… Bất kỳ Nhà tuyển dụng nào cũng thường yêu cầu rất cao khả năng sử dụng thành thạo Tin học văn phòng như: Word, Excel, PowerPoint, Access,…Và trong những năm gần đây thì yêu cầu đó ngày càng cao hơn trước rất nhiều. Trang bị Kiến thức, kỹ năng sử Tin học văn phòng thành thạo là một việc rất cần thiết trước khi bạn tiến hành đi xin việc.
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
Đại học Công nghệ Thông tin
-
-THỰC HÀNH MÔN TIN HỌC ĐẠI CƯƠNG
Bài số 3 : CÁC CÂU LỆNH LẶP
1 MỤC TIÊU
1.1 Phân tích được yêu cầu bài toán
1.2 Chọn loại vòng lặp thích hợp để xử lý bài toán
2 BÀI TẬP THỰC HÀNH
2.1 Chương trình tính biểu thức theo công thức cho trước
2.2 Một số bài tập đề nghị
3 XÁC ĐỊNH LỖI TRONG CHƯƠNG TRÌNH MẪU
3.1 Chương trình tính biểu thức theo công thức cho trước
2 BÀI TẬP THỰC HÀNH
2.1 Chương trình tính biểu thức theo công thức cho trước
Nhập một số nguyên dương N Tính :
n
n
S 12
1
2 2
1
Với một số nguyên dương N bất kỳ, để tính tổng từ 1 đến N, ta cần dùng một
vòng lặp (ví dụ vòng lặp for) và thực hiện thao tác cộng dồn Sau đó thực hiện
thao tác chia (S1) hoặc lấy căn (S2) Lưu ý rằng, S1 và S2 có thể không nguyên,
Trang 2do đó chúng ta dùng kiểu float Mặt khác, để tối ưu bài toán ta tính đồng thời S1
và S2 trong cùng một vòng lặp
#include <stdio.h>
#include <conio.h>
#include <math.h>
void main()
{
int k, n;
float S1, S2;
do {
printf(‘ Nhập một số nguyên dương bất kỳ :’);
scanf(“%d”, &N);
if (n<=0)
printf(‘%d không phải là số nguyên dương.’, n);
}while(n<=0);
S1:=0; //khởi gán giá trị ban đầu cho S1 và S2
S2:=0;
for (k=1; k <= n;k++)
{
S1 = S1 + k;
S2 = S2 + k*k;
}
S1 = S1/n; //N nguyên dương, do đó khác 0
S2 = sqrt(S2);
printf(‘Kết qủa S1 = %d, S2 = %d ’, S1, S2);
getch();
}
Trong chương trình trên, chúng tôi dùng vòng lặp for để tính biểu thức tổng.
Đề nghị các anh chị viết lại đoạn chương trình đó với vòng lặp while, và do …
while.
2.2 Một số bài tập đề nghị
Nhập vào một số nguyên dương n Xuất ra n có bao nhiêu chữ số
Nhập số n nguyên đảm bảo sao cho n dương ( Nếu nhập n 0 thì chương trình phải bắt nhập laị ), rồi tính:
S1 = 12 + 32 + 52 + 72 + + (2n+1)2
Trang 3 Bài tập 3:
Tìm và in lên màn hình tất cả các số nguyên trong phạm vi từ 10 đến 99 sao cho tích của hai chữ số của nó thì bằng hai lầøn tổng của hai chữ số của nó Ví dụ:
số N=36 có hai chữ số là 3 và 6, và 3*6 = 2*(3+6) Tương tự đối với số 44
Nhập N nguyên đảm bảo lớn hơn 1 Tính tổng các số lẻ N Ví dụ : nếu N=5 thì tổng S=1+3+5 = 9, nếu N=8 thì S=1+3+5+7=16
Nhập vào một số nguyên dương n, xác định n có phải là số nguyên tố hay không
Nhập vào 2 số nguyên dương, xuất ra ước chung lớn nhất và bội chung nhỏ nhất của 2 số đó
Nhập vào số nguyên dương n, in ra tất cả các ước số của n
Nhập vào số nguyên dương n, in ra n số nguyên tố đầu tiên
Nhập vào số nguyên dương n, in ra tất cả các số nguyên tố nhỏ hơn n
3 XÁC ĐỊNH LỖI TRONG CHƯƠNG TRÌNH MẪU
3 1 Chương trình tính biểu thức theo công thức cho trước
Đề bài :
Nhập một số nguyên dương N Tính:
n
S 1 3 5 nếu n lẻ
n
S 2 4 6 nếu n chẵn
#include <stdio.h>
#include <conio.h>
void main()
{
Trang 4long s;
do
printf(‘Nhập vào một số nguyên dương :’); scanf(“%d”, &n);
while(n<=0);
while (n>=0)
{
s = s*n;
n = n – 2;
}
printf(‘Kết quả là : %ld’, s);
getch();
}