M3 - Programació estructurada / Continguts UF1: Estructura alternativa

De wikiserver
Dreceres ràpides: navegació, cerca

Condicional if

  • Permet decidir si en funció d’una condició cal o no executar una o un conjunt d’instruccions.
instruccions del programa
  if (expressió booleana) {
        Instruccions per executar si l’expressió avalua a true (cert)
  }
  resta d’instruccions del programa
  • La condició te dues respostes possibles: Certa o Falsa. Si és certa s’executarà el procediment i sinó no
  • S’executarà i la execució continuarà amb les sentencies que hi hagi a continuació del bloc if.

Exemple:



public class Descompte {

 public static void main(String[] args) {
   //Es fa un descompte del 8%.
   final double DESCOMPTE = 0.08;
   //Es fa descompte per compres d’un mínim de 100 euros.
   final float COMPRA_MIN = 100;
   Scanner lector = new Scanner(System.in);
   double preu, descompteFet;
   System.out.print("Quin és el preu del producte, en euros? ");
   preu = lector.nextFloat();
   lector.nextLine();
   if (preu >= COMPRA_MIN) {
      descompteFet = preu * DESCOMPTE;
      preu = preu - descompteFet;
   }
   System.out.println("El preu final per pagar és de " + preu + " euros.");
 }

}

import java.util.Scanner;

public class MajorEdat {

  public static void main(String[] args) {
    //Decidir si una persona es major de edat.
    final int MAJOREDAT = 18;
    Scanner lector = new Scanner(System.in);
    System.out.print("Quina edat tens?");
    edat = lector.nextInt();
    if edat >= 18{
      System.out.println("Ets major d'edat");

    }
    if edat < 18{
      System.out.println("Ets menor d'edat");
    }
  }
}
  • Si entre els parèntesis es posa una expressió que no avalua un resultat de tipus booleà, hi haurà un error de compilació.

Condicionals else i elif

import java.util.Scanner;

public class MajorEdat {

  public static void main(String[] args) {
    //Decidir si una persona es major de edat.
    final int MAJOREDAT = 18;
    Scanner lector = new Scanner(System.in);
    System.out.print("Quina edat tens?");
    edat = lector.nextInt();
    if edat >= 18{                                // S'executa si la condició de l'if és falsa
      System.out.println("Ets major d'edat");  

    }
    else{
      System.out.println("Ets menor d'edat");
    }
  }
}
// Si necessitem comprovar un altre valor de l'edat podem utilitzar elif

import java.util.Scanner;

public class MajorEdat {

  public static void main(String[] args) {
    //Decidir si una persona es major de edat.
    final int MAJOREDAT = 18;
    Scanner lector = new Scanner(System.in);
    System.out.print("Quina edat tens?");
    edat = lector.nextInt();
    if edat >= 18{                                // S'executa si la condició de l'if és falsa
      System.out.println("Ets major d'edat");  

    }
    else if (edat >= 16) {                        // es comprova només si la condició de l'if és falsa
      System.out.println("Ets menor d'edat");
      
    }
    else{                                         // S'executa només si la condició de l'elif és falsa
      System.out.println("Ets menor d'edat");
    }
  }
}
  • Es poden posar tants elif com necessitem