Siga-nos em...
Follow us on Twitter Follow us on Facebook Watch us on YouTube
Registro

Alpha Servers
Resultados 1 a 10 de 11

Visão do Encadeamento

  1. #1



    Avatar de João Neto
    Data de Ingresso
    Nov 2010
    Localização
    Barzinho de Lorencia
    Idade
    30
    Posts
    1.085
    Agradecido
    50
    Agradeceu
    30
    Peso da Avaliação
    25

    Post [Explicação]+[Código C] Calculadora Basica em Case

    Olá galera IMP,
    Hoje tava olhando um código antigo que fiz no inicio da materia em C da faculdade e resolvi postar para vocês entenderem um pouco sobre o Switch e Case...

    Teoria Basica:

    Switch é uma forma de estrutura seletiva, dentro dos switch há o case (que significa caso). Ou seja, é quase que um if com várias possibilidades, mas com algumas diferenças importantes.

    1ª Diferença: Os cases não aceitam operadores lógicos. Portanto, não é possível fazer uma comparação. Isso limita o case à apenas valores definidos.

    2ª Diferença: O switch executa seu bloco em cascata. Ou seja, se a variável indicar para o primeiro case e dentro do switch tiver 5 cases, o switch executará todos os outros 4 cases a não ser que utilizemos o comando para sair do switch. (No caso referimos ao Break, que é para dar um stop naquele bloco).

    Agora vamos ver como proceder com o switch / case.

    Primeiro o comando SWITCH e entre parênteses a váriavel na qual está guardado o valor que será avaliado pelo case. Então, abre-se o bloco de dados. Dentro do bloco de dados colocamos o comando CASE e logo após um valor terminando a linha com dois pontos (.
    Então, é estruturado os comando que serão executados pelo case.

    Estruturadamente, seria mais ou menos isso:

    SWITCH (variável){
    CASE valor1:
    Dados a serem executados
    BREAK;
    CASE valor2:
    Dados a serem executados
    BREAK;
    }

    Exemplo:
    Neste programa vamos fazer uma simples calculadora que aceita até 2 valores para o calculo de números inteiros.

    Código:
    #include <stdio.h>          
    #include <stdlib.h> 
    
    int main(){  /*Inicializando*/
        
       int op;   /*Declarando variaveis*/
       int t=0,x=0,y=0; /*Declarando variaveis*/
       
       printf("Digite uma opcao:\n 1(Adicao) \n 2(Subtracao) \n 3(Multiplicacao) \n 4(Divisao) \n");   /*Lendo Opção*/
       scanf("%d" ,&op); /*Dando acesso dos valores lidos para a variável*/
       switch (op){ /*Iniciando comando switch*/
              
              case 1: /*Primeira Case do programa (Adição)*/
              printf("Digite primeiro valor para a adicao: \n"); 
              scanf("%d" ,&x);
              
              printf("Digite o outro valor para a adicao: \n");
              scanf("%d" ,&y);
              
              t=x+y;
              printf("Resultado da adicao e: %d \n\n" ,t);
              system ("Pause");
              break; /*parada do caso*/
                    
                    case 2: /*Segunda Case do programa (Subtração)*/ 
                    printf("Digite primeiro valor para subtracao: \n");     
                    scanf("%d" ,&x);
                    
                    printf("Digite o outro valor para a subtracao: \n");
                    scanf("%d" ,&y);
                    
                    t=x-y;
                    printf("Resultado da subtracao e: %d \n\n" ,t);
                    system ("Pause");
                    break; /*parada do caso*/
                          
                          case 3: /*Terceira Case do programa (Multiplicação)*/
                          printf("Digite primeiro valor para multiplicacao: \n");     
                          scanf("%d" ,&x);
                          printf("Digite o outro valor para a multiplicacao: \n");
                          scanf("%d" ,&y);
                          t=x*y;
                          printf("Resultado da multiplicacao e: %d \n\n" ,t);
                          system ("Pause");
                          break; /*parada do caso*/
                                
                                case 4: /*Quarta Case do programa (Divisão)*/
                                while(x==0)
                                {
                                printf("Digite primeiro valor para divisao: \n");     
                                scanf("%d" ,&x);
                                }
                                
                                while(y==0)
                                {
                                printf("Digite o outro valor para a divisao: \n");
                                scanf("%d" ,&y);
                                }
                               
                                if(y>x)
                                {
                                t=y/x;
                                }
                                else
                                {      
                                t=x/y;
                                } 
                               
                                printf("Resultado da divisao e: %d \n\n" ,t);
                                system ("Pause");
                                break; /*parada do caso*/
                                      
                                      default: /*Case de erro se digitar uma opção fora das oferecidas*/
                                      printf("Opcao Invalida! \n");  
                                      system ("Pause");
                        
                        return 0;     /*Fim*/
                        } /*fecha switch*/
              } /*fecha todas as chaves*/
    
    Exercício em linguagem C realizado por [Somente usuários registrados podem vem os links. ](Dorcílio).


    Espero que gostem...

    Atenciosamente,
    João Neto.
    Última edição por João Neto; 27-08-2012 às 11:18 PM.
    Hidden Content
    Um verdadeiro guerreiro sabe que ao perder uma batalha
    está melhorando sua arte de manejar a espada.
    Saberá lutar com mais habilidade
    na próxima vez.

 

 

Informações de Tópico

Usuários Navegando neste Tópico

Há 1 usuários navegando neste tópico. (0 registrados e 1 visitantes)

Tópicos Similares

  1. |Dúvida| Como retirar o Case sensitive no /post
    Por EllyssonMiike no fórum Dúvidas
    Respostas: 3
    Último Post: 15-03-2014, 12:34 AM
  2. |Tutorial| [Explicação]+[Código Java] Switch Case e Default
    Por João Neto no fórum Java
    Respostas: 1
    Último Post: 22-02-2013, 05:14 PM
  3. |Tutorial| [Explicação]+[Código C] PA e PG Utilizando Funções
    Por João Neto no fórum C
    Respostas: 5
    Último Post: 12-10-2012, 03:05 PM
  4. Respostas: 5
    Último Post: 21-04-2012, 02:12 AM
  5. |Tutorial| [Iniciante]Calculadora básica
    Por FusioN no fórum Visual Basic
    Respostas: 0
    Último Post: 18-12-2011, 05:07 PM

Marcadores

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •