Đề cương môn Lập trình Cơ bản (Phần 1)

1. Ví dụ

+ Thuật toán giải phương trình bậc 1, giải phương trình bậc 2.

+ Thuật toán tìm số lớn nhất trong 3 số a, b, c.

+ Thuật toán tính trung bình cộng của 4 số a, b, c, d.

+ Thuật toán tìm đường đi ngắn nhất.

2. Khái niệm

Thuật ngữ thuật toán (Algorithm) là từ viết tắt của tên một nhà toán học ở

thế kỷ IX: Abu Ja’fa Mohammed ibn Musa al-Khowarizmi. Đầu tiên, thuật toán

được hiểu như là các quy tắc thực hiện các phép toán số học với các con số

được viết trong hệ thập phân. Cùng với sự phát triển của máy tính, khái niệm

thuật toán được hiểu theo nghĩa rộng hơn. Một định nghĩa hình thức về thuật

toán được nhà toán học người Anh là Alanh Turing đưa ra vào năm 1936 thông

quá máy Turing. Có thể nói lý thuyết thuật toán được hình thành từ đó.

Lý thuyết thuật toán liên quan đến vấn đề sau:

+ Giải được bằng thuật toán: Thay những thuật toán chưa tốt bằng những

thuật toán tốt hơn.

+ Triển khai thuật toán: Xây dựng những ngôn ngữ thực hiện trên máy tính

để mã hóa thuật toán.

Vậy, Thuật toán là một dãy hữu hạn các thao tác được bố trí theo một trình

tự xác định, được đề ra trước, nhằm giải quyết một bài toán nhất định.

Thao tác hay còn gọi là tác vụ, phép toán (Operation) hay lệnh

(Command), chỉ thị (Instruction) là một hành động cần được thực hiện bởi cơ

chế thực hiện thuật toán.

Mỗi thao tác biến đổi bài toán từ một trạng thái trước (hay trạng thái nhập)

sang trạng thái sau (hay trạng thái xuất). Thực tế mỗi thao tác thường sử dụng

một số đối tượng trong trạng thái nhập (các đối tượng nhập) và sản sinh ra các

đối tượng mới trong trạng thái xuất (các đối tượng xuất). Quan hệ giữa 2 trạng

thái xuất và nhập cho thấy tác động của thao tác. Dãy các thao tác của thuật toán

nối tiếp nhau nhằm biến đổi bài toán từ trạng thái ban đầu đến trạng thái kết quả.

Mỗi thao tác có thể phân tích thành các thao tác đơn giản hơn.

Đề cương môn Lập trình Cơ bản (Phần 1) trang 1

Trang 1

Đề cương môn Lập trình Cơ bản (Phần 1) trang 2

Trang 2

Đề cương môn Lập trình Cơ bản (Phần 1) trang 3

Trang 3

Đề cương môn Lập trình Cơ bản (Phần 1) trang 4

Trang 4

Đề cương môn Lập trình Cơ bản (Phần 1) trang 5

Trang 5

Đề cương môn Lập trình Cơ bản (Phần 1) trang 6

Trang 6

Đề cương môn Lập trình Cơ bản (Phần 1) trang 7

Trang 7

Đề cương môn Lập trình Cơ bản (Phần 1) trang 8

Trang 8

Đề cương môn Lập trình Cơ bản (Phần 1) trang 9

Trang 9

Đề cương môn Lập trình Cơ bản (Phần 1) trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 41 trang xuanhieu 10660
Bạn đang xem 10 trang mẫu của tài liệu "Đề cương môn Lập trình Cơ bản (Phần 1)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Đề cương môn Lập trình Cơ bản (Phần 1)

Đề cương môn Lập trình Cơ bản (Phần 1)
< 
email_add; 
 Cần phải nhấn mạnh rằng cout không nhảy xuống dòng sau khi xuất dữ 
liệu, vì vậy hai câu lệnh sau: 
 cout << "This is a sentence."; 
 cout << "This is another sentence."; 
 sẽ được hiển thị trên màn hình: 
 This is a sentence.This is another sentence. 
 Bởi vậy khi muốn xuống dòng chúng ta phải sử dụng ký tự xuống dòng, 
trong C++ là \n: 
 cout << "First sentence.\n "; 
cout << "Second sentence.\nThird sentence."; 
 sẽ viết ra màn hình như sau: 
 First sentence. 
 Second sentence. 
 Third sentence. 
 Thêm vào đó, để xuống dòng bạn có thể sử dụng tham số endl. Ví dụ: 
 cout << "First sentence." << endl; 
 cout << "Second sentence." << endl; 
 sẽ in ra màn hình: 
 25 
 Đề cương môn: Lập trình Cơ bản 
 First sentence. 
 Second sentence. 
 Tham số endl có một tác dụng đặc biệt khi nó được dùng với các dòng dữ 
liệu sử dụng bộ đệm: Các bộ đệm sẽ được flushed (chuyển toàn bộ thông tin từ 
bộ đệm ra dòng dữ liệu). Tuy nhiên, theo mặc định cout không sử dụng bộ đệm. 
 Các ký tự điều khiển 
 Đây là các kí tự đặc biệt, bắt đầu bằng kí tự \ tiếp theo là 1 kí tự dùng để 
điều khiển: chuyển con trỏ màn hình, vị trí in dữ liệu,.. 
 - \n : chuyển con trỏ màn hình xuống dòng mới 
 - \t : dấu tab 
 - \b : (backspace) lùi một kí tự (xoá kí tự trước vị trí con trỏ hiện tại). 
5.2. Nhập dữ liệu (cin) 
 Thao tác vào chuẩn trong C++ được thực hiện bằng cách sử dụng toán tử 
đã quá tải >> với dòng cin. Theo sau toán tử này là biến sẽ lưu trữ dữ liệu được 
đọc vào. Ví dụ: 
 int age; 
 cin >> age; 
 khai báo biến age có kiểu int và đợi nhập dữ liệu từ cin (bàn phím) để lưu 
trữ nó trong biến kiểu nguyên này. 
 cin chỉ bắt đầu xử lý dữ liệu nhập từ bàn phím sau khi phím Enter được gõ. 
Vì vậy dù bạn chỉ nhập một ký tự thì cin vẫn sẽ kiên nhẫn chờ cho đến khi bạn gõ 
phím Enter. 
 26 
 Đề cương môn: Lập trình Cơ bản 
 Chương 4. Các cấu trúc điều khiển 
1. Lệnh đơn và lệnh phức 
1.1. Lệnh đơn 
 Một biểu thức kiểu như: a =5; a+ =6; trở thành câu lệnh khi có đi kèm 
theo dấu chấm phẩy (;) phía cuối câu. 
 Ví dụ: 
 a = 5; 
 a+=6; 
1.2. Lệnh phức hay khối lệnh 
 Lệnh phức là một dãy các các câu lệnh được bao bởi cặp dấu ngoặc nhọn 
{}. 
 Ví dụ 1: 
 { 
 S+=(i*i); 
 i++; 
 } 
 Ví dụ 2: 
 { 
 cout<<a[i][j]<<" "; 
 if (j==i) 
 cout<<"\n"; 
 } 
2. Cấu trúc điều kiện if..else 
2.1. Dạng khuyết 
 If (biểu thức điều kiện) 
 { 
 Khối lệnh; 
 } 
 Cách hoạt động: Đầu tiên, chương trình kiểm tra biểu thức điều kiện sau 
if. Nếu biểu thức điều kiện đúng thì các câu lệnh trong khối lệnh trong cấu trúc if 
được thực hiện. Ngược lại, chương trình sẽ thoát ra khỏi cấu trúc if và thực hiện 
các lệnh tiếp theo sau cấu trúc if. 
 27 
 Đề cương môn: Lập trình Cơ bản 
 Biểu diễn dưới dạng lưu đồ cách hoạt động của cấu trúc if: 
 Sai 
 Biểu 
 thức đk 
 Đúng 
 Khối lệnh 
2.2. Dạng đầy đủ 
 if (biểu thức điều kiện) 
 { 
 Khối lệnh 1; 
 } 
 else 
 { 
 Khối lệnh 2; 
 } 
 Cách hoạt động: Đầu tiên, chương trình kiểm tra biểu thức điều kiện sau 
if, nếu biểu thức điều kiện đúng thì thực hiện các câu lệnh trong khối lệnh 1. 
Ngược lại, nếu biểu thức điều kiện sai sẽ thực hiện các câu lệnh trong khối lệnh 
2. 
 Biểu diễn bằng lưu đồ của cấu trúc if..else: 
 28 
 Đề cương môn: Lập trình Cơ bản 
 Sai 
 Biểu 
 thức đk 
 Đúng 
 Khối lệnh 2; 
 Khối lệnh 1; 
 Ví dụ 1: Sử dụng cấu trúc if và if..else để nhập vào điểm của 3 môn: Toán, 
lý, hóa và tính điểm trung bình: 
 #include 
 int main() 
 { 
 double dtb,dt,dl,dh; 
 cout<<"Diem toan la:"; 
 cin>>dt; 
 cout>dl; 
 cout>dh; 
 dtb = (dt+dl+dh)/3; 
 cout<<"diem trung binh 3 mon la:"<<"="<<dtb<<"\n"; 
 if (dtb<5) 
 cout<<"Hoc luc yeu"; 
 if (dtb>=5&&dtb<7) 
 cout<<"Hoc luc trung binh"; 
 if (dtb>=7 && dtb<8) 
 cout<<"Hoc luc kha"; 
 else 
 cout<<"Hoc luc gioi"; 
 return 0; 
 } 
 Ví dụ 2: Giải phương trình bậc 1: ax + b = 0 
 29 
 Đề cương môn: Lập trình Cơ bản 
 #include 
 #include 
 int main() 
 { 
 int a,b; 
 float x; 
 cout<<"Nhap a va b:"<<"\n"; 
 cin>>a>>b; 
 if (a==0 && b==0) 
 cout<<"Bat phuong trinh co vo so nghiem"; 
 if (a==0 && b!=0) 
 cout<<"Bat phuong trinh vo nghiem"; 
 if (a!=0) 
 cout<<"Bat phuong trinh co nghiem x = "<<-b/a; 
 } 
 Ví dụ 3: Viết chương trình nhập vào 1 số, tính căn bậc 2 của số đó 
 //Chuong trinh tinh can bac 2 
 #include 
 #include 
 main() 
 { 
 int a; 
 cout>a; 
 if (a<0) 
 cout<<"Khong tinh duoc"; 
 if (a>0) 
 cout<<"Can bac hai cua a la: "<< sqrt(a); 
 } 
3. Cấu trúc lựa chọn: switch..case 
 Cấu trúc switch..case cho phép lựa chọn một nhánh trong nhiều khả năng 
tùy vào điều kiện xảy ra. 
 Cú pháp: 
 switch (Biểu thức nguyên) 
 { 
 30 
 Đề cương môn: Lập trình Cơ bản 
 case n1: Khối lệnh 1; 
 case n2: Khối lệnh 2; 
 case nk: Khối lệnh k; 
 [default: Khối lệnh; ] 
 } 
 Trong đó: ni là các số nguyên, hằng ký tự hoặc biểu thức hằng. Các ni cần 
có giá trị khác nhau. 
 Đoạn chương trình nằm trong cặp ngoặc nhọn {} là thân của switch. 
 default, case là các từ khóa. default là thành phần không bắt buộc. 
 Cách hoạt động: sự hoạt động của cấu trúc switch..case phụ thuộc vào 
giá trị của biểu thức nguyên sau switch. 
 Đầu tiên được tính, sau đó lần lượt so sánh giá trị của 
 với các biểu thức hằng , ,... 
 Nếu giá trị của một biểu thức hằng thứ k trong các biểu thức này trùng với 
giá trị của thì chương trình sẽ thực hiện các lệnh bắt đầu từ 
khối lệnh k và tiếp tục các lệnh phía dưới cho tới khi: 
 + Gặp câu lệnh : break (tất nhiên nếu gặp các câu lệnh return, exit thì cũng 
kết thúc). 
 + Gặp dấu đóng móc } hết cấu trúc switch. 
 Nếu không trùng với giá trị nào trong các biểu thức 
hằng thì khối lệnh (các lệnh sau mệnh đề default nếu có) sẽ được thực hiện, rồi 
ra khỏi cấu trúc switch. 
 Ví dụ 1: Sử dụng cấu trúc switch..case, hãy viết chương trình: nếu nhập 
vào là ‘P’ hoăc ‘p’ thì hiển thị dòng chữ “Cao dang co dien Ha Noi”. 
 #include 
 main() 
 { 
 char ch; 
 cout>ch; 
 switch (ch) 
 { 
 case 'P': 
 case 'p': 
 cout<<"Cao dang co dien Ha Noi"; 
 31 
 Đề cương môn: Lập trình Cơ bản 
 } 
 } 
 Ví dụ 2: Viết chương trình sử dụng cấu trúc switch..case, nhập 2 số 
nguyên x, y từ bàn phím, chương trình đưa ra lựa chọn: 
 + Nếu người sử dụng nhập ‘+’: Thực hiện: x + y; 
 + Nếu người sử dụng nhập ‘-‘: Thực hiện: x – y; 
 + Nếu người sử dụng nhập ‘*’: Thực hiện: x * y; 
 + Nếu người sử dụng nhập ‘/‘: Thực hiện: x / y; 
 Nếu người sử dụng không nhập một trong các toán tử trên thì đưa ra dòng 
thông báo: “Khong hieu toan tu nay!”. 
 #include 
 int main() 
 { 
 int X; 
 cout<< "Nhap vao so thu nhat:"; 
 cin>>X; 
 int Y; 
 cout<< "Nhap vao so thu hai:"; 
 cin>>Y; 
 char Op; 
 cout<<"Nhap vao toan tu (+-*/):"; 
 cin>>Op; 
 switch(Op) 
 { 
 case '+': 
 cout<<"Ket qua:"<<X+Y<<"\n"; 
 break; 
 case '-': 
 cout<<"Ket qua:"<<X-Y<<"\n"; 
 break; 
 case '*': 
 cout<<"Ket qua:"<<long(X)*Y<<"\n"; 
 break; 
 case '/': 
 if (Y) 
 32 
 Đề cương môn: Lập trình Cơ bản 
 cout<<"Ket qua:"<<float(X)/Y<<"\n"; 
 else 
 cout<<"Khong the chia duoc!" <<"\n"; 
 break; 
 default : 
 cout<<"Khong hieu toan tu nay!"<<"\n"; 
 } 
 return 0; 
 } 
4. Các cấu trúc lặp 
4.1. Cấu trúc lặp while 
 Cú pháp: 
 while(biểu thức) 
 Khối lệnh; // Hay thân while 
 Sự hoạt động của vòng lặp while: 
 Bước 1: tính giá trị của 
 Bước 2: nếu giá trị tính được của là ‘sai’ (==0) thì kết thúc 
vòng lặp while. 
 Bước 3: nếu giá trị của là ‘đúng’ (!=0) thì thực hiện khối lệnh 
sau while. 
 Bước 4: quay lại bước 1 
 Chú ý: Thân while có thể được thực hiện một lần hoặc nhiều lần và cũng 
có thể không được thực hiện lần nào nếu ngay từ đầu biểu thức sau while đã sai. 
 Biểu diễn bằng lưu đồ: 
 Đúng 
 Biểu thức 
 Khối lệnh 
 Sai 
 Ví dụ 1: 
 33 
 Đề cương môn: Lập trình Cơ bản 
 #include 
 main() 
 { 
 int n; 
 cout>n; 
 while (n>0) { 
 cout<< n<< ","; 
 --n; 
 } 
 cout<< "Ket thuc"; 
 return 0; 
 } 
 Ví dụ 2: Viết chương trình tính và in S = 1 +1/(2!) +1/(3!)+..+1/(n!) với n 
nhập từ bàn phím, 0<n<10. 
 #include 
 const int Max =10; // gioi han 
 void main() 
 { 
 int n, k ; 
 float S, pt; 
 cout<<"\nNhap n = "; 
 cin>>n; 
 while((nMax)) 
 { 
 cout<<"\nNhap lai n (0<n<="<<Max; 
 cin>>n; 
 } 
 S=pt=1; k=2; 
 while(k<=n) 
 { 
 pt /=k; 
 S+=pt; 
 k++; 
 } 
 cout<<"\nGia tri tong S = “<<S; 
 34 
 Đề cương môn: Lập trình Cơ bản 
 } 
 Ví dụ 3: Viết chương trình nhập số nguyên n từ bàn phím, n 0, 
tính và in giá trị n! (giai thừa của n), với n! = 1*2**(n-1)*n 
 #include 
 const int Max =10; // giới hạn giá trị cần tính 
 void main() 
 { 
 int n, i; 
 long gt; 
 cout<<"\nNhap n = "; 
 cin>>n; 
 while((nMax)) 
 { 
 cout<<"\nNhap lai n (0<n<= : "<< Max; 
 cin>>n; 
 } 
 gt=i=1; 
 while(i<=n) 
 { 
 gt*=i; 
 i++; 
 } 
 cout<<"\nGia tri n = “<<gt; 
 } 
4.2. Cấu trúc lặp do..while 
 Trong toán tử while việc kiểm tra điều kiện kết thúc đặt ở đầu chu trình. 
Khác với while, do..while việc kiểm tra điều kiện kết thúc đặt cuối chu trình. Như 
vậy thân của chu trình bao giờ cũng được thực hiện ít nhất một lần. 
 Cú pháp: 
 do 
 Khối lệnh; 
 while (biểu thức); 
 Sự hoạt động của vòng lặp do..while: 
 35 
 Đề cương môn: Lập trình Cơ bản 
 Bước 1: thực hiện khối lệnh sau do. 
 Bước 2: kiểm tra giá trị biểu thức sau while, nếu có giá trị 
‘đúng’ ( khác 0) thì lặp lại bước 1, nếu ‘sai’ (=0) thì kết thúc vòng lặp. 
 Biểu diễn dưới dạng lưu đồ: 
 Khối lệnh 
 Đúng 
 Biểu thức 
 Sai 
 Ví dụ 1: 
 #include 
 main() 
 { 
 unsigned long n; 
 do { 
 cout>n; 
 cout<< "Ban da nhap so"<<n<<endl; 
 } 
 while (n!=0); 
 return 0; 
 } 
 Ví dụ 2: 
 #include 
 int main() 
 { 
 unsigned long n; 
 do 
 { 
 36 
 Đề cương môn: Lập trình Cơ bản 
 cout<<"Nhap vao 1 day so:"; 
 cin>>n; 
 cout<<" Ban vua nhap day so la:"<<n<< "\n"; 
 } 
 while (n!=0); 
 return 0; 
 } 
4.3. Cấu trúc lặp for 
 Cú pháp: 
 for (biểu thức 1; biểu thức 2; biểu thức 3) 
 Khối lệnh; 
 Trong đó: 
 Biểu thức 1: biểu thức khởi đầu. 
 Biểu thức 2: biểu thức điều kiện - điều kiện lặp. 
 Biểu thức 3: bước nhảy - thường dùng với ý nghĩa là thay đổi bước nhảy. 
 Cả 3 biểu thức này đều là tuỳ chọn, chúng có thể vắng mặt trong câu lệnh 
cụ thể nhưng các dấu chấm phẩy vẫn phải có. 
 Sự hoạt động của vòng lặp for: 
 Hoạt động của for theo các bước sau: 
 Bước 1: Thực hiện biểu thức khởi đầu – Biểu thức 1. 
 Bước 2: Tính giá trị biểu thức 2 để xác định điều kiện lặp. 
 Nếu biểu thức 2 có giá trị ‘sai’ (==0) thì ra khỏi vòng lặp. 
 Ngược lại, nếu biểu thức có giá trị ‘đúng’ ( khác 0) thì chuyển tới bước 3. 
 Bước 3: Thực hiện khối lệnh sau for ( thân của for ), chuyển tới bước 4. 
 Bước 4: Thực hiện biểu thức, rồi quay về bước 2. 
 Biểu diễn dưới dạng lưu đồ: 
 37 
 Đề cương môn: Lập trình Cơ bản 
 Biểu thức 1 
 Sai 
 Biểu thức 2 
 Đúng 
 Khối lệnh 
 Biểu thức 3 
 Ví dụ 1: 
 #include 
 main() 
 { 
 for (int n = 10; n>0; n--) 
 { 
 cout<< n<< ","; 
 } 
 cout<< "Ket thuc"; 
 return 0; 
 } 
 Ví dụ 2: Nhập vào một dãy số nguyên, tìm số lớn nhất và nhỏ nhất trong 
dãy. 
 #include 
 void main() 
 { 
 int n,a,max,min,i; 
 do 
 { 
 38 
 Đề cương môn: Lập trình Cơ bản 
 cout<<"Nhap so phan tu cua day : "; 
 cin>>n; 
 }while(n<1); 
 cout<<"Nhap so thu nhat : "; 
 cin>>a; 
 max=min=a; 
 for(i=2; i<=n; i++) 
 { 
 cout<<"Nhap so thu nhat : "; 
 cin>>a; 
 if(a>max) 
 max=a; 
 else 
 if(a<min) 
 min =a; 
 } 
 cout<<"\nGia tri lon nhat =”<<max<<”\nGia tri nho nhat = "<<min; 
 } 
5. Câu lệnh break, continue, goto và hàm exit 
5.1. Câu lệnh break 
 Câu lệnh break cho phép ra khỏi các chu trình với các toán tử for, while và 
switch. Khi có nhiều chu trình lồng nhau, câu lệnh break sẽ kết thúc câu lệnh điều 
khiển đang sử dụng và ra khỏi bên trong nhất chứa nó không cần điều kiện gì. 
Mọi câu lệnh break có thể thay bằng câu lệnh goto với nhãn thích hợp. 
 Ví dụ: Cho phép người dùng nhập liên tục giá trị n cho đến khi nhập âm thì 
dừng. 
 #include 
 void main() 
 int n; 
 { 
 while (1) 
 { 
 cout<<“\nNhap n: ”; 
 cin>>n; 
 39 
 Đề cương môn: Lập trình Cơ bản 
 if(n<0) 
 break; 
 } 
 } 
5.2. Câu lệnh continue 
 Trái với câu lệnh break, continue dùng để bắt đầu một vòng mới của chu 
trình chứa nó. Trong while và do .. while, lệnh continue chuyển điều khiển về 
thực hiện ngay phần kiểm tra, còn trong vòng lặp for điều khiển được chuyển về 
bước khởi đầu lại (tức là bước: tính biểu thức 3, sau đó quay lại bước 2 để bắt 
đầu một vòng mới của chu trình). 
 Chú ý: Lệnh continue chỉ áp dụng cho chu trình, không áp dụng cho switch. 
 Ví dụ: In ra màn hình giá trị từ 10 đến 20 trừ đi số 13 và số 17. 
 #include 
 void main() 
 { 
 for(int i=10 ; i<=20; i++) 
 { 
 if(i==13||i==17) 
 continue; 
 cout<<i<<","; 
 } 
 cout<<"Ket thuc;"; 
 } 
5.3. Câu lệnh goto 
 Lệnh goto cho phép nhảy vô điều kiện tới bất kỳ điểm nào trong chương 
trình. 
 Ví dụ: 
 #include 
 int main () 
 { 
 int n=10; 
 loop: ; 
 cout << n << ", "; 
 n--; 
 40 
 Đề cương môn: Lập trình Cơ bản 
 if (n>0) goto loop; 
 cout << "Kết thúc!"; 
 return 0; 
 } 
5.4. Hàm exit 
 Hàm exit() trong C/C++ được sử dụng để thoát khỏi chương trình. Hàm 
này, khi được triệu gọi sẽ ngay lập tức kết thúc chương trình và chuyển quyền 
điều khiển cho hệ điều hành. 
 Cú pháp: exit (int mã_trả_về); 
 mã_trả_về thường là số 0. Số 0 sẽ xác định việc kết thúc chương trình 
một cách bình thường. Tuy nhiên có một vài trường hợp mã_trả_về là những số 
khác 0 để xác định một vài loại lỗi. 
 Bài tập luyện 
 Bài 1: Viết chương trình giải phương trình bậc nhất ax + b = 0 
 Bài 2: Viết chương trình giải phương trình bậc hai ax2 + bx + c = 0 (a ≠ 0) 
 Bài 3: Viết chương trình giải phương trình bậc hai ax2 + bx + c = 0 (a bất 
kỳ) 
 Bài 4: Viết chương trình nhập vào N, kiểm tra N có phải là số nguyên tố 
không ? 
 Bài 5: Viết chương trình nhập vào N, tính tổng và in ra tất cả các số ước số 
của N. 
 Ví dụ: N = 20 
 - Tập các ước số của 20 là: 1, 2, 4, 5, 10, 20 
 - Tổng các ước số = 42 
 Bài 6: 
 Viết chương trình nhập vào số nguyên dương N, tính tổng 
 a. S1 = 1 + 2 + 3 + 4 +..+ N 
 b. S2 = 12 + 22 + 32 + 42 +..+ N2 
 41 

File đính kèm:

  • pdfde_cuong_mon_lap_trinh_co_ban_phan_1.pdf