... ); postorder( node.rightNode ); System.out.print( node.data + " " ); }}1 Lập trình Java cơ bản Cao Đức Thông - Trần Minh Tuấncdthong@ifi.edu.vn, tmtuan@ifi.edu.vn 19Sử dụng Stackpublic ... theo kiểu LIFO (Last In First Out), phần tử vào sau cùng sẽ được lấy ra trước.•Hai thao tác cơbản trên Stack•Chèn phần tử: Luôn chèn vào đỉnh Stack (push)•Lấy ra phần tử: Luôn lấy ra ... System.out.println(names); }}43Giao tiếp Map•Giao tiếp Map cung cấp các thao tác xử lý trên các bảng ánh xạ (Bảng ánh xạ lưu các phần tử theo khoá và không được có 2 khoá trùng nhau).•Một số phương...
... cấp phát lại thì nội dung vùng nhớ trước đó vẫn tồn tại. Trang 83 Lập trình căn bản V. BÀI TẬP V.1 Mục tiêu Tiếp cận với một kiểu dữ liệu rất mạnh trong C là kiểu con trỏ. Từ đó, sinh viên ... mảng) bằng cách sử dụng con trỏ. Trang 90 Lập trình căn bản - Kết quả trả về của hàm là địa chỉ đầu tiên của vùng nhớ mới. Địa chỉ này có thể khác với địa chỉ được chỉ ra khi cấp phát ban đầu. ... NULL cho 1 con trỏ có kiểu bất kỳ. d. Lưu ý: - Ta không thể cộng 2 con trỏ với nhau. Trang 84 Lập trình căn bản IV. CON TRỎ VÀ THAM SỐ HÌNH THỨC CỦA HÀM Khi tham số hình thức của hàm...
... tich=%0.2f,s);getch();}U/$0&&9"P#(&#M"*OVOWX"1X"$*!*VOWX&X"$*!*.&/&=O>Y(C&ZZ>/[@*#OK$\8]!K$\8]§2. LẬPTRÌNH CẤU TRÚC VÀ LẬPTRÌNH HƯỚNG ĐỐI TƯỢNG2.1)Phương pháp lậptrình cấu trúc>9?&N^:&#&89&*"*-[@.&-)F!89&-_'&-8`2&2$&.;C2=!C-O"C ... break; getch(); }t•Chương trình sau gồm các hàm:Nhập 1 ma trận thực cấp mxnIn 1 ma trận thực dưới dạnh bảngTìm phần tử lớn nhất và nhỏ nhất của dãy số thựcChương trình sẽ nhập 1 ma trận, in ... bang:%0.2f,dmax);printf(\n\n di qua 2 diem co chi so la %d va %d ,imax,jmax);getch();}2.2)Phưong pháp lậptrình hướng đối tượngO>p#C&)*L&&LR*""T8-.<L";@&4*#=$4C!#8q&-.<L";?2&5&R"T6&#*/!#&:R$T*Q&#!/RrT8h2L0&A*"*O*""9kstt@*##=$4Ctt@*##&:uj>#&:-.!R<$;&T/&Y/&RN*$LT=0&A*L85R#!T&:&;&'o1G"*Op<$;&2&5/&0&A*L&$Q&=/=$&/L![$OYL/&:.vw&:2LR<!N$F/$LT8>bE$F&#=$4C&&:OD&:!#=$4C2%&_L!!&:/x<EN#=$4C...
... 11firstNode lastNode(a)5new ListNode12 11firstNode lastNode(b)5new ListNode71 Lập trình Java cơ bản Cao Đức Thông Trần Minh Tuấncdthong@ifi.edu.vn, tmtuan@ifi.edu.vn 50Ví dụ 1: TreeSet// This program sorts a set of namesimport java.util.*;public class TreeSetTest1{ public static void main(String[] args) { SortedSet names = new TreeSet(); names.add(new String("Minh Tuan")); names.add(new String("Hai Nam")); names.add(new String("Anh Ngoc")); names.add(new String("Trung Kien")); names.add(new String("Quynh Chi")); names.add(new String("Thu Hang")); System.out.println(names); }}31Bài tập tại lớp•Bài 1: Dùng Stack để viết chương trình in ra dạng nhị phân của một số nguyên dương cho trước.•Bài 2: Cài đặt phương thức search trong lớp Tree để tìm một phần tử có giá trị cho trước.7Cài đặt Linked List// Dinh nghia mot node trong linked list ... nó có thể tung ra ngoại lệ UnsupportedOperationException.49Mô tả các cài đặt•HashMap: Bảng băm (cài đặt của Map).•LinkedHashMap: Bảng băm kết hợp với linked list nhằm đảm bảo thứ tự các phần tử (cài đặt của Map).•TreeMap: Cây đỏ đen (cài đặt của Map).17Stack•Stack là một cấu trúc theo kiểu LIFO (Last In First Out), phần tử vào sau cùng sẽ được lấy ra trước.•Hai thao tác cơbản trên Stack•Chèn phần tử: Luôn chèn vào đỉnh Stack (push)•Lấy ra phần tử: Luôn lấy ra từ đỉnh Stack (pop)11Cài đặt Linked List public boolean isEmpty() { return (firstNode == null); } public void print() {ListNode node = firstNode;while (node != null){ ... 39Giao tiếp Set•Set kế thừa từ Collection, hỗ trợ các thao tác xử lý trên collection kiểu tập hợp (Một tập hợp yêu cầu các phần tử phải không được trùng lặp).•Set không có thêm phương thức riêng ngoài các phương thức kế thừa từ Collection.48Mô tả các cài đặt•ArrayList: Mảng động, nếu các phần tử thêm vào vượt quá kích cỡ mảng, mảng sẽ tự động tăng kích cỡ.•LinkedList: Danh sách liên kết 2 chiều. Hỗ trợ thao tác trên đầu và cuối danh sách. •HashSet: Bảng băm.•LinkedHashSet: Bảng băm kết hợp với linked list nhằm đảm bảo thứ tự các phần tử.•TreeSet: Cây đỏ đen (red...
... ra. Chương trình dừng lại ngay lập tức, toàn bộ phần mã phía sau sẽ không được thực thi.•Java hỗ trợ cách thức để xử lý ngoại lệ (exception handling) tuỳ theo nhu cầu của chương trình. 30Ném ... nên sử dụng ngoại lệ thay cho các luồng điều khiển trong chương trình. • Ví dụ: Kiểm tra delta trong chương trình giải phương trình bậc 2.•Nên thiết kế và sử dụng ngoại lệ một cách thống ... ngoại lệ• Trong Java, việc xử lý lỗi có thể được cài đặt trong một nhánh độc lậpvới nhánh chính của chương trình. • Lỗi được coi như những trường hợp ngoại lệ (exceptional conditions). Chúng...
... các thực thể• Dễ phát triển, mở rộng chương trình Object AObject CObject BObject D3Các phương pháp lập trình •Step-by-Step Programming• Lậptrình từng bước•Machine Language, Assembly ... diện này trong lớp Sparrow.5Các phương pháp lập trình •Object-Oriented Programming•Chương trình bao gồm các đối tượng. Các đối tượng tương tác với nhau thông qua các phương thức của chúng•Dễ ... (implements) một hay nhiều giao tiếp nhưng chỉ có thể thừa kế (extends) từ một lớp.1 Lập trình Java cơ bản Cao Đức Thông - Trần Minh Tuấncdthong@ifi.edu.vn, tmtuan@ifi.edu.vn 23Ví dụ về kế...
... Java được sử dụng để phát triển nhiều loại ứng dụng khác nhau: cơ sở dữ liệu, mạng, Internet, viễn thông 1 Lập trình Java cơ bản Cao Đức Thông - Trần Minh Tuấncdthong@ifi.edu.vn, tmtuan@ifi.edu.vn ... dụng Java•Application: Ứng dụng độc lập •Applet: Ứng dụng chạy trên Web•Thư viện lớp Java•Bộ JDK bao gồm rất nhiều lớp chuẩn đã được xây dựng sẵn.• Lập trình viên thường sử dụng các lớp ... sử phát triển của Java•Ra đời tại Sun Microsystems bởi James Gosling•1991: Version đầu tiên với tên “Oak”• 1995: Tên chính thức là Java•Mục đích của Java•Dùng để phát triển ứng dụng cho...
... Ket thuc ham main} // Ket thuc lop TimeTestLớp TimeTest3Các phương pháp lập trình •Step-by-Step Programming• Lập trình từng bước•Machine Language, Assembly Language1101011100111101101000011101110101101110110010101000100100101011 ... trùng với tên lớp•Cấu tử không có kiểu trả về•Có thể có nhiều cấu tử (overloading)•Mỗi phương thức phải có một phạm vi nhất định35Java vs C++1. Một chương trình Java chạy chậm hơn so với ... >= 0 && s < 60 ) ? s : 0 ); } Lớp Time2Bài 2. OOP trong Java•Các phương pháp lập trình •Giới thiệu về OOP•Kế thừa (Inheritance)•Đa hình (Polymorphism)•Giao tiếp (Interface)•Lớp...
... ra. Chương trình dừng lại ngay lập tức, toàn bộ phần mã phía sau sẽ không được thực thi.•Java hỗ trợ cách thức để xử lý ngoại lệ (exception handling) tuỳ theo nhu cầu của chương trình. 21Hai ... tập4Xử lý lỗi và ngoại lệ⇒Mã lệnh và mã xử lý lỗi nằm xen kẽ khiến lập trình viên khó theo dõi được thuật toán chính của chương trình. ⇒Khi một lỗi xảy ra tại hàm A, tất cả các lời gọi hàm lồng ... ArithmeticException. Sau đó chương trình kết thúc.18Một số lớp ngoại lệ•Lớp Throwable•Có một biến String để lưu thông tin chi tiết về ngoại lệ đã xảy ra•Một số phương thức cơ bản •Throwable(String...
... c.getCircum());• }•}2Bài 1. Tổng quan lậptrình Java•Giới thiệu ngôn ngữ Java•Kiến trúc của Java•Nội dung một chương trình Java cơ bản •Các kiểu dữ liệu cơbản & toán tử•Các cấu trúc ... chương trình Java cơ bản •Biên dịch chương trình • Vào chế độ Console của Windows•Gõ câu lệnh javac Hello.java•Nếu không có thông báo lỗi, file Hello.class sẽ được tạo ra•Thực thi chương trình •Gõ ... dấu gạch dưới• Không trùng với các từ khoá•Ví dụ: a_1234_d, 1awas, _asdc, a sas, $erd, %ats…•Chú ý: Java phân biệt chữ hoa chữ thường11Một chương trình Java cơ bản •Thay đổi cách hiển thịpublic...
... nguyên thuỷ đều phải tạo ra bằng từ khoá new.7. Java không có tiền xử lý (preprocessor)1 Lập trình Java cơ bản Cao Đức Thông - Trần Minh Tuấncdthong@ifi.edu.vn, tmtuan@ifi.edu.vn 37Bài tập1. ... sinhIn ra thông tin về các thí sinh có tổng điểm lớn hơn 153Các phương pháp lập trình •Step-by-Step Programming• Lập trình từng bước•Machine Language, Assembly Language1101011100111101101000011101110101101110110010101000100100101011 ... cao, công thức Heron, độ dài 2 cạnh và góc.4Các phương pháp lập trình •Procedural Programming•Thiết kế top-down. Chương trình được chia thành các hàm, thủ tục.•Pascal, C•Hạn chế:...
... phù hợp với từng control, từng thông điệp. Chạy tập tin MPEG trong VB6 Chúng ta sẽ xây dựng một Class để điều khiển các tập tin định dạng theo MPEG. Bạncó thể thao các tác vụ cơbản và các ... để đưa nó sang bên phải. Nhưng với API bạncó thể dễ dàng làm được điều này. 1.Hãy tạo một Form mới, Sau đó Click vào Tools > Menu Editor để thêm vào chương trình 3 menu chính còn các menu ... nhưng kết quả thật tuyệt vời phải không Vô hiệu DeskTop Hôm nay chúng tôi tiếp tục giới thiệu với các bạn một ví dụ về cách sử dụng hàm API trong VB.Bạn có muốn làm cho Desktop bị ''tê...