M3 - Programació estructurada / Continguts UF1: Estructura alternativa
De wikiserver
La revisió el 10:16, 5 oct 2020 per Rsort (Discussió | contribucions)
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