Les estructures de control són fonamentals en qualsevol llenguatge de programació, ja que permeten prendre decisions basades en condicions específiques. En aquest tema, aprendrem com utilitzar les sentències if en Fortran per controlar el flux del nostre programa.

Continguts

  1. Introducció a les Sentències If
  2. Sintaxi Bàsica de la Sentència If
  3. Sentència If-Else
  4. Sentència If-Else If
  5. Sentències If Anidades
  6. Exercicis Pràctics

  1. Introducció a les Sentències If

Les sentències if permeten executar blocs de codi només si es compleix una condició específica. Això és útil per prendre decisions dins del programa.

  1. Sintaxi Bàsica de la Sentència If

La sintaxi bàsica d'una sentència if en Fortran és la següent:

if (condició) then
    ! Bloc de codi a executar si la condició és certa
end if

Exemple:

program exemple_if
    implicit none
    integer :: x

    x = 10

    if (x > 5) then
        print *, "x és més gran que 5"
    end if
end program exemple_if

En aquest exemple, el missatge "x és més gran que 5" es mostrarà perquè la condició x > 5 és certa.

  1. Sentència If-Else

La sentència if-else permet executar un bloc de codi si la condició és certa i un altre bloc si la condició és falsa.

Sintaxi:

if (condició) then
    ! Bloc de codi a executar si la condició és certa
else
    ! Bloc de codi a executar si la condició és falsa
end if

Exemple:

program exemple_if_else
    implicit none
    integer :: x

    x = 3

    if (x > 5) then
        print *, "x és més gran que 5"
    else
        print *, "x no és més gran que 5"
    end if
end program exemple_if_else

En aquest cas, el missatge "x no és més gran que 5" es mostrarà perquè la condició x > 5 és falsa.

  1. Sentència If-Else If

La sentència if-else if permet comprovar múltiples condicions de manera seqüencial.

Sintaxi:

if (condició1) then
    ! Bloc de codi a executar si la condició1 és certa
else if (condició2) then
    ! Bloc de codi a executar si la condició2 és certa
else
    ! Bloc de codi a executar si cap de les condicions anteriors és certa
end if

Exemple:

program exemple_if_else_if
    implicit none
    integer :: x

    x = 7

    if (x > 10) then
        print *, "x és més gran que 10"
    else if (x > 5) then
        print *, "x és més gran que 5 però no més gran que 10"
    else
        print *, "x no és més gran que 5"
    end if
end program exemple_if_else_if

En aquest exemple, el missatge "x és més gran que 5 però no més gran que 10" es mostrarà perquè la condició x > 5 és certa.

  1. Sentències If Anidades

Les sentències if es poden anidar dins d'altres sentències if per comprovar condicions més complexes.

Exemple:

program exemple_if_anidat
    implicit none
    integer :: x, y

    x = 8
    y = 3

    if (x > 5) then
        if (y < 5) then
            print *, "x és més gran que 5 i y és menor que 5"
        else
            print *, "x és més gran que 5 però y no és menor que 5"
        end if
    else
        print *, "x no és més gran que 5"
    end if
end program exemple_if_anidat

En aquest cas, el missatge "x és més gran que 5 i y és menor que 5" es mostrarà perquè ambdues condicions són certes.

  1. Exercicis Pràctics

Exercici 1:

Escriu un programa que llegeixi un nombre enter i imprimeixi si és positiu, negatiu o zero.

Solució:

program exercici1
    implicit none
    integer :: num

    print *, "Introdueix un nombre enter:"
    read *, num

    if (num > 0) then
        print *, "El nombre és positiu."
    else if (num < 0) then
        print *, "El nombre és negatiu."
    else
        print *, "El nombre és zero."
    end if
end program exercici1

Exercici 2:

Escriu un programa que llegeixi tres nombres enters i imprimeixi el més gran.

Solució:

program exercici2
    implicit none
    integer :: a, b, c

    print *, "Introdueix tres nombres enters:"
    read *, a, b, c

    if (a >= b .and. a >= c) then
        print *, "El nombre més gran és: ", a
    else if (b >= a .and. b >= c) then
        print *, "El nombre més gran és: ", b
    else
        print *, "El nombre més gran és: ", c
    end if
end program exercici2

Conclusió

Les sentències if són una eina poderosa per controlar el flux del programa basat en condicions. Hem après la sintaxi bàsica, així com les variants if-else, if-else if i les sentències if anidades. Amb aquests coneixements, podem començar a escriure programes més dinàmics i adaptatius. En el proper tema, explorarem els bucles, una altra estructura de control essencial en la programació.

© Copyright 2024. Tots els drets reservats