Els tipus derivats en Fortran són una característica poderosa que permet als programadors definir nous tipus de dades que combinen diversos elements de diferents tipus. Això és especialment útil per organitzar i gestionar dades complexes de manera més estructurada i llegible.

Continguts

Introducció als Tipus Derivats

Els tipus derivats permeten agrupar diferents tipus de dades sota un mateix nom, creant estructures similars a les "estructures" en altres llenguatges de programació com C o C++. Això facilita la gestió de dades complexes i millora la llegibilitat del codi.

Definició de Tipus Derivats

Per definir un tipus derivat en Fortran, utilitzem la paraula clau type. Aquí teniu la sintaxi bàsica:

type :: nom_tipus
    component1 :: tipus1
    component2 :: tipus2
    ! Afegiu més components segons sigui necessari
end type nom_tipus

Exemple

type :: Persona
    character(len=50) :: nom
    integer :: edat
    real :: alçada
end type Persona

En aquest exemple, hem definit un tipus derivat anomenat Persona que conté tres components: nom, edat i alçada.

Declaració de Variables de Tipus Derivat

Un cop definit el tipus derivat, podem declarar variables d'aquest tipus de la següent manera:

type(Persona) :: individu1, individu2

Exemple

type(Persona) :: estudiant

Accés als Components

Per accedir als components d'una variable de tipus derivat, utilitzem el punt (.) com a operador de selecció de components.

Exemple

estudiant%nom = 'Joan'
estudiant%edat = 21
estudiant%alçada = 1.75

Exemple Pràctic

A continuació, es mostra un exemple complet que defineix un tipus derivat, declara una variable d'aquest tipus i accedeix als seus components.

program tipus_derivats_exemple
    implicit none

    ! Definició del tipus derivat
    type :: Persona
        character(len=50) :: nom
        integer :: edat
        real :: alçada
    end type Persona

    ! Declaració de la variable
    type(Persona) :: estudiant

    ! Assignació de valors als components
    estudiant%nom = 'Joan'
    estudiant%edat = 21
    estudiant%alçada = 1.75

    ! Impressió dels valors
    print *, 'Nom: ', estudiant%nom
    print *, 'Edat: ', estudiant%edat
    print *, 'Alçada: ', estudiant%alçada

end program tipus_derivats_exemple

Exercicis Pràctics

Exercici 1

Defineix un tipus derivat anomenat Cotxe que contingui els següents components:

  • marca (cadena de caràcters de longitud 30)
  • model (cadena de caràcters de longitud 30)
  • any (enter)
  • preu (real)

Declara una variable d'aquest tipus i assigna-li valors. Imprimeix els valors dels components.

Solució

program cotxe_exemple
    implicit none

    type :: Cotxe
        character(len=30) :: marca
        character(len=30) :: model
        integer :: any
        real :: preu
    end type Cotxe

    type(Cotxe) :: cotxe1

    cotxe1%marca = 'Toyota'
    cotxe1%model = 'Corolla'
    cotxe1%any = 2020
    cotxe1%preu = 20000.0

    print *, 'Marca: ', cotxe1%marca
    print *, 'Model: ', cotxe1%model
    print *, 'Any: ', cotxe1%any
    print *, 'Preu: ', cotxe1%preu

end program cotxe_exemple

Conclusió

Els tipus derivats en Fortran són una eina essencial per gestionar dades complexes de manera estructurada i llegible. Hem après a definir tipus derivats, declarar variables d'aquests tipus i accedir als seus components. Aquests conceptes són fonamentals per escriure codi més organitzat i mantenible. En el proper tema, explorarem els punters en Fortran, una altra característica avançada que ens permetrà gestionar la memòria de manera més eficient.

© Copyright 2024. Tots els drets reservats