Mudanças entre as edições de "Pensamento Computacional - Switch no Java - Parte 1"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 122: Linha 122:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
==Exercício=
+
==Exercício==
  
 
Substituir as vogais acima pelos respectivos números inteiros que constam na tabela ASCII.
 
Substituir as vogais acima pelos respectivos números inteiros que constam na tabela ASCII.

Edição das 19h44min de 30 de outubro de 2023

Comando switch

Sintaxe e Semântica

O comando switch permite controlar o fluxo de um programa de forma condicional através de cláusulas. O comando testa uma expressão que deve resultar em um número inteiro. Uma sequência de cláusulas case permite executar uma sequência de instruções conforme o valor da expressão. Note que esta sequência de instruções pode ser interrompida por um break.

import java.util.Scanner;

public class ComandoSwitch {
    public static void main(String[] args) {     
        Scanner teclado = new Scanner(System.in);
 
        int x = 0, opcao;
        System.out.println("Entre com uma opção (número inteiro)");
        opcao = teclado.nextInt();

        switch(opcao) {
        case 1:
                System.out.println("Opção 1");
                break; /* o break força o encerramento da instrução*/
        case 2:
                System.out.println("Opção 2");
                x=x+1;  /* instrução demonstrativa apenas */               
                break;
        case 3:
                System.out.println("Opção 3"); /* note o efeito de não ter o break */
        case 4:
                System.out.println("Opção 4");
                break;
        case 5:
                System.out.println("Opção 5");
                break;
        default:
                System.out.println("Default");
                break;    /* a opção default é opcional */
        }
        
     }      
}

Exercício 1

Implementar Um programa java que apresenta um menu com as seguintes condições:

Tecle (1) para desenhar um retângulo cheio
Tecle (2) para desenhar um triângulo retângulo
Tecle qualquer outro número para sair.

Use o comando switch. Os desenhos podem ser realizados conforme o seu desejo.

Exercício 2

Implementar uma calculadora simples que permite entrar com 2 operandos e uma operação:

(1) Somar
(2) Subtrair
(3) Multiplicar
(4) Dividir
(5) Encerrar

Comando switch combinado com caracteres

Um comando switch() pode ser usado com valores inteiros. Notar que o tipo char na realidade é um número inteiro de tamanho pequeno (ver tabela ASCII). Entretanto, no Java pode-se no lugar de um número inteiro que representa uma letra ou símbolo, simplesmente usar o símbolo entre aspas SIMPLES. Veja o exemplo abaixo:

import java.util.Scanner;

public class ComandoSwitchUsoChar {
   public static void main(String[] args) {     
        Scanner teclado = new Scanner(System.in);
        char caracter;

        System.out.println("Entre com um caracter");
        caracter = teclado.next().charAt(0);

        switch(caracter) {
        case 'a':
        case 'e':
        case 'i':
        case 'o':
        case 'u':
                System.out.println("vogal");
                break; 
        default:
                System.out.println("outra coisa");
                break;    /* a opção default é opcional */
        }
        
     }          
}

Olhando na tabela ASCII observa-se qie o caracter 'a' é o número inteiro 65. Então o código acima também poderia ser colocado da forma:

import java.util.Scanner;

public class ComandoSwitchUsoChar {
   public static void main(String[] args) {     
        Scanner teclado = new Scanner(System.in);
        char caracter;

        System.out.println("Entre com um caracter");
        caracter = teclado.next().charAt(0);

        switch(caracter) {
        case  65:
        case 'e':
        case 'i':
        case 'o':
        case 'u':
                System.out.println("vogal");
                break; 
        default:
                System.out.println("outra coisa");
                break;    /* a opção default é opcional */
        }
        
     }          
}

Exercício

Substituir as vogais acima pelos respectivos números inteiros que constam na tabela ASCII.

Comando switch com strings

import java.util.Scanner;

public class SwitchComString {
   public static void main(String[] args) {     
        Scanner teclado = new Scanner(System.in);
        String palavra;

        System.out.println("Entre com uma string");
        palavra = teclado.nextLine();

        switch(palavra) {
        case "IFSC":       
        case "IFRS":
                System.out.println("É instituto federal");
                break; 
        default:
                System.out.println("outra coisa");
                break;    /* a opção default é opcional */
        }
        
     }
}