logo

Đang load dữ liệu

logo devmaster

VIỆN CÔNG NGHỆ VÀ ĐÀO TẠO DEVMASTER

Đào tạo - Phần mềm - Cho thuê nhân sự

  • 0969.609.003
  • 0978.611.889
  • Trang chủ
  • Các khoá đào tạo
    • Chuyên đề WEB - PHP

      • Lập trình web với HTML5 - CSS3- JQuery - Bootstrap - Ajax - [36 giờ]
      • Lập trình web frontend - reactjs - [75 giờ]
      • Lập trình web với mã nguồn mở PHP&MYSQL - PHP FRAMEWORK [126 giờ]

      Chuyên đề Mobile

      • Lập trình Games/Apps trên nền tảng Android - [120 giờ]
      • Lập trình Games/Apps trên nền tảng IOS - [120 giờ]

      Chuyên đề JAVA

      • Ngôn ngữ lập trình hướng đối tượng với java - [40 giờ]
      • Lập trình ứng dụng với java - [100 giờ]
      • Lập trình web site với java framework (JPA, HIBERNATE, SPRING MVC, SPRINGBOOT) - [276 giờ]

      Chuyên đề NETWORK/SECURITY

      • Khoá học Quản trị hạ tầng mạng CCNA v6 - [72 giờ]
      • Khoá học quản trị hệ thống với Windows SERVER 2012- [72 giờ]
      • Chuyên gia bảo mật hệ thống CompTIA + - [110 giờ]

      Chuyên đề .NET

      • Nền tảng lập trình hướng đối tượng với C# - [40 giờ]
      • Lập trình ứng dụng WINDOWS FORM - [100 giờ]
      • Lập trình Web với ASP.NET MVC 5, WebAPI - [145 giờ]

      Chuyên đề khác

      • Ngôn ngũ lập trình C/C++ - [80 giờ]
  • Lập trình cho trẻ em
  • Dịch vụ
    • Đào tạo theo như cầu
    • Cung cấp thiết bị - Phần mềm
    • Tư vấn - Thiết kế mạng hạ tầng
    • Tư vấn - Triển khai dịch vụ mạng
    • Tư vấn - Tư vấn, triển khai giám sát hệ thống
    • Thực tập dự án
  • Lịch khai giảng
  • Tin tức
    • Tin tức và sự kiện
    • Tin hoạt động
    • Tin công nghệ
    • Hội thảo, workshop, Codecam
    • Thông tin việc làm
    • Cẩm nang chia sẻ kiến thức
  • Tiện ích
  • Liên hệ

Cẩm nang chia sẻ kiến thức

Jul - 2019

13

Hướng dẫn thực hành cấu trúc điều khiển lặp (for, while) trong Python

Cẩm nang chia sẻ kiến thức

Lab04
Hướng dẫn thực hành
Các cấu trúc điều khiển Lặp trong Python

Mục tiêu                                

  • Cấu trúc điều khiển lặp (while)
  • Cấu trúc điều khiển lặp (for)
  • Cấu trúc nhảy (break, continue)
  • Lệnh pass, else trong vòng lặp

Giới thiệu tổng quan

Trong Python các câu lệnh (statement) được thực hiện một cách tuần tự từ trên xuống dưới. Tuy nhiên đôi khi bạn muốn thực hiện một khối các câu lệnh nhiều lần, bạn có thể sử dụng vòng lặp (loop).

 

python - vòng lặp

Phần I: Hướng dẫn thực hành

Hướng dẫn thực hành với các cấu trúc điều khiển lặp trong lập trình Python:

Cấu trúc điều khiển while

Cú pháp:

# Bắt đầu vòng lặp

while condition expression:

    statement

 

# Lệnh ngoài vòng lặp

Lab04.01

Yêu cầu: Viết chương trình Python thực hiện công việc sau:

  • Nhập vào số nguyên n
  • In ra các số nguyên nhỏ hơn n

Gợi ý:

Bước 1: Tạo thư mục Lab04 tại ổ đĩa lưu trữ của bạn (ví dụ: D:\Devmaster.edu.vn\Python\Labguides\Lab04)

Mở Visual Studio code, vào menu File -> Open Folder -> Chọn tư  mục bạn vừa tạo -> Chọn SELECT (Ví dụ: D:\Devmaster.edu.vn\Python\Labguides\Lab04)

Bước 2: Tạo mới file Lab04.01.py

Code theo gợi ý sau:

 

"""

Yêu cầu: Viết chương trình Python thực hiện công việc sau:

-   Nhập vào số nguyên n

-   In ra các số nguyên nhỏ hơn n

"""

# Nhập số nguyên n

n=int(input("Nhập n="))

# In các số nguyên i < n

i=0

while i<n:

    print(i)

    i +=1

 

print("Finish")

#=========================================================

Bước 3: Chạy chương trình: nhấn phím F5 để chạy chương trình ta có kết quả như sau

Nhập n=10

0

1

2

3

4

5

6

7

8

9

Finish

Lab04.02

Yêu cầu: Viết chương trình Python thực công việc sau:

  • Nhập vào số nguyên n
  • In ra các số i

Gợi ý:

Bước 1: Trong thư mục Lab04 => tạo mới file Lab04.02.py

Bước 2: Coding gợi ý

"""

Yêu cầu: Viết chương trình Python thực công việc sau:

-   Nhập vào số nguyên n

-   In ra các số i

"""

# Nhập số nguyên n

n=int(input("Nhập n="))

 

i=0

tong=0

while i

    if i%3==0 or i%5==0:

        tong +=i

        print(i)

    i +=1

# Tổng

print("Tổng các số chia hết cho 3 hoặc 5:",tong)

#=========================================================

 

Bước 3: Thực hiện chương trình (F5) kết quả như sau:

Nhập n=12

0

3

5

6

9

10

Tổng các số chia hết cho 3 hoặc 5: 33

Lab04.03: kiểm tra số nguyên tố

 

Yêu cầu: Viết chương trình Python thực hiện các công việc sau:

  • Nhập vào số nguyên dương n
  • Kiểm tra số n có phải là số nguyên tố không

Gợi ý:

Bước 1: Trong thư mục “Lab04” tạo mới file Lab04.03.py

Bước 2: Code gợi ý như sau:

"""

Yêu cầu: Viết chương trình Python thực hiện các công việc sau:

-   Nhập vào số nguyên dương n

-   Kiểm tra số n có phải là số nguyên tố không

"""

# Nhập số nguyên n

n=int(input("Nhập n="))

 

flag=True # Giả sử n là số nguyên tố

# Tìm xem có số x nào mà x là ước của n không?

# Nếu có số x là ước của n thì => n không là nguyên tố

 

x=2 # khởi tạo biến lặp

while x <= int(n/2):

    if n%x==0: # lúc này x là ước

        flag=False

        break

    x +=1 # Tăng biến lặp

if flag==True:

    print(n, "là số nguyên tố!")

else:

    print(n, "không là số nguyên tố")

#========================================================

 

Bước 3: Chạy chương trình và kiểm tra kết quả:

Nhập n=5

5 là số nguyên tố!

 

Nhập n=6
6 không là số nguyên tố

 

Cấu trúc điều khiển for: for…range; for…array

Cú pháp:

 

"""

for range, for...array

# syntax:

for x in range(start, stop):

    statement

 

for x in list_sequense:

    statement

 

"""

 

Lab04.04: for…range

Ví dụ đơn giản nhất của vòng lặp for trong Python là sử dụng 'for' với  'range'  (Phạm vi).

Ví dụ biến 'x' có giá trị chạy trong pham vi (3, 7)  (x= 3, 4, 5, 6).

Bước 1: Trong thư mục “Lab04” tạo file Lab04.04.py

Bước 2: Coding gợi ý

print("For loop example")

 

# for x = 3, 4, 5, 6

for x in range (3, 7) :

 

    print("Value of x = ", x)

    print("  x^2 = ", x * x)

 

# Dòng lệnh này nằm ngoài khối lệnh for.

print("End of example")

#=========================================================

Bước 3: Thực thi chương trình và kết quả

 

For loop example

Value of x =  3

  x^2 =  9

Value of x =  4

  x^2 =  16

Value of x =  5

  x^2 =  25

Value of x =  6

  x^2 =  36

End of example

 

Lab04.05: for…list

Sử dụng vòng lặp for có thể giúp bạn duyệt trên các phần tử của mảng.

Ví dụ:

  • Khởi tạo một mảng
  • Duyệt và in ra các phần tử

Code gợi ý:

 

"""

Sử dụng vòng lặp for có thể giúp bạn duyệt trên các phần tử của mảng.

Ví dụ:

-   Khởi tạo một mảng

-   Duyệt và in ra các phần tử

"""

# Khởi tạo mảng

list=["Devmaster","Academy"]

 

for item in list:

 

    print(item)

 

# Câu lệnh này ngoài vòng lặp for

print("-------------------")

print("Finish")

#=========================================================

 

Kết quả:

Devmaster

Academy

-------------------

Finish

 

Duyệt các phần tử của mảng thông qua chỉ số (index):

Ví dụ:

# Khởi tạo mảng

list=["Viện","Công","Nghệ","Và","Đào","Tạo","Devmaster"]

print("Duyệt các phần tử của mảng thông qua chỉ số:")

# Hàm len() trả về số phần tử của mảng.

# index = 0,1,.. len-1

for index in range(len(list)):

    print(index, list[index] )

#=========================================================

Kết quả:

Duyệt các phần tử của mảng thông qua chỉ số:

0 Viện

1 Công

2 Nghệ

3 Và

4 Đào

5 Tạo

6 Devmaster

 

Lab04.06: Sử dụng break trong vòng lặp

python break

Ví dụ:

print("Ví dụ về break") 

# Tạo một biến x và gán giá trị 2 cho nó.

x = 2 

while (x < 15) :

    print("----------------------\n")

    print("x = ", x)

    # Kiểm tra nếu x = 5 thì thoát ra khỏi vòng lặp.

    if (x == 5) :    

        break    

    # Tăng giá trị của x thêm 1

    x = x + 1

    print("x after + 1 = ", x)    

print("Kết thúc")

#=========================================================

Kết quả:

x =  2

x after + 1 =  3

----------------------

x =  3

x after + 1 =  4

----------------------

x =  4

x after + 1 =  5

----------------------

x =  5

Kết thúc

 

Lab04.07
Sử dụng continue trong vòng lặp

python continue

Ví dụ:

 

"""

Ví dụ về continue

    - Nhập vào số nguyên dương n

    - In ra các số tự nhiên

"""

# Nhập số n

n=int(input("Nhập số n="))

x=1

while x

    if x%3==0:

        x +=1 # tăng x lên 1

        continue # bắt đầu vòng lặp mới và không in

    print(x)

    x +=1

print("Kết thúc")

#=========================================================

 

Kết quả:

Nhập số n=10

1

2

4

5

7

8
Kết thúc

NẾU BẠN NGỦ QUÊN TRONG CUỘC SỐNG
THỨ BẠN NHẬN ĐƯỢC CHỈ LÀ NHỮNG GIẤC MƠ

Phần II Bài tập tự thực hành

  1. Viết chương trình thực hiện việc in ra các số nguyên tố từ 2 đến 100 (Chú ý: Số nguyên tố là số chỉ chia hết cho 1 và chính nó)
  2. Viết chương trình tính tổng các số chẵn và không chia hết cho 3 với các số <=n ( n nguyên dương, nhập từ bàn phím)
  3. Viết chương trình nhập vào năm x tháng y sau đó in ra số ngày trong tháng năm đó.
  4. Viết chương trình nhập vào số nguyên dương là số giây, in ra định dạng sau hh:mm:ss . Ví dụ số giây nhập vào là 350 thì in ra là 00:05:50.
  5. Viết chương trình in ra số có 2 chữ số mà tổng của chúng là số chẵn (Các số: 100-999)
  6. Viết chương trình in ra các hình sau

vòng lặp

  1. Viết chương trình để hiển thị ra hình sau

vòng lặp

  1. Viết chương trình:
    1. Nhập vào số tiền gửi, lãi xuất ngân hàng (Tính theo năm) và số tháng gửi:
    2. Tính và xuất số dư cuối kỳ và tiền lãi cuối kỳ, biết rằng:
    • Lãi suất tháng=(Lãi suất năm/12)/100
    • Tiền lãi tháng=Tiền gốc*Lãi suất tháng
    • Tiền lãi mỗi tháng sẽ được gộp chung vào tiền gốc
    • Tiền lãi cuối kỳ sẽ được tích lũy tiến từ tiền lãi mỗi tháng + tiền gốc

Ví dụ: Nếu bạn gửi 10 triệu với lãi suất 12%/năm và gửi trong 4 tháng, thì tiền lãi cuối kỳ được tính như sau:

    • Lãi suất tháng=(12/12)/100=0.01

Tháng

Tiền gốc + lãi

Tiền lãi tháng

1

10,000,000

100,000

2

10,100,000

101,000

3

10,201,000

102,010

4

10,303,010

103,030.1

 

  1. Viết chương trình in ra hình sau:

Nhập N=5: In ra hình

* * * * *

* * *

*

  1. Viết chương trình in ra dãy amstrong có 3 chữ số
  2. Viết chương trình in ra dãy Fibonaci
  3. Viết chương trình tìm ước số chung lớn nhất, bội số chung nhỏ nhất của 2 số
  4. Viết chương trình
    1. Nhập vào số nguyên dương n, m (n
    2. In ra các số chính phương trong khoảng [n,m] và tính tổng các số chính phương.
    3. In ra các hoàn hảo trong khoảng [n,m] và tính tổng các số hoàn hảo.
    4. In ra các số nguyên tố cùng nhau trong khoảng [n,m]
  5. Nhập vào số nguyên dương n; tìm ước số chung lớn nhất của số đó với các số từ 1 đến 10; in kết quả ra màn hình
  6. Nhập một số nguyên n; in ra màn hình số đảo ngược của số đó

Ví dụ: 123456798 => 897654321

  1. Nhập số nguyên n; tính giai thừa của n (!n)

Ví dụ: !3 = 1x2x3 = 6

  1. Nhập số nguyên y và số nguyên n

Tính giá trị biểu thức:  ví dụ n=9

y – 1/3 * (!y3) + 1/5*(!y5) – 1/7 *(!y7) + 1/9*(!y9)

  1. Viết chương trình tìm ra các số nguyên a,b,c,d trong khoảng 0 đến 10 thỏa mãn điều kiện: a*d*d = b *c*c*c
  2. Viết chương trình in ra bảng cửu chương
  3. Viết chương trình xác định tất cả các cặp số nguyên dương (x,y) sao cho x2+y2+1)/x*y là 1 số nguyên
  4. Tìm tất cả các phương án kết hợp 3 loại tiền: 1000đ, 2000đ, 5000đ với nhau để được số N đ. Với  N nhập từ  bàn phím và N>=10000 và N%1000==0.
  5. Tính tổng các chữ số của 1 số tự nhiên N; N nhập từ bàn phím
  6. Tính kết quả của phép toán 1+1/23+1/33+...+1/n3 (làm tròn 3 chữ số thập phân)
  7. Một cặp số nguyên dương được gọi là số bạn bè nếu tổng các ước số của số này bằng chính số kia. Hãy viết chương trình kiểm tra xem 2 số nhập vào có phải là số bạn bè hay không. Nếu phải thì xuất 'YES', ngược lại là 'NO'
  8. Một số nguyên dương có n chữ số được gọi là số Armstrong khi tổng các lũy thừa bậc n của các chữ số của nó bằng chính nó. Hãy kiểm tra xem một số nguyên dương N nhập vào từ bàn phím có phải là số Armstrong hay không. Nếu phải thì xuất 'YES', ngược lại là 'NO'.

Ví dụ:

371 là số Armstrong vì: 3^3 + 7^3 + 1^3 = 371

8208 là số Armstrong vì: 8^4 + 2^4 + 8^4 = 8208

  1. Hãy tìm tất cả các số Armstrong trong đoạn [A; B] với A, B là 2 số nhập từ bàn phím. Nếu không có thì xuất ra thông báo “Không có số nào”
  2. Cho trước số nguyên dương n. Hãy xuất ra màn hình tất cả các bộ 3 số Pytago mà cả 3 số đều <= n (mỗi bộ số 1 dòng và xuất theo thứ tự tăng dần của các cạnh).

Với 3 số nguyên dương cho trước (a < b < c), nếu 3 số đó là độ dài 3 cạnh của một tam giác vuông thì bộ 3 số này được gọi là bộ 3 số Pytago.

Ví dụ: n=13 ta có 3 bộ số pytago

(3,  4,  5)
(5,  12,  13)
(6,  8,  10)

  1. Nhập vào 1 số nguyên ở hệ thập phân, yêu cầu xuất ra 1 số ở hệ nhị phân.

HẾT ~ CHÚC CÁC BẠN RÈN LUYỆN TỐT

Nguồn: Devmaster Academy


Hướng dẫn thực hành cấu trúc điều khiển if trong Python

Các bài viết cùng chủ đề

BÍ QUYẾT HỌC LẬP TRÌNH CHO CÁC BẠN ĐẦU NĂM HỌC MỚI ❤
BÍ QUYẾT HỌC LẬP TRÌNH CHO CÁC BẠN ĐẦU NĂM HỌC MỚI...
5 Phương pháp hay để mở rộng các dự án React của bạn một cách dễ dàng
5 Phương pháp hay để mở rộng các dự án React của b...
Lab06.1 - Data Access In ASPNET MVC 5
Lab06.1 - Data Access In ASPNET MVC 5
Lab05 - Data Validation and Annotation In ASPNET MVC 5
Lab05 - Data Validation and Annotation In ASPNET M...
Lab 04 - Model in ASP.NET MVC 5 - Phần tự thực hành
Lab 04 - Model in ASP.NET MVC 5 - Phần tự thực hàn...
Lab 04 - Model in ASP.NET MVC 5 - Bài 4.2
Lab 04 - Model in ASP.NET MVC 5 - Bài 4.2

Các khóa đào tạo chuyên đề

Thiết kế và lập trình Website PHP, Laravel chuyên nghiệp - FullStack
Thiết kế và lập trình Website PHP, Laravel chuyên nghiệp - FullStack
Lập trình ứng dụng trên nền tảng android Lập trình ứng dụng trên nền tảng android
Lập trình Ứng dụng với Công nghệ ASP.NET Core MVC, WebAPI, ReactJS - FullStack

Lập trình Ứng dụng với Công nghệ ASP.NET Core MVC, WebAPI, ReactJS - FullStack
Lập trình ứng dụng với WINDOWS FORM Lập trình ứng dụng với WINDOWS FORM
Lập trình ứng dụng với JAVA (FORM) Lập trình ứng dụng với JAVA (FORM)
Thiết kế và lập trình Ứng dụng với công nghệ Java (Java Framework springBoot, hibernate,...) - FullStack
Thiết kế và lập trình Ứng dụng với công nghệ Java (Java Framework springBoot, hibernate,...) - FullStack
Thiết kế và lập trình website với công nghệ HTML5, CSS3, Javascript, Bootstrapt 4, Jquery Thiết kế và lập trình website với công nghệ HTML5, CSS3, Javascript, Bootstrapt 4, Jquery
Lập trình frontend với reacjs (Full) Lập trình frontend với reacjs (Full)
DEVMASTER
Viện Công Nghệ Và Đào Tạo Devmaster

DEVMASTER ACADEMY

Địa chỉ: Tầng 6 - Tòa nhà VIỆN CÔNG NGHỆ
Số 25, Vũ Ngọc Phan - Láng Hạ - Đống Đa - Hà Nội

Hotline: 0969 609 003 | 0978 611 889

devmaster.contact@gmail.com

hna.tvchung@gmail.com

CÁC KHÓA HỌC CHUYÊN ĐỀ

  • Thiết kế và lập trình Website PHP, Laravel chuyên nghiệp - FullStack
  • Lập trình ứng dụng trên nền tảng android
  • Lập trình Ứng dụng với Công nghệ ASP.NET Core MVC, WebAPI, ReactJS - FullStack
  • Lập trình ứng dụng với WINDOWS FORM
  • Lập trình ứng dụng với JAVA (FORM)
  • Thiết kế và lập trình Ứng dụng với công nghệ Java (Java Framework springBoot, hibernate,...) - FullStack
  • Thiết kế và lập trình website với công nghệ HTML5, CSS3, Javascript, Bootstrapt 4, Jquery
  • Lập trình frontend với reacjs (Full)
Viện Công Nghệ Và Đào Tạo Devmaster

VIỆN CÔNG NGHỆ VÀ ĐÀO TẠO DEVMASTER - Học thực tế * Làm thực tế * Cam kết việc làm
Copyright by Ⓒ DEVMASTER 2015