-
con trỏ và cấu trúc động trong pascal dup tui voi ba con oi !
thưa bà con làng xóm ở ddth hiện tại tui đang tìm hiểu đến phần con trỏ và cấu trúc động trong pascal, lúc bắt đầu mọi việc tỏ ra có vẻ suôn sẻ nhưng khi tôi đọc mấy dòng sau thì đầu óc tôi tự nhiên khép lại chả hiểu gì nữa vậy ai hiểu những dòng này thì giải thích cho tôi hiểu với
Mấy dòng đó như sau
tui trích trong giáo trình pascal study)
2. Xen vào:
Bây giờ ta xét thêm một thao tác nữa với danh sách được ghép nối : xen một phần tử vào một chỗ mong muốn. Ví dụ xen vào trước phần tử có tên là Hai. Giả thiết rằng ta vẫn dùng các mô tả ở trên và Last là con trỏ trỏ vào phần tử cuối cùng như đã trình bày.
(* To phần tử mới để xen vào *)
New(Q);
Q^.Ten := ' Ba ' ;
Q^.Tuoi := 3 ;
(* Tìm vị trí cần xen *) ;
Ptr := Last ;
While(Ptr <> Nil)and(Ptr.Ten <> ' Hai ') Do
Ptr := Ptr^.Next ;
(* Ghép nối vào chổ cần thiết *) ;
Q.Next := Ptr^.Next ;
Ptr^.Next := Q ;
3. Tháo đi:
Trái ngược với thao tác xen vào là một phần tử ra khỏi danh sách. Ví dụ tháo đi phần tử có tên là Ba. Khi này ta phải dùng Q ngay trong lúc tìm kiếm. Khi tìm xong rồi ta phải tháo trong hai trường hợp khác nhau:
(* Tìm kiếm phần tử cần tháo *)
P := Last ;
While(P <> Nil)and(P^.Ten <> ' Ba ') Do
Begin
Q := P ;
P := P^.Next ;
End ;
(* Tháo đi *)
If P = Last Then Last := P^.Next ;
Else Q^.Next := P^.Next ;
4. Chương trình con dùng biến con trỏ :
Biến con trỏ cũng có thể được đưa vào như là tham số của chương trình con. Ví dụ ta có thể lập mốt chương trình con Xen như sau :
Procedure Xen(Var Q : PointerN);
Begin
...
End ;
Nhu ta đã biết, giá trị kết quả của một Function là kiểu vô hướng. Tuy nhiên ta cũng có thể làm chương trình con kiểu Function có kết quả được mô tả kiểu con trỏ. Ví dụ chương trình con sau được dùng để đảo các con trỏ của một danh sách được ghép nối. Tham số của nó là con trỏ trỏ vào phần tử nằm cuối danh sách, tức là trỏ vào phần tử cuối cùng.
Function Dao(Cuoi : Pointern): PointerN ;
Var
P1, P2 : PointerN ;
Begin
P1 := Cuoi ;
Cuoi := Nil ;
Repeat
P2 := P1^.Next ;
P1^.Next := Cuoi ;
Cuoi := P1 ;
P1 := P2 ;
Until P1 = Nil ;
Dao := Cuoi ;
End ;
thank nhiều !
Quyền viết bài
- Bạn Không thể gửi Chủ đề mới
- Bạn Không thể Gửi trả lời
- Bạn Không thể Gửi file đính kèm
- Bạn Không thể Sửa bài viết của mình
-
Nội quy - Quy định
Bạn đang tìm kiếm giải pháp vận chuyển và nâng hạ hàng hoá máy móc nặng cho dự án hay công việc của mình tại khu vực Mỹ Phước - Bình Dương? Chúng tôi tự hào giới thiệu dịch vụ cho thuê xe cẩu tại Mỹ...
Dịch vụ cho thuê xe cẩu tại Mỹ Phước từ 3 tấn 120 tấn