Phần 1 Lưu Đồ Thuật Toán Trong C Hart), Phần 1 Lưu Đồ Thuật Toán (Flowchart)

PHẦN 1 LƯU ĐỒ THUẬT TOÁN (FLOWCHART)Các ký kết hiệu màn biểu diễn lưu vật dụng thuật toán, cách trình diễn các kết cấu điều khiển rẽ nhánh, cấu trúc lặp và các kỹ thuật tương quan đến lưu đồ dùng thuật toán.

Bạn đang xem: Lưu đồ thuật toán trong c

I. TÓM TẮT LÝ THUYẾTI.1. Tư tưởng : Lưu đồ gia dụng thuật toán là công cụ dùng làm biểu diễn thuật toán, câu hỏi mô tả nhập (input), tài liệu xuất (output) với luồng xữ lý trải qua các ký hiệu hình học.I.2. Phương thức duyệt :

Duyệt từ bên trên xuống và coi sóc từ trái sang phải.

I.3. Các ký hiệu :
*
I.4. Các cấu trúc điều khiển cơ bạn dạng :
a. Cấu tạo tuần trường đoản cú : Tuần tự triển khai tiến trình. Từng lệnh được thực hiện theo một chuỗi từ trên xuống, xong lệnh này rồi chuyển xuống lệnh kế tiếp.
*
Ví dụ: Nhập vào 3 số nguyên a, b, c cùng xuất ra screen với cực hiếm của mỗi số tăng lên 1.
*
b. Kết cấu điều kiện :
chọn 1 trong những hai trường hợp.

if : Chỉ xét trường đúng theo đúng.

*
Ví dụ: Nhập vào số nguyên n. Bình chọn nếu n > 0 tăng n lên 1 đối kháng vị. Xuất kết quả.
*

• if…else : Xét trường thích hợp đúng và trường vừa lòng sai.

*
Ví dụ: Nhập vào số nguyên n. Soát sổ nếu n chẵn xuất ra screen “n chẵn”, ngược lại xuất “n lẻ”.c. Cấu trúc lặp :
Thực hiện tiếp tục 1 lệnh hay tập lệnh với mốc giới hạn lặp nhờ vào điều kiện. Lặp sẽ xong khi đk được thỏa.

for / while (Kiểm tra điều kiện trước lúc lặp) : for thường vận dụng khi biết chính xác số lần lặp. While thường áp dụng khi ko biết chính xác số lần lặp

*
Ví dụ: Nhập vào số nguyên n. Xuất ra màn hình hiển thị từ 1 cho n.
*

• vì chưng … while (Thực hiện lặp trước khi kiểm tra điều kiện)

*
Ví dụ: Nhập vào số nguyên dương n. Giả dụ nhập sai yêu cầu nhập lại.d. Những ví dụ

Ví dụ 1: Giải với biện luận phương trình: ax+b=0.

*

Ví dụ 2: Tính tổng :

*
*

Ví dụ 3: Tính tổng :

*
*
II. BÀI TẬP : Vẽ lưu vật thuật toán sau
II.1. Bài tập cơ bản

1. Nhập vào nhì số x, y. Xuất ra screen tổng, hiệu, tích, yêu đương của nhì số trên.

2. Nhập vào số nguyên n, khám nghiệm xem n chẵn tuyệt lẻ với xuất ra màn hình.

3. Nhập vào cha cạnh a, b, c của tam giác. Xuất ra màn hình tam giác đó thuộc nhiều loại tam giác gì? (Thường, cân, vuông, hầu như hay vuông cân).

4. Nhập vào số nguyên n. Nếu như n>5 thì tăng n lên 2 đơn vị và trả về cực hiếm n, trái lại trả về cực hiếm 0.

5. Nhập vào số nguyên n. Tính n! với 0 ≥ n

6. Mang lại số nguyên n. Tính trị hoàn hảo của n

7. Tính p. = 1 . 3 . 5 . . . (2n+1) , cùng với 0 ≥ n

8. Tính p = 1+ 3 + 5 + … + (2n+1) , với 0 ≥ n

*

16. Đếm con số ước số chẵn của số nguyên dương n.

17. In ra chữ số thứ nhất của số nguyên dương n gồm k chữ số.

18. Mang lại 2 số nguyên dương a, b. Kiếm tìm USCLN của a cùng b.

19. Mang đến 2 số nguyên dương a, b. Kiếm tìm BSCNN của a cùng b.

20. Mang lại số nguyên dương x. Khám nghiệm xem x có phải là số yếu tắc không?

21. Cho số nguyên dương x. Kiểm soát x liệu có phải là số chính phương không?

22. Cho số nguyên dương x. Soát sổ xem x có phải là số triển khai xong không?

II.2. Bài bác tập rèn luyện và nâng cao

23. Tính những tổng S sau :

*

24. Giải cùng biện luận phương trình bậc 2: ax2 + bx +c =0

25. Tính những tổng sau : (dạng bài tập khó)

*
PHẦN 2
CẤU TRÚC ĐIỀU KHIỂNI. TÓM TẮT LÝ THUYẾTI.1. Những kiểu tài liệu cơ bản trong C
*
I.2. Kết cấu rẽ nhánh
a. Kết cấu ifif (biểu thức điều kiện) ;b. Kết cấu if … elseif (biểu thức điều kiện)

;

else

;

Ví dụ: Giải cùng biện luận phương trình: ax+b=0

#include #include void main ()

float a, b;

printf ( “ Nhap vao a:”); scanf ( “%f”, &a);printf ( “ Nhap vao b:”); scanf ( “%f”, &b) ;if (a= = 0)if (b= = 0)printf ( “ PTVSN”);elseprintf ( “ PTVN”);elseprintf ( “ Nghiem x=%f”, -b/a);getch ();

I.3. Cấu trúc lựa lựa chọn switch

switch (biểu thức)

case n1:

các câu lệnh ;

break ;

case n2:

các câu lệnh ;

break ;………

case nk: ;

break ;

các câu lệnh>

Trong đó :

• ni là các hằng số nguyên hoặc ký tự.

• phụ thuộc vào quý giá của biểu thức viết sau switch, nếu:

o giá trị này = ni thì thực hiện câu lệnh sau case ni.

o Khi quý giá biểu thức không thỏa tất cả các ni thì thực hiện câu lệnh sau default nếu có, hoặc ra khỏi câu lệnh switch.

o Khi chương trình đã thực hiện hoàn thành câu lệnh của case ni nào kia thì nó đã thực hiện luôn luôn các lệnh trực thuộc case bên dưới nó mà lại không xét lại đk (do các ni được xem như những nhãn) .Vì vậy, nhằm chương trình thoát ra khỏi lệnh switch sau lúc thực hiện ngừng một ngôi trường hợp, ta sử dụng lệnh break.Ví dụ 1 : Viết chương trình lựa chọn menu bằng số nhập từ bỏ bàn phím.#include#includevoid ChonTD (int &chon)

printf ("Thuc Don") ;

printf (" 1. Lau thai!") ;printf (" 2. Nuoc ngot!") ;printf (" 3. Ca loc hap bau!") ;printf (" 4. Chuot dong!") ;printf (" Xin moi ban chon mon an!") ;scanf ("%d",&chon) ;

void TDchon(int chon)

switch (chon)

case 1:

printf (" Ban chon vệ sinh thai!") ;break ;case 2:printf (" Ban chon nuoc ngot!") ;break ;case 3:printf (" Ban chon ca loc hap bau!") ;break ;case 4:printf ("Ban chon chuot dong!") ;break ;default:printf (" Ban chon khong dung!") ;

void main()

clrscr() ;

int chon ;ChonTD(chon) ;TDchon(chon) ;getch() ;

Ví dụ 2 : Viết chương trình nhập vào tháng , xuất ra màn hình hiển thị số ngày của tháng vừa nhập (Giả sử mon 2 có 28 ngày) .

#include#includevoid so_ngay (int thang)

switch (thang)

case 1:case 3:case 5:case 7:case 8:case 10:case 12:printf (" tháng %d có 31 ngày ", thang) ;break ;case 4:case 6:case 9:case 11:printf (" mon %d bao gồm 30 ngày", thang) ;break ;case 2:printf (" tháng 2 gồm 28 ngày") ;break ;default:printf (" Ban nhập tháng ko đúng!") ;

void main()

clrscr() ;

int thang ;printf(“ Hãy nhập mon : ”); scanf(“%d”, &thang);so_ngay(thang) ;getch() ;I.4. Kết cấu lặpa. Cấu tạo lặp for : for (; ; )

;

Ví dụ: In ra màn hình bảng mã ASCII từ ký kết tự số 33 đến 255.#include#includevoid main()for (int i=33;iprintf("Ma ASCII cua %c: %d ", i, i) ;getch () ;b. Kết cấu lặp whilewhile ( )

lệnh/ khối lệnh;

Ví dụ: Tính quý hiếm trung bình các chữ số của số nguyên n gồm k chữ số.#include#includevoid main()

int n, tong=0, sochuso=0;

float tb;printf ("Nhap vao gia tri n gom k chu so") ;scanf ("%d",&n) ;while(n>0)

tong=tong+n%10 ;

sochuso++ ;n=n/10 ;

tb=(float)1.0*tong/sochuso ;

printf ("Gia tri trung binh la: %f", tb) ;getch () ;

c. Cấu tạo lặp bởi vì … while

do

;

while (biểu thức điều kiện) ;Ví dụ : Nhập ký tự từ bàn phím hiển thị lên màn hình hiển thị mã ASCII của ký kết tự đó, thực hiện đến khi nhấn phím ESC (Mã ASCII của phím ESC là 27).#include#includevoid main()

int ma ;

do ma=getch ();if (ma !=27)printf ("Ma ASCII %c:%d ", ma, ma);

while (ma!=27) ;

getch () ;

II. BÀI TẬP

II.1. Phương thức chạy tay từng bước để tìm hiệu quả chương trình

�� xác định chương trình có thực hiện những thay đổi nào.

�� Giá trị thuở đầu của mỗi biến.

�� mọi biến nào sẽ bị đổi khác trong quá trình chạy chương trình thì lập thành bảng bao gồm dạng sau:

*
Ví dụ:
Cho biết kết quả của đoạn công tác sau:void main()int i, a = 4;for(i = 0 ; iprintf(“%d ”, i);getch();

Chương trình gồm 2 thay đổi i với a, chỉ gồm biến i có mức giá trị biến đổi trong quá trình chạy chương trình đề nghị ta lập bảng sau:

a có mức giá trị là 4
*

Tại cách 4, giá trị của i = 4 vi phạm điều kiện lặp (i0123II.2. Bài tập cơ bảna. Cấu tạo if / if..else cùng switch :

1. Cho biết thêm kết quả của đoạn lịch trình sau:

int a=9, b=6;a++;a=a+b--;a=a+(--b);if(a%2==0)printf("Gia tri cua a la chan”);printf(“Tong cua a va b la: %d”, a+b) ;

2. Cho thấy thêm kết quả của đoạn lịch trình sau:

int a=7, b=8;a++;a=a+(b--);--b;a--;a=(--a)+(--b);if(a%2!=0)printf(" a la so le");elseprintf(" a la so chan");printf(" a = %d",a);

3. Cho thấy kết trái của đoạn lịch trình sau:

int x=5, y;y=x++ + 5;printf(“x=%d, y=%d ”, x, y);y*=6;x=y%7;printf(“x=%d,y=%d,y/x=%d”, x, y, y/x);

4. Nhập vào hai số nguyên a, b. In ra màn hình giá trị lớn nhất.

5. Cho bố số a, b, c nhập vào từ bỏ bàn phím. Hãy tìm giá bán trị lớn nhất của tía số trên và in ra kết quả.

6. Cho cha số a, b, c nhập vào trường đoản cú bàn phím. Hãy in ra màn hình hiển thị theo sản phẩm tự tăng dần những số.

Xem thêm: Bộ Đề Thi Học Kì 2 Môn Ngữ Văn 9 Mới Nhất, Đề Thi Thử Đầu Vào Môn Ngữ Văn

7. Viết lịch trình nhập vào một số nguyên n gồm cha chữ số. Xuất ra màn hình chữ số to nhất tại phần nào?

Ví dụ: n=291. Chữ số lớn nhất nằm ở hàng trăm (9).

8. Viết chương trình nhập vào số nguyên n gồm ba chữ số. Xuất ra màn hình theo đồ vật tự tăng dần của các chữ số.

Ví dụ: n=291. Xuất ra 129.

9. Nhập vào ngày, tháng, năm. Bình chọn xem ngày, tháng, năm đó gồm hợp lệ giỏi không? In hiệu quả ra màn hình.

10. Nhập vào giờ, phút, giây. Khám nghiệm xem giờ, phút, giây đó gồm hợp lệ giỏi không? In hiệu quả ra màn hình.

11. Viết chương trình nhập vào ngày, tháng, năm đúng theo lệ. Cho biết thêm năm này còn có phải là năm nhuận xuất xắc không? In tác dụng ra màn hình.

12. Viết công tác tính diện tích và chu vi các hình: tam giác, hình vuông, hình chữ nhật và hình tròn trụ với đa số thông tin cần được nhập từ bàn phím.

13. Viết công tác tính tiền cước TAXI. Biết rằng:

- KM đầu tiên là 5000đ.

- 200m tiếp sau là 1000đ.

- Nếu lớn hơn 30km thì từng km thêm đang là 3000đ.

Hãy nhập số km tiếp nối in ra số tiền nên trả.

14. Nhập vào 3 số nguyên dương a, b, c. đánh giá xem 3 số đó bao gồm lập thành tam giác không? Nếu gồm hãy cho biết thêm tam giác kia thuộc loại nào? (Cân, vuông, đều, …).

15. Viết chương trình nhập vào số nguyên dương n. Kiểm soát xem n có phải là số chủ yếu phương tuyệt không? (số thiết yếu phương là số khi đem căn bặc 2 có kết quả là nguyên).b. Cấu tạo lặp

16. Cho thấy thêm kết quả của đọan chương trình sau:

int a=18;for(int i=1; iif(a%i= =0)printf(" %d", i);

17. Cho thấy kết trái của đọan lịch trình sau:

for(int i=0; ifor(int j=0; jprintf(“%d ”, j);printf(“ ”);

18. Cho biết kết quả của đọan lịch trình sau:

int i=10, s=0;while(i>0)if(i%2= =0)s+=i;elseif(i>5)s+=2*i;i--;printf(“s = %d”,s);

19. Cho thấy kết trái của đọan lịch trình sau:

int a=18, i=1;doif(a%i==0)printf(" %d",i);i++; while(i

20. Cho thấy thêm kết quả của đọan chương trình sau:

int a=11, b=16, i=a;while( iif(i%2==0)printf(" %d", i);break;i++;

21. Cho thấy thêm kết trái của đọan công tác sau:

int a=10, s=0, i=0;while( ii++;if(i%2==0) continue;else s=s+i;printf("s=%d",s);

22. Cho biết thêm kết quả của đọan công tác sau:

int i=1,s=0;while(1) // có nghĩa là vòng lặp không lúc nào dừngs=s+i++;if(i%2)i=i+2;elsei=i+1;if(i>20)break;printf("%d",s);

23. Viết lịch trình vẽ hình chữ nhật đặc kích thước n×m (m, n nhập từ bỏ bàn phím).

Ví dụ: Nhập m=5, n=4* * * * ** * * * ** * * * ** * * * *

24. Viết công tác vẽ hình chữ nhật rỗng form size n×m (m, n nhập tự bàn phím).

Ví dụ: Nhập m=5, n=4* * * * ** ** ** * * * *

25. Viết lịch trình vẽ tam giác vuông cân nặng đặc có độ cao h (h nhập tự bàn phím).

Ví dụ: Nhập h=4** ** * ** * * *

26. Viết lịch trình vẽ tam giác cân nặng rỗng tất cả độ cao h (h nhập từ bàn phím).

Ví dụ: Nhập h=4** ** ** * * *

27. Viết công tác vẽ tam giác cân đặc tất cả độ cao h (h nhập từ bàn phím).

Ví dụ: Nhập h=4** * ** * * * ** * * * * * *

28. Viết chương trình vẽ tam giác cân rỗng có độ cao h (h nhập từ bỏ bàn phím).

Ví dụ: Nhập h=4** ** ** * * * * * *

29. Viết công tác nhập số nguyên dương n. Liệt kê những số nguyên tố từ một đến n.

30. Viết công tác nhập vào nhị số nguyên dương a và b. Tìm ước số chung lớn số 1 và bội số chung nhỏ nhất của a cùng b.

31. Viết công tác đếm số ước số của số nguyên dương N.

Ví dụ: N=12 , số cầu số của 12 là 6

32. Một số hoàn thiện là một số có tổng những ước số của chính nó (không nói nó) bởi chính nó. Hãy liệt kê các số trả thiện bé dại hơn 5000.

Ví dụ: số 6 là số hòan thiện vày tổng các ước số là 1+2+3=6.

33. Nhập vào ngày, tháng, năm. Cho thấy đó là ngày vật dụng mấy trong năm.

34. In ra hàng số Fibonaci

f1 = f0 =1 ;

fn = fn-1 + fn-2 ; (n>1)II.3. Bài bác tập rèn luyện và nâng cao

35. Setup tất cả những lưu đồ sẽ vẽ ngơi nghỉ chương 1.

36. Nhập vào ngày, tháng, năm. Bình chọn xem ngày, tháng, năm đó gồm hợp lệ giỏi không, nếu thích hợp lệ cho thấy ngày sau đó là bao nhiêu.

37. Nhập vào ngày, tháng, năm. Chất vấn xem ngày, tháng, năm đó gồm hợp lệ tuyệt không, nếu hợp lệ cho thấy ngày trước sẽ là bao nhiêu.

38. Nhập vào giờ, phút, giây. Kiểm soát xem giờ, phút, giây đó bao gồm hợp lệ tốt không, nếu đúng theo lệ cho biết giờ kế tiếp 1 giây là từng nào và giờ đồng hồ trước kia 1 giây là bao nhiêu.

Ví dụ: Nhập 01:59:59, Giờ sau đó 1 giây 02:00:00, tiếng trước đó 1 giây 01:59:58

39. Viết chương trình in ra bảng cửu chương trường đoản cú 2 mang đến 9.

40. (*) Vẽ hình cánh quạt gió sau:

*

Sử dụng những hàm cprintf(), textcolor(), delay(), kbhit(), … biến hóa màu để tạo cảm giác cho cánh quạt gió xoay cho tới khi dấn một phím bất kỳ.

PHẦN 3
HÀM nhỏ (CHƯƠNG TRÌNH CON)I. TÓM TẮT LÝ THUYẾTI.1 những hàm con

Được sử dụng nhằm mục đích mục đích:

• Khi bao gồm một công việc giống nhau cần tiến hành ở nhiều vị trí.

• Khi nên chia một lịch trình lớn tinh vi thành các đơn thể nhỏ dại (hàm con) để chương trình được trong sáng, dễ hiểu trong bài toán xử lý, làm chủ việc tính toán và giải quyết vấn đề.

Leave a Reply

Your email address will not be published. Required fields are marked *

x