thiet ke web,thiet ke giao dien,thiet ke phan mem,seo len google

logo

ITO PRINT OFFICE

Sửa chửa máy in
Nạp mực máy in
Cài đặt máy in
Linh kiện máy in
Nạp mực máy photo
Sủa máy in tận nhà
Vệ sinh máy in

Trang

quang cao
Sự kiện tiêu biểu

Ngôn Ngữ C++

(Blogtamsu) - CHƯƠNG 3 : CẤU TRÚC ÐIỀU KHIỂN VÀ VÒNG LẶP 3.1/ a/Khái niệm : mọi chương trình đều có thể biểu diễn qua 3 cấu trúc : - tuần tự : m....

Công Nghệ Webblog - Chuyên nhận rip, thiết kế, cung cấp: Template blogspot, template blogger chuẩn SEO, Tối ưu website, tích hợp tin tức, giỏ hàng cho blogger bán hàng...

CHƯƠNG 3 : CẤU TRÚC ÐIỀU KHIỂN VÀ VÒNG LẶP




3.1/ a/Khái niệm : mọi chương trình đều có thể biểu diễn qua 3 cấu trúc :

- tuần tự : mặc định ( default)

- lựa chọn ( lệnh if hoặc lệnh switch)

- lặp ( for, while hoặc do while)


b/ Khối lệnh : là tập hợp các câu lệnh được khai báo bởi 2 dấu { và } .

không đặt dấu chấm phẩy ( ; ) sau một khối lệnh trừ một vài trường hợp đặc biệt.

3.2 / Các câu lệnh

3.2.1 Lệnh If :

- Cú pháp : If ( biểu thức) < lệnh> ;

- Diễn giải : nếu Biểu thức đúng ( khác 0 ) --> thực hiện

ngược lại nếu biểu thức sai ( = 0 ) -ă thực hiện lệnh đứng sau câu lệnh if.

- Hoặc : If ( biểu thức) ;

else < lệnh B); + Biểu thức : # 0 ( đúng) ----> < lệnh A>

=0 ( sai ) ---> < lệnh B>.

* Ví dụ : tìm số lớn nhất trong 2 số a, b :

if (ab)? a:b; ( Viết lại hoàn chỉnh chương trình).

- Chú ý : trong trường hợp có nhiều lệnh If lồng nhau thì else sẽ gắn liền với if gần nhất.

If(bt1) ;

Else

If (bt2)

If(bt3) < lệnh2>;

else ; /* bt3 = = 0 */

else ; /* bt2= = 0 */

*Ví dụ : Viết chương trình giải phương trình bậc nhất : Ax + B = 0 (A, B : số thực).

Giải : Xét các trường hợp xảy ra :

- Nếu A! =0 thì nghiệm x = -B/A

- Nếu A = 0 +> B=0 => Nếu B=0 : vô số nghiệm

B != 0 ( ngược lại) : vô nghiệm.

/* Giải phương trình bậc nhất : Ax + B = 0 */

#Include

#Include < conio.h>

void main ( void)

{

float a, b ;

/* nhập dữ liệu từ bàn phím */

print ( "\ nhập 2 số a,b : "); scanf(" %f %f ", &a, &b);

/* giải phương trình*/

If ( a= = 0 )

If( b= =0 )

Printf (" Phương trình có vô số nghiệm ! \n " );

Else

Printf (" phương trình vô nghiệm \n ");

Else / * a khác 0 */

Printf (" phương trình có nghiệm là : x= %f \n ", -b/a);

Printf( " ấn phím bất kỳ tiếp tục ");

Getche();

}

Bài tập 1 : Tìm những lỗi cú pháp các đoạn chương trìnhh sau :

A/ scanf ( "d", value);

B/ printf ("tích các %d và %d là %d " \n, x,y);

C/ printf (" phần dư của %d chia cho %d là \n ", x , y , x%y );

D/ if(x=y);

Printf (" %d bằng %d \n ", x,y);

E/ If ( age>=65);

Printf (" gia ì! ');

Else

Printf(' Tre! ');

3.2.2 Lệnh switch

- Cú pháp : Switch (biểu thức nguyên).

{

Case N1 : lệnh 1;

Case N2 : lệnh 2;

.....

[ default : lệnh;]

}

- Biểu thức nguyên là giá trị nguyên : Ni(i=1,2...) là các số nguyên.

- Với biểu thức khác với mọi Ni => thực hiện lệnh sau default.



- Chú ý : nếu nhóm câu lệnh sau nhãn case Ni không có câu lệnh break thì máy sẽ chuyển sang nhóm câu lệnh sau nhãn case Ni+1

*Ví dụ : đổi 1 số nguyên sang chuỗi ký tự là tên các môn học

#Include

#Include

main( )

{

Int ma ;

Do

{

printf(" \n cho mã cần chuyển "); scanf(" %d ", &ma);

switch(ma)

{

case 0 : printf(" \n lớp tin học a ");

break;

case 1 : printf( " \n lớp tin học b");

break;

case 2 : printf(" \n lớp trung cấp ");

break;

case 3 : printf (" \n lóp chuyên viên ");

break;

default : printf( " \n lợp thiế tiền học phí");

}

printf( " \n có tiếp tục không ?(Y/N)");

}

while( toupper ( getch () ! = 'N '); /* Chuyển san ký tự hoa */

}



3.2.3 / Lệnh For :

- Cú pháp : for ( bt1; bt2 ; bt3) lệnh;

- Giải thích :

+ bt1 : là toán tử gán để tạo giá trị ban đầu cho biến điều khiển.

+ bt2 : biểu thức điều kiện để thực hiện vòng lặp.

+ bt3 : biểu thức tăng giá trị của biến điều khiển của vòng lặp.

*Ví dụ : Tính Tổng S=1+2+3+..+n

For ( int i=1, s=0; i<=n; s+ =i, ++i ); * Cơ chế hoạt động : a/Tính giá trị của biểu thức bt1 . b/Tính giá trị của bt2 c/ + Nếu giá trị của bt2(=0) là sai máy sẽ ra khỏi lệnh For. + Nếu giá trị của bt2(!=0) là đúng thì máy sẽ thực hiện lệnh. d/ Tính giá trị của bt3 và quay lại bước kiểm tra 2(b) Chú ý : + Khi bt2 vắng mặt thì nó được coi là luôn luôn đúng * Ví dụ : for (i=0; ; i++) lệnh ; + bt1 , bt3 có thể bao gồm nhiều biểu thức cách nhau bởi dấu phẩy. + bt2 có thể gồm nhiều biểu thức, tuy nhiên tính đúng sai của nó được xem là tính đúng sai của biểu thức cuối cùng. * Ví dụ : tính tổng : S=1! + (1+2)! + ....+ ( 1+2+....i )! .....( 1 + 2 + ..n)! #include

#include

#include

/* int i, j, t, n ; double gt, s; */

main()

{

int i, j, t, n ; double gt, s;

clrscr () ;

printf ("nhập n= "); scanf(" %d ", &n);

Cách 1 :

s=0 ; t=0;

for (s= 0,t= 0,i=1; i<=n ; ++i ) { t=t+i; for ( gt=1,j=1; j<=t ; ++j) gt = gt*j ; s = s+gt; } printf ( " tong s = %15.0f ", s); getch(); Cách 2 : for ( s=0, t=1, i=1; i<=1; ++i , t = t + 1) { for ( gt=1,j=1;j<=t; ++j) gt*=j; s+= gt; } Cách 3 : thân for là câu lệnh rỗng For (s=0, t=1,i=1; i<=n; ++i, t=t+i,s+=gt) For( gt=1,j=1; j<=t; gt* = j , ++j ); Cách 4 : không có bt 1 và bt3; Int i=1, j=1, t=1, n ; double gt = 1, s= 0 ; For ( ; i<=n ; ++i, t = t + i , s+ = gt) /* không có biếu thức 1*/ { For ( ; j<=t ; ) /* không có bt1 , bt3*/ Gt* = j ++ /* gt = j ; ++j */ } Cách 5 : không có bt1, bt2, bt3 For (; ;) { for (; ;) { gt* = j++ ; if ( j < t ) goto tong ; } tong : s+ = gt; ++i , t = t + i ; if( i < n ) goto KT; KT : printf (" tong s= % 15.0 f " , s ) } 3.24/ Câu lệnh while : - Cú pháp : while ( biểu thức 1) lệnh 1 ; - Nguyên tắc thực hiện : +b1. Tính giá trị của biểu thức 1. +b2. Nếu giá trị của biểu thức 1 sai ( = 0 ) thì chương trình ra khỏi vòng while +b3. Nếu giá trị của biểu thức đúng thì thực hiện lệnh 1 và quay lại bước 1(b1). - Chú ý : Biểu thức 1 có thể gồm nhiều biểu thức nhưng tính đúng sai phụ thuộc vào biểu thức cuối cùng. Ví dụ : Nhập 1 dãy số nguyên từ bàn phím #include < stdio.h >

#include < conio.h >

main ()

{

Int dayso [ 10 ] ; int i = 0 ;

While ( i < 10) { printf ( "\n Số thu %d : ", i ); scanf ( " %d", & dayso [i]); i ++ ; } 3.25/ Câu lệnh Do while ( làm trước hỏi sau ) - Cú pháp : do lệnh 1 ; while ( biểu thức 1 ) ; - Nguyên tắc thực hiện : +b1. Máy thực hiện câu lệnh 1 ; +b2. Sau đó tính giá trị của biểu thức 1, nếu giá trị của biểu thức 1 sai thì chương trình thoát ra khỏi vòng lặp. Nếu giá trị của biểu thức 1 đúng thì quay lại bước 1. Chú ý : - while : Ðiều kiện được kiểm tra trước, nếu đúng mới thực hiện. - do while : câu lệnh được thực hiện trước khi kiểm tra. Câu lệnh thực hiện bao giờ ít nhất là 1 lần. ( do while ngược với Repeat until của Pascal : lệnh Do while sai thì dừng, còn lệnh repeat until đúng thì dừng ). -Biểu thức 1 có thể gồm nhiều biểu thức, tuy nhiên tính đúng sai căn cứ theo biểu thức cuối cùng. * Ví dụ : tính pi với sai số eps = 1E - 4 , pi = 4 - 4/3 + 4/5 - 4/7 + ...eps #include < stdio.h >

#include < conio.h>

main ()

{

float pi, dau, i , eps, saiso ;

i=1.0; dau = -1; saiso = 1e -4 ;

pi = 4.0;

printf ( "\n đang xử lý vui lòng đợi !");

do

{

eps = 4.0 / ( 2.0 * i + 1.0 );

pi + = dau * eps ; dau = dau * - 1.0 ; i + = 1.0;

}

while ( eps > saiso );

printf ("\n số pi là : " % f ", pi ) ;

getch ();

}



3.2.6/ Câu lệnh Break :

- Cú pháp : Dùng để thoát khỏi vòng lặp. Khi gặp câu lệnh này trong vòng lặp, máy ra khỏi và chỉ đến câu lệnh sau các lệnh trên. Nếu nhiều vòng lặp ----> break sẽ thoát ra khỏi vòng lặp gần nhất.



3.2.7/ Lệnh continue :

- Cú pháp continue; : khi gặp lệnh này trong các vòng lặp, máy sẽ bỏ qua phần còn lại trong vòng lặp và tiếp tục thực hiện vòng lặp tiếp theo.

- Ðối với lệnh For máy sẽ tính lại biểu thức 3 (bt3) và quay lại bước 2.

- Ðối với lệnh while, do while máy sẽ tính lại giá trị của biểu thức 1 và quay lại bước 1.

* Ví dụ : Nhập 1 chuỗi ký tự kể cả ký tự trống và bỏ qua các ký tự không hợp lệ và kết thúc khi ấn ESC hoặc số ký tự vượt quá kích thước mãng.

char xau [MAXL], kytu ;

int i = 0 ;

while (1) /* luôn luôn đúng vòng lặp vĩnh cửu */

{

kytu = getch ( ) ;

if ( kytu = = 27 ) break ;

if ( i >= MAXL ) break ;

if ( kytu > 122 || kytu < 65 ) continue ; Xau [ i ++] = kytu ; } xau [ i ] = ' \ 0 ' ; 3.3/ Toán tử goto và nhãn ( label ); - Ví dụ : tiep tuc : st = a[ i ]; => tiep tuc là nhãn của lệnh st = a [ i ];

- Lệnh goto nhãn => nhảy đến câu lệnh đứng sau nhãn.

- CHÚ Ý : PHẠM VI NHÃN TRONG CÙNG 1 HÀM.

BÀI TẬP CHƯƠNG 3

1/ Kiểm tra tìm lỗi :

while ( x<.= 10 )

Total t=x;

++x ;

2/ Giải phương trình bậc 2 : ax2 + bx + c = 0 với a, b, c là số thực nhập từ bàn phím.

3/ Nhập số liệu vào bàn phím, kết thúc nhập bằng cách ấn ^Z hoặc F6 ( mũ = 255 ). Biết :

InWord = on khi ở trong 1 từ. InWord = off khi ngược lại. Ðếm số dòng, số từ, số ký tự.

4/ Tìm các số nằm trong khoảng từ 150 đến 140 thoả tính chất số bằng tổng lập phương các chữ số của chúng :

Ví dụ : 153 = 13 + 53 + 33 hoặc 370 = 33 + 73 + 03

5/ Số tuyệt hảo là số bằng tổng các ước số thực sự của nó. Ví dụ : 6 = 1 + 2 + 3.Tìm các số tuyệt hảo trong khoảng từ 1 đến 3000.

6/Nhập số liệu vào mãng A gồm 10 phần tử và sắp xếp theo thứ tự tăng dần.

7/ Tìm tất cả các số nguyên tố từ 2 đến 100 bằng lệnh For.

8/ Tìm các số nguyên có 3 chữ số sao cho tổng 3 chữ bằng tích 3 chữ. Ví dụ : 123.

9/ a/ Dùng lệnh while để viết chương trình tính :

S1 = 1 x 3 x 5 x 7 x 9. . . . . x ( 2n - 1 ).

S2 = 2 x 4 x 6 x 8 x ......x (2n).

b/ làm lại bài trên bằng cách dùng do...while.

10/Giải bài toán cổ điển vừa gà vừa chó bó lại cho tròn 36 con 100 chân chẵn.



vns3curity(HCE)

Contact us

Admin

Tìm kiếm bài viết

Maytinhrpro Share

MAYTINHPRO.COM

Máy tính văn phòng
Máy tính doanh nghiệp
Máy in văn phòng
máy in cá nhân
Máy chiếu văn phòng
máy fax cty
Máy tính bàn

MAYTINHPRO.COM

dịch vụ máy tính
sửa chữa máy in
vệ sinh máy tính
bảo trì máy máy
cài đặt windows
dịch vụ sửa chữa máy in
dịch vụ cài đặt máy in

Kết Nối Maytinhpro

Hotline: 0972 893 393 - 0908 113 095
Skype: vkmaytinhpro@gmail.comFacebook: https://www.facebook.com/dichvusuachua
Website: www.maytinhpro.com
OFICE: 185 Đường Hoàng Sa - P.Đakao - Quận 1 - TP.HCM
CPO: 184/15 LH80, P.Hiệp Thành. Quận 12.HCM
Len dau trang

HÌNH ẢNH THI CÔNG

Tag: dịch vụ sơn nước , dịch vụ sơn nhà, sơn nhà giá rẻ, sơn nhà đẹp, sơn nhà hồ chí minh, sơn sửa nhà phố, sơn nước uy tin, sơn nước tận nhà, sơn nước tại nhà, sơn nước chất lượng, sơn nhà đẹp, sơn nhà trọn gói, sơn giả đá, sơn giả gỗ,sơn nhà sài gòn, sơn nhà siêu đẹp

DỊCH VỤ SƠN NHÀ TẬN NƠI

  • Bốn Tư

    Hotline - Mr Bốn

    Call: 097 777 0017

    hotrokythuat@gmail.com

    skype

Tư Vấn Dịch vụ - Mr.Tư

Call: 097 777 0017

hotrokythuat@gmail.com

skype Mr Bốn

Xem thêm>>

Xem thêm>>

Đóng liên hệ [x]
hotline0916 72 69 59