Giới thiệu chung về cấu trúc lặp và vai trò quan trọng của chúng tronglập trình Cấu trúc lặp là một phần quan trọng trong lập trình, được sử dụng để thực hiện một chuỗi hành động nhiều l
Trang 1111Equation Chapter 1 Section 1TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA ĐIỆN TỬ - VIỄN THÔNG
BÁO CÁO TIỂU LUẬN
KỸ THUẬT LẬP TRÌNH TRONG DTVT
Đề tài: Các cấu trúc lặp trong C++ Viết một chương trình
Python ứng dụng trong ngành Công nghệ
kỹ thuật Điện tử Viễn thông.
SVTH : NGUYỄN VĂN KHOA
Mã SV : 20810510104 Lớp : D15DT&KTMT
HÀ NỘI – 5/2023
Trang 2MỤC LỤC
Trang
MỞ ĐẦU 1
CHƯƠNG I: GIỚI THIỆU CHUNG 2
1.1 Giới thiệu chung về cấu trúc lặp và vai trò quan trọng của chúng trong lập trình……….…2
1.2 Giới thiệu về ngành Công nghệ kỹ thuật Điện tử Viễn thông và sự cần thiết của cấu trúc lặp trong lĩnh vực này 3
CHƯƠNG II: CẤU TRÚC LẶP FOR 4
2.1.Giới thiệu về cấu trúc lặp for trong C++ 4
2.2 Ví dụ minh họa về cấu trúc lặp for 5
2.3 Ưu điểm và hạn chế của cấu trúc lặp for 6
CHƯƠNG III: CẤU TRÚC LẶP WHILE 8
3.1 Giới thiệu về cấu trúc lặp while trong C++ 8
3.2 Ví dụ minh họa về cấu trúc lặp while 10
3.3 Ưu điểm và hạn chế của cấu trúc lặp while 11
CHƯƠNG IV: CẤU TRÚC LẶP DO-WHILE 13
4.1 Giới thiệu về cấu trúc lặp do-while trong C++ 13
4.2 Ví dụ minh họa về cấu trúc lặp do-while 14
4.3 Ưu điểm và hạn chế của cấu trúc lặp do-while 15
CHƯƠNG V: SO SÁNH VÀ LỰA CHỌN CẤU TRÚC LẶP 16
5.1 Cách trường hợp sử dụng phù hợp cho từng cấu trúc lặp 16
5.2 Lựa chọn cấu trúc lặp phù hợp dựa trên yêu cầu và tình huống cụ thể .16
Trang 3CHƯƠNG VI: CHƯƠNG TRÌNH PYTHON ỨNG DỤNG TRONG NGÀNH
CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ VIỄN THÔNG 17
6.1 Đặc điểm của ngành Công nghệ kỹ thuật Điện tử Viễn thông 17 6.2 Chương trình Python ứng dụng trong ngành Công nghệ kỹ thuật Điện
tử Viễn thông 18
6.3 Lợi ích và tác động của việc sử dụng cấu trúc lặp trong các ứng dụng
thực tế của ngành Công nghệ kỹ thuật Điện tử Viễn thông 21
CHƯƠNG VII: KẾT LUẬN 23TÀI LIỆU THAM KHẢO 26
Trang 4MỞ ĐẦU
C++ là một ngôn ngữ lập trình đa năng và mạnh mẽ, được phát triển dựa trên ngôn ngữ C Được giới thiệu vào những năm 1980, C++ đã trở thành một trong những ngôn ngữ lập trình phổ biến và được sử dụng rộng rãi trong nhiều lĩnh vựckhác nhau, từ phát triển ứng dụng máy tính cho đến viết các hệ thống phần cứng.C++ kế thừa các đặc điểm mạnh mẽ của ngôn ngữ C và cung cấp thêm nhiều tínhnăng mới, bao gồm hướng đối tượng, kiểu dữ liệu tự định nghĩa, và hỗ trợ cho việc quản lý bộ nhớ Ngôn ngữ này cung cấp một cú pháp linh hoạt và cho phép lập trình viên tự do trong việc xây dựng các ứng dụng phức tạp
C++ được sử dụng trong nhiều lĩnh vực, từ phát triển phần mềm máy tính đến lập trình nhúng, trò chơi điện tử, trí tuệ nhân tạo và nhiều lĩnh vực khác Với hiệu năng cao, khả năng mở rộng và khả năng tương thích với ngôn ngữ C, C++
là một công cụ mạnh mẽ cho việc phát triển ứng dụng đa nền tảng và phức tạp.Tuy nhiên, việc sử dụng C++ cũng đòi hỏi kiến thức và kỹ năng lập trình cao hơn so với một số ngôn ngữ khác Việc quản lý bộ nhớ và xử lý con trỏ trong C++ yêu cầu sự cẩn trọng và am hiểu sâu về ngôn ngữ
Dù vậy, với sức mạnh và tính linh hoạt của mình, C++ vẫn là một trong những ngôn ngữ lập trình phổ biến và quan trọng trong cộng đồng lập trình, và tiếp tục được sử dụng để phát triển các ứng dụng đa dạng trên toàn thế giới
Trang 5CHƯƠNG 1: GIỚI THIỆU CHUNG 1.1 Giới thiệu chung về cấu trúc lặp và vai trò quan trọng của chúng trong lập trình
Cấu trúc lặp là một phần quan trọng trong lập trình, được sử dụng để thực hiện một chuỗi hành động nhiều lần Lý do chính để sử dụng cấu trúc lặp là để giảm sự lặp lại mã và tăng tính linh hoạt của chương trình
Một mục đích chính của việc sử dụng cấu trúc lặp là thực hiện một tác vụ nhiều lần mà không cần phải viết mã lặp lại Thay vì sao chép và dán mã lại vài chục hoặc thậm chí hàng trăm lần, chúng ta có thể sử dụng vòng lặp để thực hiện cùngmột tác vụ một số lần cố định hoặc dựa trên một điều kiện
Một ví dụ đơn giản về lý do sử dụng cấu trúc lặp là khi chúng ta muốn in ra một dãy số từ 1 đến 10 Thay vì viết mã in ra mỗi số từng cái một, chúng ta có thể sử dụng một vòng lặp để in ra tất cả các số từ 1 đến 10 chỉ với một đoạn mã duy nhất Điều này giúp tiết kiệm thời gian và công sức viết mã, đồng thời giảm khả năng mắc lỗi khi viết lại mã nhiều lần
Mục đích khác của việc sử dụng cấu trúc lặp là tăng tính linh hoạt của chương trình Với sự kết hợp của các điều kiện và vòng lặp, chúng ta có thể thay đổi dòng lệnh được thực hiện trong mỗi lần lặp hoặc kiểm soát số lần lặp theo yêu cầu của chương trình Điều này cho phép chúng ta xử lý một loạt các tình huống khác nhau mà không cần phải viết mã riêng biệt cho từng trường hợp
Ví dụ, chúng ta có thể sử dụng cấu trúc lặp để kiểm tra một danh sách các số và tìm ra các số chẵn trong danh sách đó Bằng cách sử dụng vòng lặp, chúng ta có thể duyệt qua từng phần tử trong danh sách và kiểm tra xem phần tử đó có phải
Trang 6số chẵn hay không Nếu là số chẵn, chúng ta có thể thực hiện một hành động như
in ra số đó hoặc thực hiện một xử lý phức tạp
hơn Việc sử dụng cấu trúc lặp cho phép chúng ta linh hoạt trong việc xử lý các danh sách có kích thước và nội dung khác nhau mà không cần phải viết mã riêngbiệt cho từng trường hợp
Tóm lại, việc sử dụng cấu trúc lặp trong lập trình có lý do và mục đích rõ ràng
Nó giúp giảm sự lặp lại mã và tăng tính linh hoạt của chương trình, giúp chúng
ta tiết kiệm thời gian, công sức viết mã và giảm khả năng mắc lỗi Với sự sử dụng khéo léo của cấu trúc lặp, chúng ta có thể xử lý hiệu quả các tác vụ lặp lại
và tạo ra những chương trình mạnh mẽ và dễ bảo trì
1.2 Giới thiệu về ngành Công nghệ kỹ thuật Điện tử Viễn thông và sự cần thiết của cấu trúc lặp trong lĩnh vực này
Công nghệ kỹ thuật Điện tử Viễn thông là một ngành chuyên về thiết kế, phát triển và ứng dụng các hệ thống và thiết bị điện tử trong viễn thông Ngành này bao gồm các lĩnh vực như viễn thông di động, viễn thông không dây, viễn thông vô tuyến, viễn thông quang và nhiều lĩnh vực khác
Trong lĩnh vực Công nghệ kỹ thuật Điện tử Viễn thông, việc sử dụng cấu trúc lặp là rất cần thiết Cấu trúc lặp giúp xử lý và phân tích dữ liệu liên tục từ các thiết bị viễn thông như cảm biến, giao diện mạng hoặc thiết bị thu phát tín hiệu
Nó giúp tối ưu hóa hiệu suất và thời gian đáp ứng của các thuật toán xử lý tín hiệu, tính toán phức tạp và các công việc xử lý dữ liệu khác Hơn nữa, việc lặp lại các tác vụ kiểm tra và điều khiển cũng là một phần không thể thiếu trong ngành Công nghệ kỹ thuật Điện tử Viễn thông, để đảm bảo hoạt động ổn định và
Trang 7đáng tin cậy của hệ thống.
Tổng quan, cấu trúc lặp đóng vai trò quan trọng trong lập trình và có sự cần thiết trong ngành Công nghệ kỹ thuật Điện tử Viễn thông Việc sử dụng cấu trúc lặp giúp tăng cường khả năng xử lý dữ liệu, tối ưu hóa hiệu suất và đáp ứng được yêu cầu của các ứng dụng trong lĩnh vực này
Trang 8- Phần "cập nhật" được sử dụng để thay đổi giá trị của biến đếm hoặc cập nhật các biến liên quan khác sau mỗi lần lặp.
Vòng lặp "for" rất linh hoạt và có thể được sử dụng để thực hiện một loạt các tác
vụ Ví dụ, chúng ta có thể sử dụng nó để lặp qua một mảng và xử lý từng phần
tử, in ra các số từ một giá trị đến một giá trị khác, thực hiện một tác vụ một số lần cố định, và nhiều hơn nữa
Hình 2.1 Sơ đồ quá trình hoạt động của vòng lặp for trong C++
2.2 Ví dụ minh họa về cách sử dụng cấu trúc lặp ‘for’
Dưới đây là một ví dụ đơn giản về vòng lặp "for" trong C++, in ra các số từ 1
Trang 9Vòng lặp "for" trong C++ là một công cụ quan trọng và tiện lợi để thực hiện các tác vụ lặp lại trong chương trình Chúng cung cấp sự linh hoạt và kiểm soát chặt chẽ, giúp lập trình viên thực hiện các tác vụ một cách hiệu quả và chính xác.
2.3 Ưu điểm và hạn chế của cấu trúc lặp for
Ưu điểm đầu tiên của cấu trúc lặp `for` là tính dễ dùng và dễ đọc Cú pháp của
nó rất đơn giản và dễ hiểu, cho phép lập trình viên dễ dàng viết và đọc mã lập
Trang 10trình Việc định nghĩa một biến đếm, xác định điều kiện lặp và thực hiện các bước tăng/giảm biến đếm giúp việc điều khiển vòng lặp trở nên rõ ràng và dễ quản lý.
Ưu điểm thứ hai của cấu trúc lặp `for` là khả năng kiểm soát tốt vòng lặp Với biến đếm và điều kiện dừng, chúng ta có thể kiểm soát chặt chẽ số lần lặp của vòng lặp Điều này giúp tránh việc vòng lặp lặp vô tận và đảm bảo rằng chỉ có đúng số lần lặp cần thiết được thực hiện
Ưu điểm cuối cùng của cấu trúc lặp `for` là tính linh hoạt Nó không chỉ giới hạntrong việc lặp qua các phần tử trong mảng, chuỗi, tập hợp mà còn có thể được sửdụng để thực hiện các tác vụ phức tạp hơn Ví dụ, nó có thể được sử dụng để duyệt qua danh sách liên kết, thực hiện các phép tính lặp lại, tạo ra các số ngẫu nhiên và nhiều tác vụ khác trong ngành Công nghệ kỹ thuật Điện tử Viễn thông
Tuy nhiên, cấu trúc lặp `for` cũng có một số hạn chế Hạn chế chính là khả năng chỉ hoạt động trong các tình huống mà số lần lặp đã biết trước hoặc có thể tính toán được trước Trong những trường hợp không biết trước số lần lặp, cấu trúc lặp `for` không thể được sử dụng hiệu quả và cần phải xem xét các cấu trúc lặp khác như `while` hoặc `do-while`
Tóm lại, cấu trúc lặp `for` có nhiều ưu điểm quan trọng như tính dễ dùng, khả năng kiểm soát tốt vòng lặp và tính
linh hoạt Tuy nhiên, cần lưu ý rằng nó chỉ phù hợp trong các tình huống mà số lần lặp đã biết trước hoặc có thể tính toán được trước Trong ngành Công nghệ
kỹ thuật Điện tử Viễn thông, cấu trúc lặp `for` được áp dụng rộng rãi trong việc tính toán độ phân giải tín hiệu, xử lý dữ liệu từ cảm biến và các tác vụ lặp lại
Trang 11khác, đóng góp vào việc phát triển các ứng dụng công nghệ tiên tiến trong lĩnh vực này.
CHƯƠNG III CẤU TRÚC LẶP WHILE
3.1 Giới thiệu về cấu trúc lặp ‘while’ trong C++
"while" kết thúc và chương trình tiếp tục thực hiện các hành động sau vòng lặp.Cấu trúc lặp "while" có nhiều ưu điểm Đầu tiên, nó cho phép thực hiện các tác
vụ lặp lại một cách linh hoạt dựa trên điều kiện Sinh viên có thể điều chỉnh điều
Trang 12kiện để đáp ứng các yêu cầu cụ thể của chương trình Thứ hai, cấu trúc "while" cung cấp khả năng xử lý số lần lặp không xác định Điều kiện được kiểm tra trước mỗi lần lặp, cho phép sinh viên lặp lại các tác vụ cho đến khi điều kiện đạt được Thứ ba, cấu trúc "while" dễ sử dụng và hiểu Cú pháp đơn giản và tường minh giúp sinh viên viết mã lặp theo cách dễ đọc và bảo trì.
Tuy nhiên, sinh viên cũng cần lưu ý một số hạn chế của cấu trúc lặp "while" Nếu không cập nhật hoặc không xác định rõ điều kiện dừng, có thể xảy ra vòng lặp vô hạn hoặc lặp không mong muốn Điều này có thể gây tình trạng treo chương trình và ảnh hưởng đến hiệu suất của nó
Cấu trúc lặp "while" trong C++ là một công cụ quan trọng để thực hiện các tác
vụ lặp lại dựa trên điều kiện logic Với tính linh hoạt và khả năng kiểm soát luồng chương trình, sinh viên có thể sử dụng cấu trúc này để viết mã lặp tường minh và dễ hiểu Tuy nhiên, cần chú ý đảm bảo cập nhật và xác định rõ điều kiệndừng để tránh các vấn đề không mong muốn
Trang 13Hình 3.1 Sơ đồ hoạt động của cấu trúc lặp while trong C++
3.2 Ví dụ minh họa về cách sử dụng cấu trúc lặp ‘while’
Cấu trúc lặp "while" trong ngôn ngữ lập trình C++ cung cấp một cách linh
hoạt và tiện lợi để thực hiện các tác vụ lặp lại dựa trên một điều kiện Dưới đây
là một ví dụ minh họa về cách sử dụng cấu trúc lặp "while" để tính tổng của các
Trang 14"while", ta thêm giá trị của i vào sum và tăng giá trị của i lên mỗi lần lặp Quá trình này tiếp tục cho đến khi i lớn hơn n Kết quả cuối cùng là tổng của các số từ
1 đến n được in ra màn hình
3.3 Ưu điểm và hạn chế của cấu trúc lặp while
Cấu trúc lặp `while` trong lập trình có những ưu điểm và hạn chế sau đây:
Ưu điểm:
- Linh hoạt và tổng quát: Cấu trúc lặp `while` cho phép lặp lại một khối mãcho đến khi một điều kiện được đáp ứng Điều này giúp giải quyết các tìnhhuống lặp không biết trước số lần lặp cụ thể hoặc khi điều kiện lặp không dễ
Trang 15dự đoán Cấu trúc lặp `while` linh hoạt và tổng quát hơn nhiều so với cấutrúc lặp `for`.
- Kiểm soát điều kiện lặp: Cấu trúc lặp `while` kiểm tra điều kiện trước khithực hiện mỗi vòng lặp Nếu điều kiện không được đáp ứng, vòng lặp sẽdừng ngay lập tức Điều này cho phép kiểm soát chặt chẽ quá trình lặp vàđảm bảo rằng chỉ có số lần lặp cần thiết được thực hiện
- Xử lý các tác vụ phức tạp: Cấu trúc lặp `while` cho phép thực hiện các tác
vụ phức tạp hơn bằng cách kiểm tra điều kiện lặp Điều này có thể bao gồm
xử lý dữ liệu đầu vào, xử lý lỗi, kiểm tra và thực hiện các phép tính, hoặc bất
kỳ tác vụ nào khác mà yêu cầu một sự lặp lại linh hoạt
Hạn chế:
- Nguy cơ lặp vô tận: Một nguy cơ tiềm ẩn của cấu trúc lặp `while` là nguy cơlặp vô tận Nếu điều kiện lặp không được thay đổi hoặc không đáp ứng, vònglặp sẽ tiếp tục lặp mã mà không bao giờ dừng Điều này có thể gây ra lỗi vàlàm cho chương trình không thể tiếp tục thực hiện
- Khó kiểm soát số lần lặp: So với cấu trúc lặp `for`, cấu trúc lặp `while` khókiểm soát số lần lặp cụ thể Điều này đòi hỏi lập trình viên phải đảm bảorằng điều kiện lặp được đáp ứng và cập nhật một cách chính xác để đảm bảo
số lần lặp đúng
- Thích hợp cho một số trường hợp cụ thể: Cấu trúc lặp `while` thường được
sử dụng khi số lần lặp không biết trước hoặc khi điều kiện lặp phức tạp Tuynhiên, nó không phù hợp cho các tình huống lặp có số lần lặp cụ thể và cóthể được xử lý tốt hơn bằng cấu trúc lặp `for`
Trang 16Cấu trúc lặp `while` có những ưu điểm như tính linh hoạt và tổng quát, khả năng kiểm soát điều kiện lặp và khả năng xử lý các tác vụ phức tạp Tuy nhiên, nó cũng có hạn chế như nguy cơ lặp vô tận, khó kiểm soát số lần lặp cụ thể và phù hợp với một số trường hợp cụ thể.
CHƯƠNG IV CẤU TRÚC LẶP DO-WHILE 4.1 Giới thiệu về cấu trúc lặp `do-while` trong C++.
Cấu trúc lặp `do-while` trong ngôn ngữ lập trình C++ cung cấp một cách để thực hiện các tác vụ lặp lại dựa trên một điều kiện Cấu trúc này tương tự với cấutrúc `while`, tuy nhiên, nó kiểm tra điều kiện sau mỗi lần lặp Điều này có nghĩa
là khối lệnh bên trong cấu trúc `do-while` sẽ được thực hiện ít nhất một lần, ngay
cả khi điều kiện là sai từ đầu
Dưới đây là cú pháp của cấu trúc lặp `do-while` trong C++:
Trang 17Hình 4.1 Sơ đồ quá trình hoạt động của vòng lặp do-while trong C++
4.2 Ví dụ minh họa về cách sử dụng cấu trúc lặp ‘do-while’
Một ví dụ minh họa về việc sử dụng cấu trúc lặp `do-while` để tính tổng các
Trang 184.3 Ưu điểm và hạn chế của cấu trúc lặp ‘do-while’
Cấu trúc lặp `do-while` có ưu điểm là đảm bảo thực hiện ít nhất một lần, ngay cả khi điều kiện không đúng từ đầu Điều này có thể hữu ích trong những trường hợp khi ta cần thực hiện một lần lặp trước khi kiểm tra điều kiện Ngoài
ra, cấu trúc này cũng đơn giản và dễ hiểu
Tuy nhiên, cần lưu ý rằng cấu trúc `do-while` có thể dẫn đến vòng lặp vô hạn nếu không cập nhật điều kiện dừng đúng cách Điều này có thể xảy ra nếu điều kiện luôn đúng, và mã lệnh sẽ lặp đi lặp lại mà không dừng lại Điều này đòi hỏi
Trang 19sự cẩn trọng trong việc xác định và cập nhật điều kiện lặp.
CHƯƠNG V SO SÁNH VÀ LỰA CHỌN CẤU TRÚC LẶP
5.1 Các trường hợp sử dụng phù hợp cho từng cấu trúc lặp
Trường hợp sử dụng phù hợp cho từng cấu trúc lặp:
- Cấu trúc `for` thích hợp khi số lần lặp cụ thể và rõ ràng, và khi cần xử lý các bước tăng/giảm biến đếm và tính toán trong cùng một vòng lặp
- Cấu trúc `while` thích hợp khi số lần lặp không xác định từ đầu và được quyết định dựa trên điều kiện
- Cấu trúc `do-while` thích hợp khi cần đảm bảo thực hiện ít nhất một lần trước khi kiểm tra điều kiện
5.2 Lựa chọn cấu trúc lặp phù hợp dựa trên yêu cầu và tình huống cụ thể
Lựa chọn cấu trúc lặp phù hợp dựa trên yêu cầu và tình huống cụ thể:
- Nếu ta biết số lần lặp cụ thể, cấu trúc `for` là sự lựa chọn tốt
- Nếu ta không biết số lần lặp từ đầu, và vòng lặp có thể không được thực hiện, cấu trúc `while` là lựa chọn hợp lý
- Nếu ta muốn đảm bảo thực hiện ít nhất một lần và sau đó kiểm tra điều kiện, cấu trúc `do-while` là sự lựa chọn thích hợp
Như vậy, việc lựa chọn cấu trúc lặp phù hợp phụ thuộc vào yêu cầu và tình huống cụ thể của vấn đề cần giải quyết Hiểu rõ ưu điểm và hạn chế của từng cấutrúc lặp sẽ giúp lập trình viên áp dụng chúng một cách hiệu quả và đảm bảo tính chính xác và hiệu năng của chương trình