SlideShare uma empresa Scribd logo
Algoritmos e Programação I
Linguagem de programação C
Comandos de decisão
Ser ou não ser...
Sumário
• Tomando decisões
• Verdadeiro e Falso em C
• Comando if
• Exemplo 01
• Exemplo 02
• Exemplo 03
• Construção if-else
• Exemplo 01
• Exemplo 02
• Comandos if aninhados
• Exemplo 01
• Exemplo 02
• Usando os operadores lógicos
• Expressões relacionais
compostas
• Exemplo
• Construção else-if
• Exemplo
• switch
• Exemplo
• Operador condicional ternário
“?”
• Exemplo
• Referências
05/07/2023 Professor Paulo Nunes 3
Tomando decisões
• Propriedade fundamental de uma linguagem de programação é a
capacidade de tomar decisões.
• Essa capacidade permite ao programa “decidir” que ação tomar em
determinados momentos dentro da execução das instruções.
• A linguagem C possui alguns comando e operadores que permitem um
controle total e bastante flexível das tomadas de decisão. São eles:
• O comando if
• O comando if-else
• Operadores lógicos || && !
• O comando else-if
• O comando switch
• O operador condicional ternário ? :
05/07/2023 Professor Paulo Nunes 4
Verdadeiro e Falso em C
• Para determinar o curso de uma ação, muitos comandos contam com
um teste condicional;
• Um teste condicional utiliza expressões condicionais para chegar a um
valor verdadeiro ou falso;
• Para a linguagem C, um valor condicional verdadeiro, é qualquer valor
diferente de zero, incluindo os números negativos;
• Um valor falso é zero.
05/07/2023 Professor Paulo Nunes 5
if
• Leva o computador a uma tomada de decisão simples.
• Sintaxe:
if(teste lógico)
<comando>;
• Onde:
• teste lógico é um valor ou expressão lógica;
• comando é o comando que será executado caso teste lógico seja verdadeiro.
05/07/2023 Professor Paulo Nunes 6
Exemplo 01 if
05/07/2023 Professor Paulo Nunes 7
Este programa recebe
um número e exibe seu
valor absoluto.
Testa se o número
digitado é menor
que zero. Comando executado caso o
teste seja verdadeiro.
Inverte o sinal do número.
Comando executado caso o
teste seja falso.
Exemplo 02 if
05/07/2023 Professor Paulo Nunes 8
O programa imprime uma
mensagem caso seja digitada
a letra ‘R’.
Comando executado apenas
se for digitada a letra ‘R’.
Exemplo 03 if
05/07/2023 Professor Paulo Nunes 9
Este programa conta o
número de caracteres e
palavras em uma frase.
Recebe a digitação até
que [ENTER] seja
pressionada.
Verifica se espaço em
branco foi digitado,
indicando uma palavra.
Construção if-else
• Um comando if simples executa uma única instrução ou grupo de
instruções, caso o teste lógico seja verdadeiro e nenhuma caso seja
falso;
• Associando o comando else ao if, poderemos executar uma ou um
grupo de instruções se o teste lógico do if for falso.
• Sintaxe:
if(teste lógico)
<comando 1>;
else
<comando 2>;
05/07/2023 Professor Paulo Nunes 10
Exemplo 01 if-else
• Imagine que você precisa determinar se um número é par ou impar. A
maneira para se fazer isso é testando o resto da divisão desse número
por 2, se o resto for “0” o número é par, se for diferente de “0”, é impar.
Veja o exemplo a seguir utilizando apenas com o comando if:
05/07/2023 Professor Paulo Nunes 11
Exemplo 01 if-else
05/07/2023 Professor Paulo Nunes 12
Foram necessários dois
testes if.
Exemplo 02 if-else
05/07/2023 Professor Paulo Nunes 13
Teste lógico Comando executado
caso teste verdadeiro.
Senão for verdadeiro, executa o
comando interno ao “else”.
Comandos if aninhados
• Um comando if pode ser colocado dentro de outro comando
if;
• Diz-se então que o if mais interno está aninhado;
• O comando else se refere sempre ao comando if mais
próximo, que está dentro do mesmo bloco do else, e não está
associado a outro if.
05/07/2023 Professor Paulo Nunes 14
Exemplo 01 if aninhado
05/07/2023 Professor Paulo Nunes 15
Este programa verifica se o
caractere digitado é uma letra
minúscula.
Será executado apenas se ambos os
testes forem verdadeiros.
Exemplo 02 if aninhado
05/07/2023 Professor Paulo Nunes 16
Este programa gera um número
aleatório, e o usuário tenta acertar
esse número digitando um outro.
Exibe a mensagem de “Errado” e
com outro if verifica se o número
digitado é maior ou menor que o
gerado aleatoriamente.
Usando os operadores lógicos
• Os operadores lógicos são utilizados para montar expressões lógicas
que podem ser utilizadas em comandos como if, while e do-while;
• Destes operadores ! é unário e && e || são binários;
• Exemplo:
• Tomemos as expressões simples expre01 e expre02:
• Esses operadores podem ser utilizados para condensar e clarear
construções do tipo if-else.
05/07/2023 Professor Paulo Nunes 17
Expressão lógica Resultado
expre01 && expre02 Verdadeiro se ambas verdadeiras
expre01 || expre02 Verdadeiro se uma ou ambas forem verdadeiras
!expre01 Verdadeiro se expre01 falsa e vice-versa.
Expressões relacionais compostas
• Normalmente as expressões relacionais avaliam apenas uma condição
por vez, por exemplo: if(a > b) ou if( nome == ´joão´);
• Podemos criar expressões compostas, onde mais de uma condição é
analisada na mesma expressão, utilizando os operadores lógicos && (E)
e || (OU).
05/07/2023 Professor Paulo Nunes 18
Exemplo de expressões compostas
• Imagine um programa de notas onde os alunos recebem graduação a
partir de uma média e uma frequência. Para estar “Aprovado” , a média
deve ser igual ou superior a 7,0 e a frequência igual ou superior a 75%.
Podemos montar a seguinte composição:
05/07/2023 Professor Paulo Nunes 19
Instrução “if”
composta
O operador lógico
“&&” para compor a
expressão.
Só será executado se TODA a expressão for
verdadeira, média maior ou igual a 7 e
frequência maior ou igual a 75, ambas.
Construção else-if
• Construção reformatada de ninhos if-else.
if(expressão)
<comando>;
else if(expressão)
<comando>;
else if(expressão)
<comando>;
...
else
<comando>;
05/07/2023 Professor Paulo Nunes 20
Exemplo construção else-if
05/07/2023 Professor Paulo Nunes 21
Este programa executa as
quatro operações básicas.
switch
• Comando de seleção múltipla similar ao else-if;
• Testa o valor de uma expressão contra uma lista de constantes inteiras ou caractere;
• Quando a uma coincidência nos valores, os comandos associados àquela constante são
executados.
• Sintaxe:
switch(expressão) {
case constante1:
<comandos>
break;
case constante2:
<comandos>
break;
...
default:
<comandos>
}
05/07/2023 Professor Paulo Nunes 22
switch
• Onde:
• switch abre o bloco da estrutura;
• case constante_n: é a constante onde o valor da expressão em switch será
testada;
• <comandos> são os comandos que serão executados em cada case;
• break força a saída do bloco switch.
• O switch difere do comando if pelo fato de só poder testar igualdades,
enquanto if avalia expressões lógicas ou relacionais;
05/07/2023 Professor Paulo Nunes 23
Exemplo switch
05/07/2023 Professor Paulo Nunes 24
Este programa executa as
quatro operações básicas.
Avalia o conteúdo
da variável “op”.
Caso nenhum dos
valores “case” seja
encontrado. Seu uso é
opcional.
Operador condicional ternário ?
• Pode ser utilizado em substituição a construções if-else simples;
• É chamado de ternário por requerer três operandos;
• Sintaxe:
expressão1 ? expressão2 : expressão3
• Onde:
• expressão1 é a expressão a ser avaliada como verdadeira ou falsa;
• expressão2 é a expressão a ser executada no caso de expressão1 verdadeira e
se torna o valor da expressão ?;
• expressão3 é a expressão a ser executada no caso de expressão1 falsa e se
torna o valor da expressão ?.
05/07/2023 Professor Paulo Nunes 25
Exemplo de operador ternário
05/07/2023 Professor Paulo Nunes 26
Calcula o quadrado de
um número.
Expressão
avaliada.
Caso
verdadeira.
Caso falsa.
Referências
• Mizrahi, Victorine Viviane. Treinamento em linguagem C – Módulo
1.São Paulo: McGraw-Hill, 1990.
• Schildt, Herbert. C, Completo e Total – 3ª Ed. Revista e Atualizada. São
Paulo: Pearson Education do Brasil, 1997.
• Stephen G. Kochan. Programming in C – A complete introduction to the
C programming language. Third Edition. Indianapolis: Sams Publishing,
2005.
05/07/2023 Professor Paulo Nunes 27
O professor
05/07/2023 Professor Paulo Nunes 28

Mais conteúdo relacionado

Semelhante a Comandos de Controle de Fluxo: IF, SWITCH e Ternário em C

0000364 aula 5 estruturas de decisão
0000364 aula 5   estruturas de decisão0000364 aula 5   estruturas de decisão
0000364 aula 5 estruturas de decisão
EvelyneBorges
 
Linguagem C/C++: Condições ou expressões lógicas
Linguagem C/C++:  Condições ou expressões lógicasLinguagem C/C++:  Condições ou expressões lógicas
Linguagem C/C++: Condições ou expressões lógicas
nataferraz
 

Semelhante a Comandos de Controle de Fluxo: IF, SWITCH e Ternário em C (20)

Apostila c
Apostila cApostila c
Apostila c
 
Linguagem de Programação PERL
Linguagem de Programação PERLLinguagem de Programação PERL
Linguagem de Programação PERL
 
Minicurso php
Minicurso phpMinicurso php
Minicurso php
 
Lógica de programação em java
Lógica de programação em javaLógica de programação em java
Lógica de programação em java
 
3ª aula php
3ª aula php3ª aula php
3ª aula php
 
Estrutura condicional com Ruby[AULA-2]
Estrutura condicional com Ruby[AULA-2]Estrutura condicional com Ruby[AULA-2]
Estrutura condicional com Ruby[AULA-2]
 
Cap3 icc final
Cap3 icc finalCap3 icc final
Cap3 icc final
 
0000364 aula 5 estruturas de decisão
0000364 aula 5   estruturas de decisão0000364 aula 5   estruturas de decisão
0000364 aula 5 estruturas de decisão
 
Padrões para Desenvolvimento de Software Guiado por Testes
Padrões para Desenvolvimento de Software Guiado por TestesPadrões para Desenvolvimento de Software Guiado por Testes
Padrões para Desenvolvimento de Software Guiado por Testes
 
02 controle de fluxo
02   controle de fluxo02   controle de fluxo
02 controle de fluxo
 
Aula02
Aula02Aula02
Aula02
 
Testes de Sofware
Testes de SofwareTestes de Sofware
Testes de Sofware
 
Aula03 - JavaScript
Aula03 - JavaScriptAula03 - JavaScript
Aula03 - JavaScript
 
Linguagem C/C++: Condições ou expressões lógicas
Linguagem C/C++:  Condições ou expressões lógicasLinguagem C/C++:  Condições ou expressões lógicas
Linguagem C/C++: Condições ou expressões lógicas
 
Aula de apresentação Python explicando conceitos e aplicações.
Aula de apresentação Python explicando conceitos e aplicações.Aula de apresentação Python explicando conceitos e aplicações.
Aula de apresentação Python explicando conceitos e aplicações.
 
Excecoes em Java
Excecoes em JavaExcecoes em Java
Excecoes em Java
 
Action script1 apresentação2
Action script1 apresentação2Action script1 apresentação2
Action script1 apresentação2
 
Logica de Programacao
Logica de ProgramacaoLogica de Programacao
Logica de Programacao
 
ptt
pttptt
ptt
 
Construcao de Algoritmos - Aula 08
Construcao de Algoritmos - Aula 08Construcao de Algoritmos - Aula 08
Construcao de Algoritmos - Aula 08
 

Mais de SchoolByte

Mais de SchoolByte (10)

Estruturas de Dados: Listas, fundamentos.
Estruturas de Dados: Listas, fundamentos.Estruturas de Dados: Listas, fundamentos.
Estruturas de Dados: Listas, fundamentos.
 
Utilizando funções em C: modularizando os programas.
Utilizando funções em C: modularizando os programas.Utilizando funções em C: modularizando os programas.
Utilizando funções em C: modularizando os programas.
 
Introdução a linguagem de programação C
Introdução a linguagem de programação CIntrodução a linguagem de programação C
Introdução a linguagem de programação C
 
Estruturas de repetição e controle de fluxo: conceitos
Estruturas de repetição e controle de fluxo: conceitosEstruturas de repetição e controle de fluxo: conceitos
Estruturas de repetição e controle de fluxo: conceitos
 
Utilizando estruturas em linguagem C: structs.
Utilizando estruturas em linguagem C: structs.Utilizando estruturas em linguagem C: structs.
Utilizando estruturas em linguagem C: structs.
 
Vetores e Matrizes em C.
Vetores e Matrizes em C.Vetores e Matrizes em C.
Vetores e Matrizes em C.
 
Variáveis: conceitos e funcionamento.
Variáveis: conceitos e funcionamento.Variáveis: conceitos e funcionamento.
Variáveis: conceitos e funcionamento.
 
Utilizando ponteiros em C.
Utilizando ponteiros em C.Utilizando ponteiros em C.
Utilizando ponteiros em C.
 
Tutorial Visual do Open-Sankoré
Tutorial Visual do Open-SankoréTutorial Visual do Open-Sankoré
Tutorial Visual do Open-Sankoré
 
Tutorial Visual do Dropbox
Tutorial Visual do DropboxTutorial Visual do Dropbox
Tutorial Visual do Dropbox
 

Último

Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdfManual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
Pastor Robson Colaço
 
clubinho-bio-2.pdf vacinas saúde importância
clubinho-bio-2.pdf vacinas saúde importânciaclubinho-bio-2.pdf vacinas saúde importância
clubinho-bio-2.pdf vacinas saúde importância
LuanaAlves940822
 
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
edjailmax
 

Último (20)

Respostas prova do exame nacional Port. 2008 - 1ª fase - Criterios.pdf
Respostas prova do exame nacional Port. 2008 - 1ª fase - Criterios.pdfRespostas prova do exame nacional Port. 2008 - 1ª fase - Criterios.pdf
Respostas prova do exame nacional Port. 2008 - 1ª fase - Criterios.pdf
 
Recurso da Casa das Ciências: Bateria/Acumulador
Recurso da Casa das Ciências: Bateria/AcumuladorRecurso da Casa das Ciências: Bateria/Acumulador
Recurso da Casa das Ciências: Bateria/Acumulador
 
Nós Propomos! Infraestruturas em Proença-a-Nova
Nós Propomos! Infraestruturas em Proença-a-NovaNós Propomos! Infraestruturas em Proença-a-Nova
Nós Propomos! Infraestruturas em Proença-a-Nova
 
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdfManual dos Principio básicos do Relacionamento e sexologia humana .pdf
Manual dos Principio básicos do Relacionamento e sexologia humana .pdf
 
Meu corpo - Ruth Rocha e Anna Flora livro
Meu corpo - Ruth Rocha e Anna Flora livroMeu corpo - Ruth Rocha e Anna Flora livro
Meu corpo - Ruth Rocha e Anna Flora livro
 
Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...
Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...
Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...
 
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptxSlides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
 
ufcd_9649_Educação Inclusiva e Necessidades Educativas Especificas_índice.pdf
ufcd_9649_Educação Inclusiva e Necessidades Educativas Especificas_índice.pdfufcd_9649_Educação Inclusiva e Necessidades Educativas Especificas_índice.pdf
ufcd_9649_Educação Inclusiva e Necessidades Educativas Especificas_índice.pdf
 
Apresentação de vocabulário fundamental em contexto de atendimento
Apresentação de vocabulário fundamental em contexto de atendimentoApresentação de vocabulário fundamental em contexto de atendimento
Apresentação de vocabulário fundamental em contexto de atendimento
 
Slides Lição 8, CPAD, Confessando e Abandonando o Pecado.pptx
Slides Lição 8, CPAD, Confessando e Abandonando o Pecado.pptxSlides Lição 8, CPAD, Confessando e Abandonando o Pecado.pptx
Slides Lição 8, CPAD, Confessando e Abandonando o Pecado.pptx
 
livro para educação infantil conceitos sensorial
livro para educação infantil conceitos sensoriallivro para educação infantil conceitos sensorial
livro para educação infantil conceitos sensorial
 
Multiplicação - Caça-número
Multiplicação - Caça-número Multiplicação - Caça-número
Multiplicação - Caça-número
 
Exercícios de Clima no brasil e no mundo.pdf
Exercícios de Clima no brasil e no mundo.pdfExercícios de Clima no brasil e no mundo.pdf
Exercícios de Clima no brasil e no mundo.pdf
 
Descrever e planear atividades imersivas estruturadamente
Descrever e planear atividades imersivas estruturadamenteDescrever e planear atividades imersivas estruturadamente
Descrever e planear atividades imersivas estruturadamente
 
clubinho-bio-2.pdf vacinas saúde importância
clubinho-bio-2.pdf vacinas saúde importânciaclubinho-bio-2.pdf vacinas saúde importância
clubinho-bio-2.pdf vacinas saúde importância
 
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
 
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdfHans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
 
Atividade do poema sobre mãe de mário quintana.pdf
Atividade do poema sobre mãe de mário quintana.pdfAtividade do poema sobre mãe de mário quintana.pdf
Atividade do poema sobre mãe de mário quintana.pdf
 
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
 
Unidade 4 (Texto poético) (Teste sem correção) (2).docx
Unidade 4 (Texto poético) (Teste sem correção) (2).docxUnidade 4 (Texto poético) (Teste sem correção) (2).docx
Unidade 4 (Texto poético) (Teste sem correção) (2).docx
 

Comandos de Controle de Fluxo: IF, SWITCH e Ternário em C

  • 1. Algoritmos e Programação I Linguagem de programação C
  • 2. Comandos de decisão Ser ou não ser...
  • 3. Sumário • Tomando decisões • Verdadeiro e Falso em C • Comando if • Exemplo 01 • Exemplo 02 • Exemplo 03 • Construção if-else • Exemplo 01 • Exemplo 02 • Comandos if aninhados • Exemplo 01 • Exemplo 02 • Usando os operadores lógicos • Expressões relacionais compostas • Exemplo • Construção else-if • Exemplo • switch • Exemplo • Operador condicional ternário “?” • Exemplo • Referências 05/07/2023 Professor Paulo Nunes 3
  • 4. Tomando decisões • Propriedade fundamental de uma linguagem de programação é a capacidade de tomar decisões. • Essa capacidade permite ao programa “decidir” que ação tomar em determinados momentos dentro da execução das instruções. • A linguagem C possui alguns comando e operadores que permitem um controle total e bastante flexível das tomadas de decisão. São eles: • O comando if • O comando if-else • Operadores lógicos || && ! • O comando else-if • O comando switch • O operador condicional ternário ? : 05/07/2023 Professor Paulo Nunes 4
  • 5. Verdadeiro e Falso em C • Para determinar o curso de uma ação, muitos comandos contam com um teste condicional; • Um teste condicional utiliza expressões condicionais para chegar a um valor verdadeiro ou falso; • Para a linguagem C, um valor condicional verdadeiro, é qualquer valor diferente de zero, incluindo os números negativos; • Um valor falso é zero. 05/07/2023 Professor Paulo Nunes 5
  • 6. if • Leva o computador a uma tomada de decisão simples. • Sintaxe: if(teste lógico) <comando>; • Onde: • teste lógico é um valor ou expressão lógica; • comando é o comando que será executado caso teste lógico seja verdadeiro. 05/07/2023 Professor Paulo Nunes 6
  • 7. Exemplo 01 if 05/07/2023 Professor Paulo Nunes 7 Este programa recebe um número e exibe seu valor absoluto. Testa se o número digitado é menor que zero. Comando executado caso o teste seja verdadeiro. Inverte o sinal do número. Comando executado caso o teste seja falso.
  • 8. Exemplo 02 if 05/07/2023 Professor Paulo Nunes 8 O programa imprime uma mensagem caso seja digitada a letra ‘R’. Comando executado apenas se for digitada a letra ‘R’.
  • 9. Exemplo 03 if 05/07/2023 Professor Paulo Nunes 9 Este programa conta o número de caracteres e palavras em uma frase. Recebe a digitação até que [ENTER] seja pressionada. Verifica se espaço em branco foi digitado, indicando uma palavra.
  • 10. Construção if-else • Um comando if simples executa uma única instrução ou grupo de instruções, caso o teste lógico seja verdadeiro e nenhuma caso seja falso; • Associando o comando else ao if, poderemos executar uma ou um grupo de instruções se o teste lógico do if for falso. • Sintaxe: if(teste lógico) <comando 1>; else <comando 2>; 05/07/2023 Professor Paulo Nunes 10
  • 11. Exemplo 01 if-else • Imagine que você precisa determinar se um número é par ou impar. A maneira para se fazer isso é testando o resto da divisão desse número por 2, se o resto for “0” o número é par, se for diferente de “0”, é impar. Veja o exemplo a seguir utilizando apenas com o comando if: 05/07/2023 Professor Paulo Nunes 11
  • 12. Exemplo 01 if-else 05/07/2023 Professor Paulo Nunes 12 Foram necessários dois testes if.
  • 13. Exemplo 02 if-else 05/07/2023 Professor Paulo Nunes 13 Teste lógico Comando executado caso teste verdadeiro. Senão for verdadeiro, executa o comando interno ao “else”.
  • 14. Comandos if aninhados • Um comando if pode ser colocado dentro de outro comando if; • Diz-se então que o if mais interno está aninhado; • O comando else se refere sempre ao comando if mais próximo, que está dentro do mesmo bloco do else, e não está associado a outro if. 05/07/2023 Professor Paulo Nunes 14
  • 15. Exemplo 01 if aninhado 05/07/2023 Professor Paulo Nunes 15 Este programa verifica se o caractere digitado é uma letra minúscula. Será executado apenas se ambos os testes forem verdadeiros.
  • 16. Exemplo 02 if aninhado 05/07/2023 Professor Paulo Nunes 16 Este programa gera um número aleatório, e o usuário tenta acertar esse número digitando um outro. Exibe a mensagem de “Errado” e com outro if verifica se o número digitado é maior ou menor que o gerado aleatoriamente.
  • 17. Usando os operadores lógicos • Os operadores lógicos são utilizados para montar expressões lógicas que podem ser utilizadas em comandos como if, while e do-while; • Destes operadores ! é unário e && e || são binários; • Exemplo: • Tomemos as expressões simples expre01 e expre02: • Esses operadores podem ser utilizados para condensar e clarear construções do tipo if-else. 05/07/2023 Professor Paulo Nunes 17 Expressão lógica Resultado expre01 && expre02 Verdadeiro se ambas verdadeiras expre01 || expre02 Verdadeiro se uma ou ambas forem verdadeiras !expre01 Verdadeiro se expre01 falsa e vice-versa.
  • 18. Expressões relacionais compostas • Normalmente as expressões relacionais avaliam apenas uma condição por vez, por exemplo: if(a > b) ou if( nome == ´joão´); • Podemos criar expressões compostas, onde mais de uma condição é analisada na mesma expressão, utilizando os operadores lógicos && (E) e || (OU). 05/07/2023 Professor Paulo Nunes 18
  • 19. Exemplo de expressões compostas • Imagine um programa de notas onde os alunos recebem graduação a partir de uma média e uma frequência. Para estar “Aprovado” , a média deve ser igual ou superior a 7,0 e a frequência igual ou superior a 75%. Podemos montar a seguinte composição: 05/07/2023 Professor Paulo Nunes 19 Instrução “if” composta O operador lógico “&&” para compor a expressão. Só será executado se TODA a expressão for verdadeira, média maior ou igual a 7 e frequência maior ou igual a 75, ambas.
  • 20. Construção else-if • Construção reformatada de ninhos if-else. if(expressão) <comando>; else if(expressão) <comando>; else if(expressão) <comando>; ... else <comando>; 05/07/2023 Professor Paulo Nunes 20
  • 21. Exemplo construção else-if 05/07/2023 Professor Paulo Nunes 21 Este programa executa as quatro operações básicas.
  • 22. switch • Comando de seleção múltipla similar ao else-if; • Testa o valor de uma expressão contra uma lista de constantes inteiras ou caractere; • Quando a uma coincidência nos valores, os comandos associados àquela constante são executados. • Sintaxe: switch(expressão) { case constante1: <comandos> break; case constante2: <comandos> break; ... default: <comandos> } 05/07/2023 Professor Paulo Nunes 22
  • 23. switch • Onde: • switch abre o bloco da estrutura; • case constante_n: é a constante onde o valor da expressão em switch será testada; • <comandos> são os comandos que serão executados em cada case; • break força a saída do bloco switch. • O switch difere do comando if pelo fato de só poder testar igualdades, enquanto if avalia expressões lógicas ou relacionais; 05/07/2023 Professor Paulo Nunes 23
  • 24. Exemplo switch 05/07/2023 Professor Paulo Nunes 24 Este programa executa as quatro operações básicas. Avalia o conteúdo da variável “op”. Caso nenhum dos valores “case” seja encontrado. Seu uso é opcional.
  • 25. Operador condicional ternário ? • Pode ser utilizado em substituição a construções if-else simples; • É chamado de ternário por requerer três operandos; • Sintaxe: expressão1 ? expressão2 : expressão3 • Onde: • expressão1 é a expressão a ser avaliada como verdadeira ou falsa; • expressão2 é a expressão a ser executada no caso de expressão1 verdadeira e se torna o valor da expressão ?; • expressão3 é a expressão a ser executada no caso de expressão1 falsa e se torna o valor da expressão ?. 05/07/2023 Professor Paulo Nunes 25
  • 26. Exemplo de operador ternário 05/07/2023 Professor Paulo Nunes 26 Calcula o quadrado de um número. Expressão avaliada. Caso verdadeira. Caso falsa.
  • 27. Referências • Mizrahi, Victorine Viviane. Treinamento em linguagem C – Módulo 1.São Paulo: McGraw-Hill, 1990. • Schildt, Herbert. C, Completo e Total – 3ª Ed. Revista e Atualizada. São Paulo: Pearson Education do Brasil, 1997. • Stephen G. Kochan. Programming in C – A complete introduction to the C programming language. Third Edition. Indianapolis: Sams Publishing, 2005. 05/07/2023 Professor Paulo Nunes 27