25.06.2013 Views

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

394 Puntatori<br />

PROGRAM main<br />

! Scopo: testare il modulo linked_list<br />

USE linked_list<br />

IMPLICIT NONE<br />

TYPE(list) :: container<br />

TYPE(object) :: obj1, obj2, obj3, obj4<br />

LOGICAL :: delete_ok<br />

obj1 = object(15) ; obj2 = object(25) ! costruttore<br />

obj3 = object(35) ; obj4 = object(45) ! costruttore<br />

container = new()<br />

PRINT*, "Stato della lista. Lista vuota? ",is_empty(container)<br />

CALL insert(container,obj4) ! inserisce un oggetto<br />

CALL insert(container,obj2) ! inserisce un oggetto<br />

CALL insert(container,obj1) ! inserisce un oggetto<br />

CALL print_list(container)<br />

CALL delete(container,obj2,delete_ok)<br />

PRINT *, "Oggetto: ",obj2," Oggetto rimosso? ",delete_ok<br />

CALL print_list(container)<br />

PRINT*, "Stato della lista. Lista vuota? ",is_empty(container)<br />

CALL insert(container,obj3) ! insert object<br />

CALL print_list(container)<br />

CALL delete(container, obj1,delete_ok)<br />

PRINT*, "Oggetto: ",obj1," Oggetto rimosso? ",delete_ok<br />

CALL delete(container, obj4,delete_ok)<br />

PRINT*, "Oggetto: ",obj4," Oggetto rimosso? ",delete_ok<br />

CALL print_list(container)<br />

PRINT*, "Stato della lista. Lista vuota? ",is_empty(container)<br />

CALL delete(container,obj3,delete_ok)<br />

PRINT*, "Oggetto: ",obj3," Oggetto rimosso? ",delete_ok<br />

PRINT*, "Stato della lista. Lista vuota? ",is_empty(container)<br />

STOP<br />

END PROGRAM main<br />

Per completezza si riporta anche l’output del programma:<br />

C:\MUPROG>main<br />

Stato della lista. Lista vuota? T<br />

Valore dell’oggetto:<br />

1 15

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!