Diferència entre revisions de la pàgina «M3 - Programació estructurada / Continguts UF1: Estructura alternativa»

De wikiserver
Dreceres ràpides: navegació, cerca
Línia 17: Línia 17:
 
Exemple:
 
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.");
 
  }
 
}
 
 
<source lang="java">
 
<source lang="java">
 
import java.util.Scanner;
 
import java.util.Scanner;
Línia 63: Línia 41:
 
* Si entre els parèntesis es posa una expressió que no avalua un resultat de tipus booleà, hi haurà un error de compilació.
 
* 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'''
+
'''Condicionals else i else if'''
  
 
<source lang="java">
 
<source lang="java">
Línia 115: Línia 93:
 
</source>
 
</source>
  
*Es poden posar tants elif com necessitem
+
*Es poden posar tants else if com necessitem
  
 
<!--
 
<!--

Revisió del 11:17, 5 oct 2020

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:

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 else if

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 else if com necessitem