Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

<p>Prof.ª Me Elda Nunes de Carvalho</p><p>elda.carvalho@uninorte.com.br</p><p>LÓGICA DE PROGRAMAÇÃO</p><p>Aula: Algoritmo de Decisão</p><p>Conteúdo Programático</p><p>2</p><p>SUMÁRIO</p><p>• Comando de seleção if</p><p>• Comando else if</p><p>• Estruturas aninhadas</p><p>• Comando switch...case</p><p>Objetivos de Aprendizagem</p><p>3</p><p>1. Identificar na situação problema a existência de aplicar</p><p>uma estrutura de decisão;</p><p>2. Desenvolver algoritmos condicionais.</p><p>Então ...</p><p>4</p><p>ESTRUTURAS DE CONDIÇÃO SIMPLES</p><p>• Estruturas que permitem a escolha de um grupo de</p><p>instruções (bloco) a serem executadas, a partir da</p><p>avaliação de uma expressão lógica</p><p>• Somente dois caminhos serão possíveis:</p><p>• 1º caminho: condição verdadeira</p><p>• 2º caminho: condição falsa</p><p>Revisando</p><p>5</p><p>ESTRUTURAS DE CONDIÇÃO SIMPLES</p><p>Revisando</p><p>6</p><p>ESTRUTURAS DE CONDIÇÃO SIMPLES</p><p>• SINTAXE:</p><p>Revisando</p><p>7</p><p>ESTRUTURAS DE CONDIÇÃO SIMPLES</p><p>• SINTAXE:</p><p>if <condição> {</p><p>bloco de instruções</p><p>}</p><p>Dica de programação: caso o bloco de instruções do IF tenha UMA linha</p><p>no máximo, não será preciso colocar ‘{‘ e ‘}’.</p><p>Revisando</p><p>8</p><p>ESTRUTURAS DE CONDIÇÃO SIMPLES ::</p><p>EXEMPLO</p><p>float media;</p><p>printf("informe sua media: ");</p><p>scanf("%f",&media);</p><p>if ((media >= 5) && (media <= 10))</p><p>printf("aprovado");</p><p>return 0;</p><p>Revisando</p><p>9</p><p>ESTRUTURAS DE CONDIÇÃO COMPOSTA</p><p>Tipo de estrutura de seleção em que:</p><p>• a sequência de comandos 1 será executada caso a</p><p>condição seja verdadeira</p><p>• a sequência de comandos 2 será executada caso a</p><p>condição seja falsa</p><p>Revisando</p><p>10</p><p>ESTRUTURAS DE CONDIÇÃO COMPOSTA</p><p>Revisando</p><p>11</p><p>ESTRUTURAS DE CONDIÇÃO COMPOSTA</p><p>• SINTAXE:</p><p>Revisando</p><p>12</p><p>ESTRUTURAS DE CONDIÇÃO COMPOSTA</p><p>• SINTAXE:</p><p>if <condição> {</p><p>bloco de instruções (se condição</p><p>verdadeira)</p><p>}</p><p>else {</p><p>bloco de instruções (se condição falsa)</p><p>}</p><p>Revisando</p><p>13</p><p>ESTRUTURAS DE CONDIÇÃO COMPOSTA ::</p><p>EXEMPLO</p><p>float media;</p><p>printf("informe sua media: ");</p><p>scanf("%f",&media);</p><p>if ((media >= 5) && (media <= 10))</p><p>{</p><p>printf("aprovado");</p><p>}</p><p>else</p><p>{</p><p>printf("reprovado");</p><p>}</p><p>return 0;</p><p>Estrutura de Seleção</p><p>14</p><p>ESTRUTURAS ANINHADAS</p><p>• Estruturas if…else aninhadas testam vários casos,</p><p>colocando estruturas if…else dentro de estruturas if…else.</p><p>Estrutura de Seleção</p><p>15</p><p>ESTRUTURAS ANINHADAS</p><p>Estrutura de Seleção</p><p>16</p><p>ESTRUTURAS ANINHADAS</p><p>• Por exemplo, a estrutura de pseudocódigo a seguir imprimirá A para notas de</p><p>exame maiores ou iguais a 90, B para notas maiores ou iguais a 80, C para notas</p><p>maiores ou iguais a 70, D para notas maiores ou iguais a 60, e F para todas as</p><p>outras notas.</p><p>• Se a nota do aluno é maior ou igual a 90</p><p>• Imprime ‘A’</p><p>• se não</p><p>• Se a nota do aluno é maior ou igual a 80</p><p>• Imprime ‘B’</p><p>• se não</p><p>• Se a nota do aluno é maior ou igual a 70</p><p>• Imprime ‘C’</p><p>• se não</p><p>• Se a nota do aluno é maior ou igual a 60</p><p>• Imprime ‘D’</p><p>• se não</p><p>• Imprime ‘F’</p><p>Estrutura de Seleção</p><p>17</p><p>ESTRUTURAS ANINHADAS :: SINTAXE</p><p>if <condição n></p><p>{</p><p>bloco de instruções (se condição-n verdadeira)</p><p>}</p><p>else</p><p>{</p><p>if <condição-m></p><p>{</p><p>bloco de instruções (se condição-m verdadeira)</p><p>}</p><p>else</p><p>{</p><p>bloco de instruções (se condição-m falsa)</p><p>}</p><p>}</p><p>Estrutura de Seleção</p><p>18</p><p>ESTRUTURAS ANINHADAS :: EXEMPLO</p><p>float numero;</p><p>printf("Informe um numero: ");</p><p>scanf("%f",&numero);</p><p>if (numero > 20){</p><p>printf("Numero informado e maior a 20");</p><p>}</p><p>else {</p><p>if (numero = 20) {</p><p>printf("Numero informado e igual a 20");</p><p>}</p><p>else {</p><p>printf("Numero informado e menor que 20");</p><p>}</p><p>}</p><p>return 0;</p><p>}</p><p>Estrutura de Seleção</p><p>19</p><p>ESTRUTURAS ANINHADAS :: EXEMPLO</p><p>float numero;</p><p>printf("Informe um numero: ");</p><p>scanf("%f",&numero);</p><p>if (numero > 20){</p><p>printf("Numero informado e maior a 20");</p><p>}</p><p>else {</p><p>if (numero = 20) {</p><p>printf("Numero informado e igual a 20");</p><p>}</p><p>else {</p><p>printf("Numero informado e menor que 20");</p><p>}</p><p>}</p><p>return 0;</p><p>}</p><p>Estrutura de Seleção</p><p>20</p><p>EXERCÍCIOS</p><p>1. Entrar com a idade de uma pessoa e informar:</p><p>• se é maior de idade</p><p>• se é menor de idade</p><p>• se é maior de 65 anos</p><p>Estrutura de Seleção</p><p>21</p><p>EXERCÍCIOS</p><p>2. Entrar com nome, nota da PR1 e nota da PR2 de um</p><p>aluno. Imprimir nome, nota da PR1, nota da PR2, média e</p><p>uma das mensagens: Aprovado, Reprovado ou em Prova</p><p>Final (a média é 7 para aprovação, menor que 3 para</p><p>reprovação e as demais em prova final).</p><p>Estrutura de Seleção</p><p>22</p><p>ESTRUTURAS DE SELEÇÃO MÚLTIPLA –</p><p>SWITCH..CASE</p><p>• Ocasionalmente, um algoritmo conterá uma série de</p><p>decisões em que uma variável, ou expressão, será testada</p><p>separadamente para cada um dos valores inteiros constantes</p><p>que ela possa vir a assumir, e diferentes ações serão</p><p>tomadas.</p><p>• Isso é chamado de seleção múltipla.</p><p>• C nos oferece a estrutura de seleção múltipla switch para</p><p>lidar com essa tomada de decisão.</p><p>• A estrutura switch consiste em uma série de rótulos case,</p><p>um caso default opcional e instruções para executar cada</p><p>caso.</p><p>Estrutura de Seleção</p><p>23</p><p>ESTRUTURAS DE SELEÇÃO MÚLTIPLA –</p><p>SWITCH..CASE</p><p>• Sintaxe:</p><p>Estrutura de Seleção</p><p>24</p><p>ESTRUTURAS DE SELEÇÃO MÚLTIPLA –</p><p>SWITCH..CASE</p><p>• Sintaxe:</p><p>switch (variável analisada)</p><p>{</p><p>case (valor 1): bloco de instruções (se valor 1 verdadeiro); break;</p><p>case (valor 2): bloco de instruções (se valor 2 verdadeiro); break;</p><p>case (valor 3): bloco de instruções (se valor 3 verdadeiro); break;</p><p>.</p><p>.</p><p>case (valor n): bloco de instruções (se valor n verdadeiro); break;</p><p>[default]: bloco de instruções (caso nenhum valor n seja verdadeiro);</p><p>break;</p><p>}</p><p>A palavra reservada break serve para fechar o laço do</p><p>switch quando o case for verdadeiro.</p><p>Estrutura de Seleção</p><p>25</p><p>EXEMPLO:</p><p>int valor;</p><p>printf ("Digite um valor de 1 a 7: ");</p><p>scanf("%d", &valor);</p><p>switch (valor)</p><p>{</p><p>case 1 :</p><p>printf ("Domingo\n"); break;</p><p>case 2 :</p><p>printf ("Segunda\n"); break;</p><p>case 3 :</p><p>printf ("Terça\n"); break;</p><p>case 4 :</p><p>printf ("Quarta\n"); break;</p><p>case 5 :</p><p>printf ("Quinta\n"); break;</p><p>case 6 :</p><p>printf ("Sexta\n"); break;</p><p>case 7 :</p><p>printf ("Sabado\n"); break;</p><p>default :</p><p>printf ("Valor invalido!\n");</p><p>}</p><p>return 0;</p><p>}</p><p>A variável testada no switch só pode ser do tipo</p><p>int e char.</p><p>Estrutura de Seleção</p><p>26</p><p>EXERCÍCIOS:</p><p>1. Construa um algoritmo que leia um número inteiro e</p><p>devolva o nome do mês ao qual esse número representa.</p><p>Estrutura de Seleção</p><p>27</p><p>EXERCÍCIOS:</p><p>2. Crie uma calculadora usando a instrução SWITCH,</p><p>que pergunte qual das operações básicas quer fazer</p><p>(+, -, * e /), em seguida peça os dois números e</p><p>mostre o resultado da operação matemática entre</p><p>eles.</p><p>28</p><p>BIBLIOGRAFIA BÁSICA</p><p>• MANZANO, J. A. N. G; OLIVEIRA, J. F.; Algoritmos: Logica para</p><p>Desenvolvimento de Programação de Computadores. 2. ed. São</p><p>Paulo Erica, 2008.</p><p>• GUIMARÃES, A. M; LAGES, A. C.; Algoritmos e Estruturas de Dados.</p><p>Rio de Janeiro: LTC, 1994.</p><p>• LOPES, A.; GARCIA, G. Introdução a Programação: 500 Algoritmos</p><p>Resolvidos. São Paulo: Campus, 2002.</p><p>29</p><p>BIBLIOGRAFIA COMPLEMENTAR</p><p>• SALVETTI, D. D.; Algoritmos. 1998, 273p.</p><p>• DEITEL, M.H; DEITEL, P. J. C++ Como Programar. Porto Alegre:</p><p>Bookman, 2006.</p><p>• SOUZA, M.A.F.; GOMES, M.M.; SOARES, M.V. Algoritmos e Logica</p><p>de Programação. São Paulo: Pioneira Thomson Learning, 2008.</p><p>• VILARIM, G. O.; Algoritmos: Programação para Iniciantes. 2004,</p><p>270p.</p><p>• CHAPMAN, S.J. Matlab programming for engineers. 4th ed.</p><p>Toronto: Pioneira Thomson Learning, 2008.</p><p>30</p><p>BIBLIOGRAFIA COMPLEMENTAR</p><p>• DEITEL, Harvey M.; DEITEL, P. J. C: como programar. 6.ed.</p><p>São Paulo: Pearson, 2011.</p><p>• DAMAS, Luís. Linguagem C. 10.ed. São Paulo: LTC, 2013.</p><p>• BACKES, André. Linguagem C: Completa e Descomplicada.</p><p>Rio de Janeiro: Elsevier, 2012.</p><p>Então é isso ...</p><p>31</p><p>O QUE HOUVER...</p>

Mais conteúdos dessa disciplina