Você está na página 1de 17

MC 102 – Algoritmos e programação de computadores

Profa. Wanessa Machado do Amaral

Aula 05 – Comandos Condicionais


Comandos condicionais
Um comando condicional é aquele que permite decidir se
um determinado bloco de comandos deve ou não ser
executado, a partir do resultado de uma expressão lógica.

O principal comando condicional da linguagem C é o if,


cuja sintaxe é:

if (expressão lógica)
comando;

ou

if (expressão lógica) {
comandos;
}
MC102 – Profa.Wanessa Machado do Amaral - 1s2010
Comando if

Se expressão for 1 (verdadeira), executa o bloco de


comandos.

Ex: Faça um programa para ler um inteiro e verificar se ele


é par ou ímpar

int a;
scanf("%d", &a);

if (a % 2) {

printf ("O valor eh impar.\n");

}
MC102 – Profa.Wanessa Machado do Amaral - 1s2010
if... else

O comando else é complementar ao if. Executa comandos


caso a expressão lógica de if for falsa. Repare que o
comando else não possui condição (expressão lógica).

Sintaxe:

if (expressão lógica)
{
bloco de comandos;
}
else
{
bloco de comandos;
}
MC102 – Profa.Wanessa Machado do Amaral - 1s2010
if... else

Exemplo: Verifique se um valor lido é ímpar ou par

int a;
scanf("%d", &a);

if (a % 2) {
printf ("O valor é impar.\n");
} else {
printf ("O valor é par.\n");
}

MC102 – Profa.Wanessa Machado do Amaral - 1s2010


else if

O comando “else if “ permite ao programador separar


vários blocos de comandos e condicionar a execução
desses blocos.

Sintaxe:

if (expressão lógica) {
bloco de comandos;
} else if (expressão lógica) {
bloco de comandos;
} else {
bloco de comandos;
}

MC102 – Profa.Wanessa Machado do Amaral - 1s2010


else if

Exemplo: Programa que lê um inteiro e verifica se o valor


é nulo, par ou ímpar.

int a, result;
scanf("%d", &a);

if (a == 0){
printf ("O valor eh nulo.\n");
} else if (a % 2) {
printf ("O valor eh impar.\n");
} else {
printf ("O valor eh par.\n");
}

MC102 – Profa.Wanessa Machado do Amaral - 1s2010


Condicionais aninhados

if (expressãoA) {
if (expressãoB){
comando 1;
}
} else {
comando 2;
}

Quando o comando 2 é executado??

MC102 – Profa.Wanessa Machado do Amaral - 1s2010


Condicionais aninhados

if (expressãoA) {

if (expressãoB) {
comando 1;
} else {
comando 2;
}

Quando o comando 2 é executado??

MC102 – Profa.Wanessa Machado do Amaral - 1s2010


Condicionais aninhados
Sempre que puder, simplifique:

if (expressãoA) {
if (expressãoB)
comando 1;
} else {
comando 2;
}
Pode ser reescrita como:

if ((expressãoA) && (expressãoB)){


comando 1;
} else {
comando 2;
}
MC102 – Profa.Wanessa Machado do Amaral - 1s2010
Exemplo
Programa que lê 3 inteiros e verifica qual é o maior deles.
int a, b, c;
scanf("%d %d %d", &a, &b, &c);
if (a > b ){
if (a > c){
printf ("O maior valor eh: %d \n", a);
} else {
printf ("O maior valor eh: %d \n", c);
}
} else {
if (b > c){
printf ("O maior valor eh: %d \n", b);
} else {
printf ("O maior valor eh: %d \n", c);
}
}
MC102 – Profa.Wanessa Machado do Amaral - 1s2010
O comando switch

O comando switch é próprio para se testar uma variável


em relação a diversos valores pré-estabelecidos.

switch (variavel){
case 1:
comandos;
break;
case 2:
comandos;
break;
deault:
comandos;
}

MC102 – Profa.Wanessa Machado do Amaral - 1s2010


O comando switch

Os comandos começam a ser executados a partir do ponto


onde o valor da variável corresponde ao valor antes dos
dois pontos (:).

Executa todos os comandos até que encontre um comando


break ou que chegue ao final do bloco de comandos do
switch.

Você pode utilizar, ao invés de um valor, o valor default. A


execução dos comandos inicia no comando default se
nenhum outro valor for correspondente ao valor da
variável.

MC102 – Profa.Wanessa Machado do Amaral - 1s2010


Exemplo

int ra = 0;
scanf(“%d”, &ra);
switch(ra) {
case 10129:
printf("Maria Candida Moreira\n");
break;
case 33860:
printf("Larissa Garcia Alfonsi\n");
break;
case 33967:
printf("Leonardo Kozlowiski Kenupp\n");
break;
}
MC102 – Profa.Wanessa Machado do Amaral - 1s2010
Exercício (if)

Escreva um algoritmo que simule efetuar "login",


verificando usuário e senha digitados. Para isso
primeiramente deve-se ler usuário e senha (ambos int).
Depois, o algoritmo deve exibir mensagem na tela, que vai
depender dos dados digitados. O usuário e senha
esperados são: 999 e 123, respectivamente. As quatro
saídas possíveis são:
● Usuario incorreto.

● Senha incorreta.

● Usuario e senha incorretos.

● Login efetuado com sucesso.

MC102 – Profa.Wanessa Machado do Amaral - 1s2010


Exercício

Implemente o algoritmo em linguagem C.

MC102 – Profa.Wanessa Machado do Amaral - 1s2010


Exercício (switch)

Escreva um programa em C que recebe um operador


aritmético e dois operandos e calcule a operação indicada.

As operações possíveis são soma(+), subtração(−),


multiplicação(*) e divisão(/).

Ex: Entrada: + 10 2
Saída: 12

MC102 – Profa.Wanessa Machado do Amaral - 1s2010

Você também pode gostar