Вы находитесь на странице: 1из 17

Programação de Computadores I

Comandos de Seleção
- Introdução

Prof. Alcione Ferreira 1


Programação de Computares I
Definição

Os comandos de Seleção são usados para


determinar o fluxo de dados do programa,
dando a orientação e selecionando ações
conforme resultados e opções selecionadas
pelo usuário.
São ele:
- if – else – if
- switch

Prof. Alcione Ferreira 2


Programação de Computares I
UEMS - Dourados
Linguagem Técnica de Programação

Comandos de Seleção
- if-else-if

Prof. Alcione Ferreira 3


Programação de Computares I
Comando: if

O comando if é usada quando é necessário testar em um


programa duas ou mais condições. Isto permite ao
programador o desenvolvimento de programas
complexos. A forma geral do comando if é:

if ( <condição/expressão> )
{
ações;
}

Prof. Alcione Ferreira 4


Programação de Computares I
/* Arquivo: comando_if.c*/

#include <stdio.h>

int main( int argc, char **argv)


{
int opcao;
int valor;
printf ("\n Converter: \n ");
printf (" 1: decimal para hexadecimal\n ");
printf (" 2: hexadecimal para decimal\n ");
printf (" \nInforme sua opção: ");
scanf ( "%d" , &opcao);
if (opcao == 1)
{
printf (" \nInforme o valor em decimal: ");
scanf ( "%d" , &valor);
printf (" %d em hexadecimal e: %x ", valor, valor);
}
if (opcao == 2)
{
printf (" \nInforme o valor em hexadecimal: ");
scanf ( "%x" , &valor);
printf (" %x em decimal e: %d ", valor, valor);
}

return (0);
}
Prof. Alcione Ferreira 5
Programação de Computares I
Comando: if-else

É possível associar um else com qualquer if. Com este


comando podemos acrescentar ao teste condicional
várias opções de escolha. Se a expressão condicional
associada a if é verdadeira, a instrução ou bloco de
instruções associada será executada. Se for falsa, então a
instrução ou bloco de instruções do else será executada.
O programa seguinte demonstra este princípio
fundamental:

Prof. Alcione Ferreira 6


Programação de Computares I
/*Arquivo: comando_if-else.c */

#include <stdio.h>

int main( int argc, char **argv)


{
int i;
printf ("\n Informe um número: ");
scanf ( "%d" , &i);
if (i < 0)
{
printf (" O número é negativo \n");
}
else
{
printf (" O número é positivo ou nulo \n");
}

return (0);
}
Prof. Alcione Ferreira 7
Programação de Computares I
Comando: if-else-if

Uma construção comum em programação é o encadeamento if-else-


if. O seguinte exemplo ilustra esta construção:
if ( <condição/expressão> )
{
<ações>;
}
else if ( <condição/expressão> )
{
<ações>;
}
Prof. Alcione Ferreira 8
else Programação de Computares I
/* Arquivo: comando_if-else-if.c*/

#include <stdio.h>

int main( int argc, char **argv)


{
int opcao;
int valor;
printf ("\n Converter: \n ");
printf (" 1: decimal para hexadecimal\n ");
printf (" 2: hexadecimal para decimal\n ");
printf (" \nInforme sua opção: ");
scanf ( "%d" , &opcao);
if (opcao == 1)
{
printf (" \nInforme o valor em decimal: ");
scanf ( "%d" , &valor);
printf (" %d em hexadecimal e: %x ", valor, valor);
}
else if (opcao == 2)
{
printf (" \nInforme o valor em hexadecimal: ");
scanf ( "%x" , &valor);
printf (" %x em decimal e: %d ", valor, valor);
}
else
{
printf (" \nOpção inválida \n");
}

return (0);
} Prof. Alcione Ferreira 9
Programação de Computares I
ifs Aninhados
Um dos muitos aspectos que causam confusão
no comando if, em qualquer linguagem de
programação, são os ifs aninhados. Um if
aninhado é um comando if que é objeto de um
if ou um else. Os ifs aninhados são incômodos
por poderem dificultar saber qual else está
associado a qual if.

Prof. Alcione Ferreira 10


Programação de Computares I
Exemplo
if (x)

if (y) printf (“1”);

else printf(“2”);

Prof. Alcione Ferreira 11


Programação de Computares I
Exemplo
if (x)
{
if (y)
{
printf (“1”);
}
}
else
{
printf(“2”);
}
Prof. Alcione Ferreira 12
Programação de Computares I
UEMS - Dourados
Linguagem Técnica de Programação

Comandos de Seleção
- Switch

Prof. Alcione Ferreira 13


Programação de Computares I
Comando: switch
Ainda que o encadeamento if-else-if possa realizar testes de múltipla
escolha, ele quase nunca é elegante. O código pode ser muito difícil
de acompanhar e pode confundir até mesmo o seu autor. Por esse
motivo, a linguagem C tem internamente um comando de decisão de
múltipla escolha chamado de switch. No comando switch, a
variável é sucessivamente testada contra uma lista de inteiros ou
constantes caractere. Quando uma associação é encontrada, o
conjunto de comandos associado com a constante é executado. As
constantes não precisam sequer estar em ordem. A forma geral do
comando switch é:

Prof. Alcione Ferreira 14


Programação de Computares I
Comando: switch
switch (<variável>)
{
case constante1:
{
<ações>;
break;
}
case constante2:
{
<ações>;
break;
}
Default:
{
<ações>;
break;
}
}
Prof. Alcione Ferreira 15
Programação de Computares I
/*Arquivo: comando_switch.c */

#include <stdio.h>

int main( int argc, char **argv)


{
int opcao;
int valor;
printf ("\n Converter: \n ");
printf (" 1: decimal para hexadecimal\n ");
printf (" 2: hexadecimal para decimal\n ");
printf (" \nInforme sua opção: ");
scanf ( "%d" , &opcao);
switch (opcao)
{
case 1:
{
printf (" \nInforme o valor em decimal: ");
scanf ( "%d" , &valor);
printf (" %d em hexadecimal e: %x ", valor, valor);
break;
}
case 2:
{
printf (" \nInforme o valor em hexadecimal: ");
scanf ( "%x" , &valor);
printf (" %x em decimal e: %d ", valor, valor);
break;
}
default:
{
printf (" \nOpção inválida \n");
break;
}
}

return (0);
} Prof. Alcione Ferreira 16
Programação de Computares I
Exercícios

http://moodle.alcionesytes.net/moodle/

Prof. Alcione Ferreira 17


Programação de Computares I

Вам также может понравиться