Buscar

Aula Ficha 5

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 9 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 9 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 9 páginas

Prévia do material em texto

Universidade Estácio de Sá 
Curso: Sistemas de Informação 
Disciplina: Algoritmos 
Campus: Nova América / Pç XI 
Professora: Anita Maciel 
Resumo e Atividades para AULAS 5o e 6 o / 15 
Código da 
disciplina 
CCT0001 
Período: 1o 
 
 
Unidade: I, II e III 
Itens Todos 
Carga 
horária: 
2 tempos em sala e 2 tempos no laboratório (200 minutos) 
 
Tema 
da aula Estrutura de decisão 
 
 
 
Conteúdo 
ƒ Definição de estrutura de decisão e suas características; 
ƒ Definição dos operadores relacionais; 
ƒ Utilização da estrutura de decisão; 
ƒ Apresentação de comandos da linguagem de programação, correspondentes aos comandos 
utilizados nos algoritmos; 
ƒ Programas com a linguagem de programação. 
 
 
Objetivos 
da aula 
 
ƒ Compreender uma estrutura de decisão e suas características; 
ƒ Discernir quando uma estrutura de decisão deve ser utilizada e criar algoritmos que utilizem 
essa estrutura; 
ƒ Utilizar comandos de uma linguagem de programação para implementação de algoritmos na 
forma de programas de computador (laboratório). 
 
 
 
 
 
Atividades 
 
 
 
1. Trabalhar no ambiente do Dev-cpp 
2. Editar / Compilar e executar um programa 
3. Codificar todos os algoritmos na linguagem C++ e testá-los. 
 
 
 
 
 
Tarefas 
 
 
 
• Reveja todos os conceitos vistos nesta aula. 
• Aprimore seus conhecimentos pesquisando no material didático e na 
bibliografia recomendada (procure na Biblioteca do campus ou na Biblioteca 
Virtual/SIA). 
• Faça os exercícios restantes da Lista de exercícios 3.doc e da Lista de 
exercícios 3.doc 
 
 
 
 
 
 
Professora ANITA LOPES 2 
 
Formalizando alguns conceitos 
Conceitos 
Estrutura de decisão: 
 
“Como o próprio nome apresenta, a estrutura de decisão permite que o algoritmo sobre qual 
sequência de comandos deve-se realizar em seguida. 
 
Isso é útil quando, dependendo de um determinado critério, é possível realizar uma ou outra 
sequência de comandos. Em um algoritmo, é possível encontrarmos diversas opções a serem 
seguidas. 
 
O mais importante para a utilização da estrutura de decisão é conhecer quais são os critérios 
que levam à escolha de uma determinada sequência de comandos. 
 
Normalmente, esses critérios são determinados pela situação na qual o programa deve operar. 
Por exemplo, um aluno deve ser considerado aprovado se a média final dele for maior ou igual 
a cinco, e reprovado se a média for menor do que cinco. 
 
Observe que esses critérios mudam de acordo com a aplicação. No exemplo, o critério de 
aprovação do aluno pode ser verdade para uma determinada instituição, mas ser diferente 
para outra.” 
 
Tipos 
 
1- Seleção simples
Nesse tipo, após a execução do teste, só será executado o bloco de comandos se o resultado 
do teste for verdadeiro. 
 
2- Seleção composta
Nesse tipo, após a execução do teste, tanto será executado um bloco de comandos se o 
resultado do teste for verdadeiro quanto será executado um outro bloco de comandos se o 
resultado for falso. 
 
3- Seleções encadeadas
Nesse tipo, após a execução do teste, será executado um bloco de comandos se o resultado 
do teste for verdadeiro, caso não seja, um outro teste será feito até que todas as 
possibilidades de respostas sejam contempladas. 
 
Teste 
O teste é uma expressão relacional que compara valores dos seus operandos. 
 
A expressão relacional é formada, obrigatoriamente, por um operador relacional e dois 
operandos do mesmo tipo. A U.A.L testa essa expressão e retorna, na maioria das 
 
Professora ANITA LOPES 3 
linguagens: true ou false. Em algumas linguagens ela poderá retornar 1(ou qualquer número 
diferente de zero) ou 0. 
OPERADORES RELACIONAIS 
significado Matemática Pascal C/ C++ UAL Exemplos - UAL 
maior > > > > 2* 8 > 4 
menor < < < < 2 < 9 
igual = = == == 3 == 7-4 
maior ou igual ≥ >= >= >= 9 >= 5 
menor ou igual ≤ <= <= <= 4 <= 10 
diferente ≠ <> != <> 8 <> 5 
 
Em algumas ocasiões, precisaremos negar um teste ou fazer mais de um teste para que uma 
condição seja considerada verdadeira e, nesses casos, teremos que unir as expressões 
relacionais por operadores lógicos. 
 
Os operadores lógicos são velhos conhecidos nossos da disciplina de Lógica Matemática e tudo 
que aprendemos sobre eles servirá agora, mas vamos relembrá-los. 
OPERADORES Lógicos 
significado Matemática Pascal C/ C++ UAL Exemplos – C++ 
conjunção( e) ∧ and && && n >= 100 && n<=200 
disjunção(ou) ∨ or || || n < 100 || n>200 
negação(não) ¬ not ! ! !p 
 
 
Tabelas Verdade 
não e ou 
 
 
 
 
Professora ANITA LOPES 4 
Sintaxes 
 
Ö Fluxograma 
Comando de decisão (seleção) 
Seleção Simples Seleção Composta Seleções Encadeadas 
 
 
 
Exemplo Exemplo Exemplo 
 
 
 
 
Ö Linguagem UAL 
Comando de decisão (seleção) 
Seleção Simples Seleção Composta Seleções Aninhadas 
se(teste) 
{ 
 ... 
} 
 
 
se(teste) 
{ 
 ... 
} 
senao 
{ 
 ... 
 } 
 
 
 
 
se(teste) 
{ 
 ... 
} 
senao 
{ 
 se(teste) 
 { 
 ... 
 } 
 senao 
 { 
 ... 
 } 
} 
 
Professora ANITA LOPES 5 
se(valor > 10) 
{ 
 valor <- valor * 2; 
} 
se(valor > 10) 
{ 
 imprima ”Aprovado”; 
} 
senao 
{ 
 imprima ”Reprovado”; 
} 
se(saldo > 0) 
{ 
 imprima ”Positivo”; 
} 
senao 
{ 
 se(saldo < 0) 
 { 
 imprima ”Negativo”; 
 } 
 senao 
 { 
 imprima ”Nulo”; 
 } 
} 
 
Ö Linguagem C++ 
Comando de decisão (seleção) 
Seleção Simples Seleção Composta Seleções Encadeadas 
if(teste) 
{ 
 ... 
} 
 
 
if(teste) 
{ 
 ... 
} 
else 
{ 
 ... 
 } 
 
 
 
 
if(teste) 
{ 
 ... 
} 
else if (teste) 
 { 
 ... 
 } 
 else 
 { 
 ... 
 } 
if(valor > 10) 
{ 
 valor = valor * 2; 
} 
if(valor > 10) 
{ 
 cout<< ”Aprovado”; 
} 
else 
{ 
 cout<< ”Reprovado”; 
} 
if(saldo > 0) 
{ 
 cout<< ”Positivo”; 
} 
else if(saldo < 0) 
 { 
 cout<< ”Negativo”; 
 } 
 else 
 { 
 cout<< ”Nulo”; 
 } 
 
 
 
Na linguagem C++, as chaves podem ser dispensadas quando só 
existir um comando no bloco. Observe como ficaria sem as 
chaves. 
if(saldo > 0) 
 cout<< ”Positivo”; 
else if(saldo < 0) 
 cout<< ”Negativo”; 
 else 
 cout<< ”Nulo”; 
 
 
 
Professora ANITA LOPES 6 
O exercício do maior entre três números é um clássico em programação e, por essa razão, vou 
apresentar duas soluções para ele. 
 
 
 
 
Professora ANITA LOPES 7 
Estrutura escolha/ caso 
 
 
A estrutura de múltiplos testes denominada escolha/ caso é uma alternativa para ses 
encadeados. 
 
Embora o conceito seja o mesmo, ela apresenta diferenças em várias linguagens. 
 
Para que possamos apresentá-la, teremos que fazer uma opção de linha de programação e 
nós vamos escolher a linha do C/ C++, tendo em vista que a maioria das linguagens 
usadas herdam características da linguagem C. 
 
Normalmente quando a estrutura é apresentada, sempre surge um questionamento: Por 
que tivemos então que usar se ... então ... senão se ...? 
 
Para que possamos substituir se ... então ... senão se ... pela estrutura do escolha é 
necessário, na linha que escolhemos, que três umas exigências sejam atendidas: 
 
ƒ A variável tem que ser a mesma em todos os testes. 
ƒ A variável tem que ser do tipo enumerável: inteira ou de um caracter. 
ƒ O operador relacional tem que ser o de igualdade. 
 
Por essas razões é que se faz necessário que você entenda que, embora seja mais simples,nem sempre poderemos substituir os ses encadeados e às vezes, poderemos substituir em 
uma linguagem, mas em outra não. 
 
Essa estrutura é ideal para algoritmos que funcionam através de um menu visto que só 
podemos selecionar um item. 
Vamos analisar um exercício e se respondermos sim para as três perguntas abaixo, então 
poderemos usar a estrutura alternativa para ifs encadeados: escolha/ caso> 
A variável é a mesma em 
todos os testes? 
A variável é do tipo 
enumerável? 
O operador relacional é o de 
igualdade? 
 
 
 
 
 
 
 
 
 
 
 
 
 
Professora ANITA LOPES 8 
 
Sintaxe 
Fluxograma Linguagem C++ 
 
 
switch (var) 
{ 
 case <valor 1> : comandos 1; 
 break; 
 
 case <valor 2> : comandos 2; 
 break; 
 
 case <valor 3> : comandos 3; 
 break; 
 
 case <valor 4> : comandos 4; 
 break; 
 default: comandos n; 
} 
 
 
 
 
Algumas vezes o comando break não será necessário. 
 
Professora ANITA LOPES 9 
 
 REFERÊNCIA BIBLIOGRÁFICA 
 
FARRER, Harry et al. Algoritmos estruturados. 3. ed. Rio de Janeiro: LTC, 1999. 
 
GUIMARÃES, A. M; LAGES, N. A. Algoritmos e estruturas de dados. Rio de Janeiro: 
LTC,1994. 
 
DEITEL, Harvey M.; DEITEL, Paul J. C++: como programar. Porto Alegre: Bookman, 
2005. 
 
BIBLIOGRAFIA COMPLEMENTAR 
 
MANZANO, J. A. N. G., OLIVEIRA, J. F. de. Algoritmos: lógica para 
desenvolvimento de programação de computadores. 17. ed. São Paulo: Érica, 2005. 
 
FORBELLONE, A. L. V., EBERSPACHER, H. F. Lógica de programação: a construção 
de algoritmos e estrutura de dados. 2. ed. São Paulo: Makron, 2000. 
 
LOPES, A.L.M. Apostila de C++. RJ: 2008. 
 
SEXTON, Conar. Dominando a linguagem C++. Rio de Janeiro: IBPI, c2001. 
 
	Professora: Anita Maciel
	Código da
	CCT0001
	Resumo e Atividades para AULAS 5o e 6 o / 15
	Tema da aula
	Conteúdo
	Objetivos 
	da aula
	Atividades
	Tarefas
	Formalizando alguns conceitos
	OPERADORES RELACIONAIS
	significado
	Matemática
	Pascal
	C/ C++
	UAL
	Exemplos - UAL
	OPERADORES Lógicos
	significado
	Matemática
	Pascal
	C/ C++
	UAL
	Exemplos – C++
	Tabelas Verdade
	Sintaxe
	 REFERÊNCIA BIBLIOGRÁFICA

Outros materiais