1. Trang chủ
  2. » Công Nghệ Thông Tin

BÀI TẬP CÔNG NGHỆ THÔNG TIN TRƯỜNG ITC potx

11 238 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 11
Dung lượng 676,8 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

2.2 Mảng ñộng Written by: Dương Thành Phết Mảng ñộng là mảng không xác ñịnh rõ số phần tử khi khai báo.. http://www.thayphet.net Cú pháp khai báo: [Dim | Private | Public | Static] Tên_

Trang 1

2.2 Mảng ñộng

Written by: Dương Thành Phết

 Mảng ñộng là mảng không xác ñịnh rõ số phần tử khi

khai báo.

http://www.thayphet.net

Cú pháp khai báo:

[Dim | Private | Public | Static] Tên_m,ng() As Kiu

 Cấp phát bộ nhớ:

ReDim Tên_m,ng(s0 ph7n t8) As Kiu

ReDim St(9)

This is trial version www.adultpdf.com

Trang 2

Written by: Dương Thành Phết

 Khi ñã khai báo và cấp phát vùng nhớ cho mảng

ñộng, khi cần ta vẫn có thể thay ñổi lại kích thước của mảng bằng lệnh ReDim

http://www.thayphet.net

Ví du :

Dim MyArray() As Integer ' Khai báo mảng ñộng.

Redim MyArray(5) ' cấp phát 5 phần tử.

For i = 1 To 5 ' Lặp 5 lần.

MyArray(i) = i Next i

Redim MyArray(10) For i = 1 To 10

MyArray(i) =i Next i

This is trial version www.adultpdf.com

Trang 3

Written by: Dương Thành Phết

 Mặc ñịnh, khi dùng lệnh Redim ñể cấp phát lại số

phần tử trong mảng thì các giá trị cũ sẽ bị mất ñi.

 ðể giữ lại các giá trị cho các phần tử cũ trong mảng ta

phải dùng thêm từ khoá Preserve

http://www.thayphet.net

Ví du :

Dim MyArray() As Integer ' Khai báo mảng ñộng.

Redim MyArray(5) ' cấp phát 5 phần tử.

For i = 1 To 5 ' Lặp 5 lần.

MyArray(i) = i khởi tạo giá trị cho mảng.

Next i

… Redim Preserve MyArray(15)

'cấp phát lại 15 pt cho mảng nhưng vẫn giữ lại

‘các giá trị cũ của 5 phần tử ñầu.

This is trial version www.adultpdf.com

Trang 4

2.3 Mảng ña chiều

Written by: Dương Thành Phết

 Visual Basic cho phép khai báo và sử dụng mảng ña

chiều

 Ví dụ khai báo mảng 2 chiều, mỗi chiều 10 phần tử.

Dim MatrixA(9, 9) As Double

Ta cũng có thể xác ñịnh rõ ràng các chỉ số trên, chỉ số dưới của mảng ña chiều như ví dụ sau ñây:

Dim MatrixA(1 To 10, 1 To 10) As Double

http://www.thayphet.net

This is trial version www.adultpdf.com

Trang 5

Written by: Dương Thành Phết

Lưu ý :

 Mỗi một phần tử của mảng chiếm một vùng nhớ nhất

ñịnh, do ñó, ñể tiết kiệm bộ nhớ, ta chỉ nên khai báo

mảng với số phần tử vừa ñủ.

 Không thể tạo mảng có quá 2.147.483.647 phần tử Vì

có thể dẫn ñến lỗi “Out Of Memory” khi chạy chương trình.

http://www.thayphet.net

This is trial version www.adultpdf.com

Trang 6

2.4 Các xử lý trên mảng

Written by: Dương Thành Phết

 Hàm v@ m,ng

http://www.thayphet.net

Split(Chuỗi [, Dấu phân cách [, số phần tử ]]): Cắt 1 chuỗi thành một mảng các chuổi con

Join(Mảng [, Dấu phân cách]):

Trả về chuổi kết hợp các phần tử trong 1 mảng

VD:

Dim A() = Split(txtNhap.Text, "-") txtKetqua.Text = Join(A, "/")

This is trial version www.adultpdf.com

Trang 7

Written by: Dương Thành Phết

 Tìm kim các ph7n t8 thBa ñi@u ki"n cho trCDc

For i = 0 To n-1

IF A(i) = n Then

ThIc hi"n các x8 lý End If

Next

http://www.thayphet.net

This is trial version www.adultpdf.com

Trang 8

Written by: Dương Thành Phết http://www.thayphet.net

 Tìm giá trị nhỏ nhất/ lớn nhất và vị trí

Dim gtnn as Integer, vtgtnn as Integer gtnn=A(0)

vttnn=0 For i = 0 To n-1

If( A(i) < gtnn then

gtnn=A(i) vtgtnn=i End If

Next

This is trial version www.adultpdf.com

Trang 9

Written by: Dương Thành Phết http://www.thayphet.net

d Tính tổng của các phần tử trong mảng.

Dim Tong as Integer =0 For i = 0 to n-1

Tong=Tong + A(i) Next

Ghi chú: Tương tự ta có yêu cầu tính toán khác

This is trial version www.adultpdf.com

Trang 10

Written by: Dương Thành Phết http://www.thayphet.net

Ví dụ: Tạo project xử lý mảng số nguyên

Yêu cầu:

Tạo 5 Text Box chứa 5 số nguyên ngẫu nhiên (từ

1 ñến 100) khi click vào nút nhập

Tìm giá trị số lớn nhất và vị trí

Tính tổng giá trị các phần tử

Các Textbox luôn ReadOnly

This is trial version www.adultpdf.com

Trang 11

Written by: Dương Thành Phết http://www.thayphet.net

e Sắp xếp tăng dần/ giảm các phần tử trong mảng

Sub Sapxep(ByVal a() As Integer, ByVal n As Integer)

Dim tam As Integer Dim i As Integer, j As Integer For i = 0 To n - 2

For j = i + 1 To n - 1

If a(i) > a(j) Then tam = a(i)

a(i) = a(j) a(j) = tam End If

Next Next

i=1 j=2 i=2 j=3 i=3 j=4 i=4 j=5 i=5 j=6 i=6 j=7 i=7

This is trial version www.adultpdf.com

Ngày đăng: 13/08/2014, 23:21

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm