Tải bản đầy đủ (.pdf) (29 trang)

Bài giảng Tin học đại cương: Phần 2 - ThS. Phạm Thanh Bình (2)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (658.94 KB, 29 trang )

 Phần 2:
     LẬP TRÌNH
       BẰNG NGÔN NGỮ C++
(...tiếp)

Bộ môn Kỹ thuật máy tính – Khoa CNTT

Tin học đại cương 2 ­ 1


Bài 3 ­ Lệnh gán
Lệnh gán dùng để thiết lập giá trị cho một 
biến
Dạng tổng quát:
Biến = GiáTrị; 
hoặc:
Biến = BiểuThức;
Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 2


Ví dụ 1:
int a, b;
float c, d;
a = 3;
b = 5;
c = 12.5;
d = c*c ­ (a + b)/2;
Bộ môn Kỹ thuật máy tính – Khoa 


CNTT

Tin học đại cương 2 ­ 3


Ví dụ 2:
Tính giá trị của hàm số sau (với x nhập từ 
bàn phím):

y

x

Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 4


Cách làm cũ:
#include <iostream>
#include <cmath>
using namespace std;
main()
 {
   double x;
   cout << "Nhap x = ";
   cin >> x;
   cout << "Ham can bac 2 = " << sqrt(x);
Bộ môn K

 } ỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 5


Cách mới – dùng lệnh gán:
#include <iostream>
#include <cmath>
using namespace std;
main()
 {
   double x, y;
   cout << "Nhap x = ";
   cin >> x;
   y = sqrt(x);
   cout << "Ham can bac hai = " << y;
 } ỹ thuật máy tính – Khoa 
Bộ môn K
CNTT

Tin học đại cương 2 ­ 6


Bài tập:
Tính giá trị các hàm sau đây, với x nhập từ bàn 
phím (có sử dụng lệnh gán):

1. y


3x

2. y

4

2

5x 2

x

Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 7


Bài 4 – Các lệnh điều kiện
(Còn được gọi là lệnh Lựa chọn hay lệnh Rẽ 
nhánh)

1. Lệnh if
2. Lệnh switch 

Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 8



1. Lệnh if
 Dẫn nhập:
Tính giá trị của hàm số sau (với x 
nhập từ bàn phím):

y

x

Chú ý: Hàm trên chỉ xác định khi x ≥ 0
Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 9


Cách viết lệnh:
Nếu  x ≥ 0  thì  y = sqrt(x);
Nếu  x < 0  thì  Hàm không xác định;
Viết bằng C++:
if  (x >= 0)  y = sqrt(x);
if  (x < 0)  cout << "Ham khong xac đinh";
Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 10


Dạng tổng quát của lệnh if:

 Dạng 1:
if    (ĐiềuKiện)   HànhĐộng;
Giải thích: 
+ Nếu ĐiềuKiện mà đúng thì thực hiện 
“HànhĐộng”.
+ HànhĐộng: là 1 hoặc một nhóm lệnh.
Nếu là nhóm lệnh thì phải đặt các lệnh trong 
dấu ngoặc { ... }
Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 11


Áp dụng Dạng 1:

#include <iostream>
#include <cmath>
using namespace std;
main()
 {
   double x, y;
   cout << "Nhap x = "; cin >> x;
   if (x >= 0) 
     {y = sqrt(x);
       cout << "Ham can bac hai = " << y;}
   if (x < 0) cout << "Ham khong xac đinh";
Bộ môn Kỹ thuật máy tính – Khoa 
 }
CNTT

Tin học đại cương 2 ­ 12


Các phép so sánh:
 So sánh bằng: ==
 Lớn hơn: >
 Nhỏ hơn: <
 Khác nhau: !=
 Lớn hơn hoặc bằng: >=
 Nhỏ hơn hoặc bằng: <=
Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 13


Bài tập:
Tính giá trị của các hàm số sau (với x nhập từ bàn 
phím):

1. y
2. y

1

x 2
1
( x 1) x 3

Bộ môn Kỹ thuật máy tính – Khoa 

CNTT

Tin học đại cương 2 ­ 14


Chú ý:
 Nếu có nhiều điều kiện cần thoả mãn đồng 
thời thì chúng phải được nối với nhau bởi: 
&&
Ví dụ:       if ( (x !=1) && (x>­3) ) ...
 
 Nếu có nhiều điều kiện, nhưng chỉ cần 
thoả mãn một trong số đó, thì chúng phải 
được nối với nhau bởi: ||
Ví dụ:       if ( (x ==1) || (x<=­3) ) ...
Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 15


Dạng tổng quát của lệnh if:
 Dạng 2:
if    (ĐiềuKiện)  HànhĐộng1;
           else   HànhĐộng2; 
Giải thích:
+ Nếu ĐiềuKiện mà đúng thì thực hiện 
“HànhĐộng1”
+ Nếu ĐiềuKiện mà sai thì thực hiện 
“HànhĐộng2”

Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 16


Áp dụng dạng 2: 

#include <iostream>
#include <cmath>
using namespace std;
main()
 {
   double x, y;
   cout << "Nhap x = "; cin >> x;
   if (x >= 0) 
     {y = sqrt(x);
       cout << "Ham can bac hai = " << y;}
   else cout << "Ham khong xac đinh";
Bộ môn Kỹ thuật máy tính – Khoa 
 }
CNTT
Tin học đại cương 2 ­ 17


Bài tập:
1. Giải phương trình bậc nhất ax + b = 0 
(với a, b nhập từ bàn phím)
2. Giải phương trình bậc hai ax2 + bx + c = 0 
(với a, b, c nhập từ bàn phím)


Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 18


Bài tập ứng dụng:
 Nhập điểm ba môn học Toán, Lý, Hoá từ 
bàn phím. Tính điểm trung bình. In ra màn 
hình kết quả học tập:
+ Nếu Điểm TB < 5: Loại yếu
+ Nếu 5 ≤ Điểm TB < 7: Loại trung bình
+ Nếu 7 ≤ Điểm TB < 8 : Loại Khá
+ Nếu Điểm TB ≥ 8: Loại Giỏi
Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 19


2. Lệnh switch
 Lệnh if đưa ra 2 khả năng lựa chọn (cho 
phép rẽ 2 nhánh)
 Lệnh switch cho phép rẽ nhiều nhánh hơn 
lệnh if

Bộ môn Kỹ thuật máy tính – Khoa 
CNTT


Tin học đại cương 2 ­ 20


Dạng tổng quát của lệnh switch:
switch   (BiếnNguyên)
 {
   case  SốNguyên1:
   ...
  case  SốNguyên2:
    ...
   case  SốNguyênN:
    ...
   default:
    ...
Bộ môn Kỹ thu }ật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 21


Giải thích:
 Lệnh switch so sánh BiếnNguyên với 
SốNguyên1, SốNguyên2, ... ,SốNguyênN. 
+ Nếu BiếnNguyên bằng với số nào thì lệnh 
từ vị trí đó sẽ được thực hiện.
+ Nếu tất cả các số đó đều khác 
BiếnNguyên thì lệnh tại vị trí default sẽ 
được thực hiện.

Bộ môn Kỹ thuật máy tính – Khoa 

CNTT

Tin học đại cương 2 ­ 22


Ví dụ 2:
Lập trình tính số ngày trong tháng.
 (nhập Tháng từ bàn phím rồi hiện ra màn 
hình số ngày của tháng đó)
Hướng dẫn:
+ Tháng 1, 3, 5, 7, 8, 10, 12 có 31 ngày
+ Tháng 4, 6, 9, 11 có 30 ngày
+ Tháng 2 có 28 hoặc 29 ngày
Bộ môn Kỹ thuật máy tính – Khoa 
CNTT

Tin học đại cương 2 ­ 23


Dùng lệnh if:
#include <iostream>
using namespace std;
int main()
 {
   int  t;
   cout << "Nhap thang: "; cin >> t;
   if ((t==1) || (t==3) || (t==5) || (t== 7) || (t ==8) || (t ==10) || (t ==12))
           cout << "Thang co 31 ngay! ";
   if ((t == 4) || (t == 6) || (t == 9) || (t == 11)) 
           cout << "Thang co 30 ngay! ";

   if (t == 2)  cout << "Thang co 28 hoac 29 ngay! ";
   return 0;
 }
Bộ môn Kỹ thuật máy tính – Khoa 
CNTT
Tin học đại cương 2 ­ 24


Dùng lệnh switch:
 case  4:
#include <iostream>
 case  6:
using namespace std;
 case  9:
int main()
 case  11:
 {int  t;
   cout << "Nhap thang: "; cin >> t;    cout << "Thang co 30 ngay! ";
   break;
   switch   ( t )
 case  2:
    {case  1:
   cout << "Co 28 hoac 29 ngay ";
      case  3:
   break;
      case  5:
 default:
      case  7:
   cout << "Du lieu khong hop le";
      case  8:

 }
      case  10:
 return 0;
      case  12:
}
        cout << "Thang co 31 ngay! ";
Bộ môn Kỹ thuật máy tính – Khoa 
        break; 
CNTT
Tin học đại cương 2 ­ 25


×