Cấu trúc lặp Do Loop While

Một phần của tài liệu Bài giảng thực hành ngôn ngữ lập trình visual basic (Trang 26 - 29)

Trái với cấu trúc lặp Do while là kiểm tra điều kiện trước khi thực hiện công việc, Cấu trúc lặp Do ... Loop While và Do ... Loop Until lại thực hiện công việc sau đó mới kiểm tra điều kiện lặp (Cấu trúc Do...Loop While giống như cấu trúc Repeat ... Until trong PAscal).

Thực hành: Viết chương trình nhập vào một danh sách gồm Họ tên và điểm thi của sinh viên trong một lớp. Việc nhập kết thúc nếu họ tên nhập vào là một xâu rỗng.

Hướng dẫn:

• Công việc nhập lặp đi lặp lại do vậy cần sử dụng vòng lặp

• Số lần lặp là không xác định nên không thể sử dụng vòng lặp for

• Việc kiểm tra được tiến hành sau khi người dùng nhập họ tên, do vậy cần dùng vòng lặp Do ... Loop While.

Viết lệnh (sử dụng cấu trúc Do ... Loop While):

Option Explicit

'/// Định nghĩa kiểu bản ghi (Kiểu dữ liệu mới)

'/// Kiểu bản ghi định nghĩa trong Form phải có thuộc tính là Private (không được là public)

PrivateType Kieu_SinhVien

Ngôn ngữ lập trình Visual Basic

25

Diem As Integer

End Type

Dim N As Integer '/// Dùng để lưu số lượng phần tử đã nhập vào

PrivateSubForm_Load()

Dim SinhVien(100) As Kieu_SinhVien

N = 0 Do

N = N + 1

SinhVien(N).HoTen = InputBox("Họ tên của sinh viên thứ " & N) SinhVien(N).Diem = InputBox("Điểm của sinh viên thứ " & N)

Loop While SinhVien(N).HoTen <> ""

'/// Hiển thị kết quả vừa nhập

Dim i As Integer For i = 1 To N - 1

MsgBox "Họ tên : " & SinhVien(i).HoTen & " Điểm: " & SinhVien(i).Diem

Next End Sub

Viết lệnh (sử dụng cấu trúc Do ... Loop Until):

Option Explicit

'/// Định nghĩa kiểu bản ghi (Kiểu dữ liệu mới)

'/// Kiểu bản ghi định nghĩa trong Form phải có thuộc tính là Private (không được là public)

PrivateType Kieu_SinhVien (adsbygoogle = window.adsbygoogle || []).push({});

HoTen As String Diem As Integer

End Type

Dim N As Integer '/// Dùng để lưu số lượng phần tử đã nhập vào

PrivateSubForm_Load()

Dim SinhVien(100) As Kieu_SinhVien

N = 0

Do

N = N + 1

SinhVien(N).HoTen = InputBox("Họ tên của sinh viên thứ " & N) SinhVien(N).Diem = InputBox("Điểm của sinh viên thứ " & N)

Loop Until SinhVien(N).HoTen = ""

'/// Hiển thị kết quả vừa nhập

Dim i As Integer For i = 1 To N - 1

Debug.Print "Họ tên : " & SinhVien(i).HoTen & " Điểm: " & SinhVien(i).Diem

Next End Sub

Nhận xét:

• Cấu trúc Do ... Loop While và cấu trúc Do ... Loop Until đều thực hiện công việc lặp sau đó mới kiểm tra điều kiện nhưng trong cấu trúc lặp Do ... Loop

Ngôn ngữ lập trình Visual Basic

26

While thì việc lặp chỉ kết thúc nếu điều kiện là sai, còn Do ... Loop Until thì kết thúc nếu điều kiện lặp là đúng (giống với Repeat until trong PAscal)

Ngôn ngữ lập trình Visual Basic

27

LAB 3: SỬ DỤNG CÁC ĐIỀU KHIỂN CƠ BẢN TRONG VISUAL BASIC

Một phần của tài liệu Bài giảng thực hành ngôn ngữ lập trình visual basic (Trang 26 - 29)