Buscar

ESTRUTURA DE DECISÃO

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

ESTRUTURAS DE DECISÃO
UNIDADE
2
PROFESSOR: SÉRVULO JUNIOR
FALCULDADE PITÁGORAS
ALGORITMOS E PROGRAMAÇÃO
2 ESTRUTURA DE DECISÃO 
2.1 Estrutura condicional simples
2.2 Estrutura condicional composta
2.3 Estrutura condicional com múltiplas possibilidade de 
escolha
ROTEIROROTEIRO
PROFESSOR: SÉRVULO JUNIOR 02/22
E a estrutura que permite a tomada de decisão, em um algoritmo, 
mediante a análise lógica de uma condição;
As estruturas de decisão são comuns em todas as linguagens de 
programação, variando basicamente a sintaxe de seus comandos e sem 
este recurso seria difícil executar um programa com saltos condicionais. 
Para representar a solução de um problema devemos escrever o 
conjunto de passos a serem seguidos, sendo que, a maioria dos 
problemas exigem uma dinâmica na sua solução, impondo assim que os 
algoritmos executem conjunto de instruções de acordo com as possíveis 
situações encontradas no problema original. E de acordo com a 
Programação Estruturada os mecanismos utilizados para esse controle 
são : Sequência, Seleção e Repetição.
ROTEIRO2 ESTRUTURA DE DECISÃO
PROFESSOR: SÉRVULO JUNIOR 03/22
São usadas quando é necessário fazer uma opção entre 2 ou mais 
caminhos sendo que o fluxo do algoritmo é desviado segundo uma 
condição lógico relacional.
Esta estrutura subordina a execução de um comando, ou bloco de 
comandos, a veracidade ou não de uma condição lógico relacional. 
Os comandos utilizados para implementar a estrutura de seleção são :
 SE
 SE SENÂO
 CASO
ROTEIROEstrutura condicional simples
PROFESSOR: SÉRVULO JUNIOR 04/22
Comando SE
O comando SE especifica se um comando, ou um conjunto de comando será ou 
não executado, de acordo com uma condição lógico relacional.
Sintaxe:
ROTEIRO2.1 Estrutura condicional simples
PROFESSOR: SÉRVULO JUNIOR 05/22
Na linguagem C o SE se torna if
Sintaxe:
if (<condição>)
comandos_if;
else
comandos_else;
Onde:
<condição>: é uma condição a ser testada pelo comando if;
comandos_if: são as instruções que devem ser executadas caso 
<condição> seja verdadeira;
comandos_else: são as instruções que devem ser executadas caso 
<condição> seja falsa. 
O uso de else é opcional 
ROTEIRO2.1 Estrutura condicional simples
PROFESSOR: SÉRVULO JUNIOR 06/22
/* Programa para verificar se um número é par*/
#include <stdio.h>
#include <stdlib.h>
main(){
int x, y; 
printf("Digite o numero:\n"); 
scanf("%d", &x);
if (x % 2 == 0) {
printf("%d e' par \n", x); 
} else {
printf("%d e' impar \n", x);
}
system("pause");
return 0;
}
ROTEIRO2.1 Estrutura condicional simples
PROFESSOR: SÉRVULO JUNIOR 07/22
/* Programa que verifica se um dado ano é bissexto */
#include <stdio.h>
#include <stdlib.h>
main()
{ 
int Ano;
printf("Digite o ano: ");
scanf("%d", &Ano);
if ((Ano % 4 != 0) || ((Ano % 100 == 0) && (Ano % 400 != 0))){
printf("%d nao e' bissexto \n", Ano);
}else{
printf("%d e' bissexto \n", Ano);
}
system("pause");
return 0;
}
Os anos divisíveis por 4 são bissextos, porém cada 400 anos devem se eliminar 3 bissextos. Por isso, não são 
bissextos os que se dividem por 100, menos os que se dividem por 400, que sim são bissextos.
Com outras palavras, são bissextos todos os anos divisíveis por 4, excluindo os que sejam divisíveis por 100, 
porém não os que sejam divisíveis por 400.
ROTEIRO2.1 Estrutura condicional simples
PROFESSOR: SÉRVULO JUNIOR 08/22
Comando SE SENÂO
Como vimos anteriormente o comando SE ainda permite que seja 
associado a ele um segunda opção, o comando SENÃO.
O comando senão pode ou não ser associado ao comando SE, uma vez 
associado, ele especifica que os comandos a ele subordinados só 
serão executado no caso da condição lógico relaciona for falsa, ou 
seja, só será executado caso os comandos associados ao comando 
SE não forem executados.
ROTEIRO2.2 Estrutura condicional composta
PROFESSOR: SÉRVULO JUNIOR 09/22
/* Programa para ordenar três números dados*/
#include <stdio.h>
#include <stdlib.h>
main()
{ 
float x, y, z, Aux;
printf("Digite os tres numeros: \n");
scanf("%f %f %f", &x, &y, &z);
printf("Numeros dados: %f , %f , %f \n", x, y, z);
if ((x > y) || (x > z)) /* verifica se x não é o menor */
if (y < z) /* neste caso y é o menor */
{
Aux = x; /* troca os conteúdos de x e de y */
x = y;
y = Aux;
}
else /* neste caso z é o menor */
ROTEIRO2.2 Estrutura condicional composta
PROFESSOR: SÉRVULO JUNIOR 10/22
{
Aux = x; /* troca os conteúdos de x e de z */
x = z;
z = Aux;
}
if (y > z) /* verifica se z e y ainda não estão ordenados */
{
Aux = y; /* troca o conteúdo de y e de z */
y = z;
z = Aux;
}
printf("Numeros ordenados: %f , %f , %f \n", x, y, z);
system("pause");
return 0;
}
ROTEIRO2.2 Estrutura condicional composta
PROFESSOR: SÉRVULO JUNIOR 11/22
Comando CASO
É o comando que permite a opção entre várias alternativas de acordo 
com a verificação de uma condição lógico relacional.
Sintaxe:
CASO
MES = 1
SALARIO = SALARIO * 1.53;
MES = 2
SALARIO = SALARIO * 1.72;
MES = 3
SALARIO = SALARIO * 1.83;
FIM_CASO.
ROTEIRO2.3 Estrutura condicional com múltiplas possibilidades de escolha
PROFESSOR: SÉRVULO JUNIOR 12/22
Note que no comando CASO, a mesma variável será testada com várias 
condições, caso uma delas seja atendida, o comando, ou bloco de 
comandos associados a esta condição será executado, e logo após o 
algoritmo seguirá normalmente após a palavra FIM_CASO.
No caso de nenhuma condição ser verdadeira, o algoritmo seguirá 
normalmente após a palavra FIM_CASO sem executar nenhum 
comando associado ao comando CASO.
O comando Caso é equivalente a uma sequencia de comando SE 
SENÂO.
ROTEIRO2.3 Estrutura condicional com múltiplas possibilidades de escolha
PROFESSOR: SÉRVULO JUNIOR 13/22
Em algoritmo se usa CASO já em C isso se torna switch
Sintaxe:
ROTEIRO2.3 Estrutura condicional com múltiplas possibilidades de escolha
PROFESSOR: SÉRVULO JUNIOR 14/22
O valor de cada expressão (V1, V2, V3 e V4) é testado até que seja 
encontrada uma coincidência. Desta forma, os comandos associados ao 
case serão executados até que o comando break ou o fim do switch 
seja alcançado.
Exemplo
/* Programa CALCULADORA */
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <string.h>
void somar();
void subtrair();
void multiplicar();
void dividir();
ROTEIRO2.3 Estrutura condicional com múltiplas possibilidades de escolha
PROFESSOR: SÉRVULO JUNIOR 15/22
int main(void)
{
int menu;
do{ //enquanto o usuário não encerrar o programa (opção 99)
printf("\n\n ================== CALCULADORA ================== \n\n");
printf(" 1 - SOMAR\n");
printf(" 2 - SUBTRAIR\n");
printf(" 3 - MULTIPLICAR\n");
printf(" 4 - DIVIDIR\n");
printf(" 99 - SAIR\n\n");
printf(" Informe a sua opcao (pressione <ENTER>): ");
scanf("%i", &menu);
system("cls");
ROTEIRO2.3 Estrutura condicional com múltiplas possibilidades de escolha
PROFESSOR: SÉRVULO JUNIOR 16/22
switch(menu) {
case 1: //1 - SOMAR
somar();
break;
case 2: //2 - SUBTRAIR
subtrair();
break;
case 3: //3 - MULTIPLICAR
multiplicar();
break;
case 4: //4 - DIVIDIR
dividir();
break;
case 99:
break;
default:
printf("OPCAO NAO VALIDA! \n");
break;
}
fflush(stdin);
} while (menu != 99); //do (enquanto não encerrar o programa 
ROTEIRO2.3 Estrutura condicional com múltiplas possibilidades de escolha
PROFESSOR: SÉRVULO JUNIOR 17/22printf("\n\n");
system("pause");
return 0;
}
/* Funcao para somar 2 numeros */
void somar()
{
float numero1, numero2, resultado;
printf("\n\n ================== SOMAR DOIS NUMEROS ================== \n\n");
printf("Digite o primeiro numero: \n");
scanf("%f", &numero1);
printf("Digite o segundo numero: \n");
scanf("%f", &numero2);
resultado = numero1+numero2;
printf("A soma de %4.2f com %4.2f e %4.2f\n", numero1, numero2, resultado);
}
ROTEIRO2.3 Estrutura condicional com múltiplas possibilidades de escolha
PROFESSOR: SÉRVULO JUNIOR 18/22
/* Funcao para subtrair 2 numeros */
void subtrair()
{
float numero1, numero2, resultado;
printf("\n\n ================== SUBTRAIR DOIS NUMEROS ================== \n\n");
printf("Digite o primeiro numero: \n");
scanf("%f", &numero1);
printf("Digite o segundo numero: \n");
scanf("%f", &numero2);
resultado = numero1-numero2;
printf("A subtracao de %4.2f com %4.2f e %4.2f\n", numero1, numero2, resultado);
}
ROTEIRO2.3 Estrutura condicional com múltiplas possibilidades de escolha
PROFESSOR: SÉRVULO JUNIOR 19/22
/* Funcao para multiplicar 2 numeros */
void multiplicar()
{
float numero1, numero2, resultado;
printf("\n\n ================== MULTIPLICACAO DOIS NUMEROS ================== \n\n");
printf("Digite o primeiro numero: \n");
scanf("%f", &numero1);
printf("Digite o segundo numero: \n");
scanf("%f", &numero2);
resultado = numero1*numero2;
printf("A multiplicar de %4.2f com %4.2f e %4.2f\n", numero1, numero2, resultado);
}
ROTEIRO2.3 Estrutura condicional com múltiplas possibilidades de escolha
PROFESSOR: SÉRVULO JUNIOR 20/22
/* Funcao para divisao 2 numeros */
void dividir()
{
float numero1, numero2, resultado;
printf("\n\n ================== DIVISAO DOIS NUMEROS ================== \n\n");
printf("Digite o primeiro numero: \n");
scanf("%f", &numero1);
printf("Digite o segundo numero: \n");
scanf("%f", &numero2);
resultado = numero1/numero2;
printf("A divisao de %4.2f com %4.2f e %4.2f\n", numero1, numero2, resultado);
}
ROTEIRO2.3 Estrutura condicional com múltiplas possibilidades de escolha
PROFESSOR: SÉRVULO JUNIOR 21/22
ARAÚJO, Everton C. Algoritmos: fundamento e prática. Capítulo 10 - Pseudocódigos – Estrutura Condicional.
MANZANO, José Augusto N. G.; OLIVEIRA, Jayr Figueiredo. Algoritmos: lógica para desenvolvimento de 
programação de computadores. Capítulo 4 - Estruturas de Controle – A Tomada de Decisão.
BORATTI, Isaias C; OLIVEIRA, Álvaro Borges. Introdução à programação – algoritmos. Capítulo: 3 - Estrutura 
de Seleção. Capítulo: 4 - Estrutura de Repetição.
MEDINA, Marco; FERTIG, Cristina. Algoritmos e programação - teoria e prática. Capítulo: 3 - Comandos de 
Condição. Capítulo: 4 - Comandos de Repetição.
ASCENCIO, Ana Fernanda Gomes; VENERUCHI, Edilene Aparecida. Fundamentos de programação de 
computadores. Capítulo: 4 - Estrutura de Repetição.
ROTEIROBibliografia
PROFESSOR: SÉRVULO JUNIOR 21/22

Continue navegando