• Nenhum resultado encontrado

Linguagem C 2. Estrutura Condicional

N/A
N/A
Protected

Academic year: 2022

Share "Linguagem C 2. Estrutura Condicional"

Copied!
9
0
0

Texto

(1)

11

Linguagem C Linguagem C

2. Estrutura Condicional 2. Estrutura Condicional

Cláudio C.

Cláudio C. Rodrigues Rodrigues

Faculdade da Computação

Faculdade da Computação - - UFU UFU

Objetivo Objetivo

Apresentar

Apresentar os conceitos básicos os conceitos básicos relacionados

relacionados à tomada à tomada de decisão de decisão oferecidos na linguagem

oferecidos na linguagem C, C, tais tais como: como :

valores lógicos

valores lógicos , , operadores relacionais operadores relacionais e e conectivos conectivos

comandos condicionais

comandos condicionais

(2)

Faculdade da Computação Faculdade da Computação --UFUUFU 3

3

Estrutura Condicional Estrutura Condicional

1. 1. Expressões lógicas Expressões lógicas

Operador Relacional Operador Relacional Operador Lógico Operador Lógico

2. 2. Estrutura Condicional Simples Estrutura Condicional Simples 3. 3. Estrutura Condicional Composta Estrutura Condicional Composta 4. 4. Operador condicional Operador condicional

5. 5. Condicionais Aninhados e Encadeados Condicionais Aninhados e Encadeados 6. 6. Estrutura Case Estrutura Case

Faculdade da Computação Faculdade da Computação --UFUUFU 4

4

1. Expressões Lógicas 1. Expressões Lógicas

Em C, não existe um tipo específico Em C, não existe um tipo específico para a representação de valores

para a representação de valores lógicos.

lógicos.

Entretanto, qualquer valor pode ser Entretanto, qualquer valor pode ser interpretado como um valor lógico:

interpretado como um valor lógico:

zero zero representa falso representa falso e qualquer e qualquer outro valor

outro valor representa verdade representa verdade

(3)

Faculdade da Computação Faculdade da Computação --UFUUFU 5

5

Operadores Relacionais Operadores Relacionais

Para

Para gerar gerar um um valor lógico valor lógico , usamos os , usamos os operadores relacionais

operadores relacionais

Operador relacional Resultado x ==y verdade se xfor igual a y

x!= y verdade se xfor diferente de y x <y verdade se xfor menor que y x >y verdade se xfor maior que y

x<=y verdade se xfor menor ou igual a y

x >=y verdade se xfor maior ou igual a y

Operadores Lógicos Operadores Lógicos

AlémAlém dos operadores relacionaisdos operadores relacionais, C , C oferece oferece também

também operadores lógicosoperadores lógicos. Com . Com eleseles, ,

podemos criar expressões lógicas compostas podemos criar expressões lógicas compostas

Operador lógico Resultado

! x verdade se e só se xfor falso

x&&y verdade se e só se x e y forem

verdade

x|| y verdade se e só se x ou y for verdade

(4)

Faculdade da Computação Faculdade da Computação --UFUUFU 7

7

Estrutura Condicional Simples Estrutura Condicional Simples

A estrutura condicional de decisão simples A estrutura condicional de decisão simples serve para escolher um comando para serve para escolher um comando para execução, caso a condição for verdadeira.

execução, caso a condição for verdadeira.

Sintaxe da estrutura condicional simples:

Sintaxe da estrutura condicional simples:

if(if( condição ) condição ) comando1comando1;;

condição comando1

V

F

Faculdade da Computação Faculdade da Computação --UFUUFU 8

8

Estrutura Condicional Composta Estrutura Condicional Composta

A estrutura condicional ou de decisão simples A estrutura condicional ou de decisão simples serve para escolher um entre dois comandos serve para escolher um entre dois comandos alternativos.

alternativos.

A estrutura condicional é codificada como:

A estrutura condicional é codificada como:

if(if( condição ) condição ) comando1comando1;; elseelse comando2;comando2;

condição

comando1 comando2

V F

(5)

Faculdade da Computação Faculdade da Computação --UFUUFU 9

9

Estrutura Condicional Estrutura Condicional Exemplo:

Exemplo:

#include <

#include <stdiostdio.h>.h>

void

void main() main() {{

float a, b, m;

float a, b, m;

printf

printf(“\(“\n Informen Informe duas notas : ”);duas notas : ”);

scanf

scanf(“%f %f”, &a, &b);(“%f %f”, &a, &b);

m = (a+b)/2;

m = (a+b)/2;

if( m >= 7.0 )

if( m >= 7.0 ) printfprintf(“\(“\n n AprovadoAprovado”);”);

else

else printfprintf(“\(“\n Reprovadon Reprovado”);”);

}}

Desafios de Programação:

Desafios de Programação:

P1:Dado um P1:Dado um anoano, , informeinforme se elese ele é é ou não ou não bissexto

bissexto. .

[[DicaDica: um : um anoano é bissextoé bissexto se é divisível porse é divisível por 4 4 mas não por

mas não por 100]100]

P2:Numa empresa pagaP2:Numa empresa paga--se R$ 19,50 a horase R$ 19,50 a hora e e recolhe

recolhe--se parase para o impostoo imposto de rendade renda 10% dos 10% dos salários acima

salários acima de R$ 1500,00. Dado o númerode R$ 1500,00. Dado o número de de horas trabalhadas porhoras trabalhadas por um um funcionário, funcionário,

(6)

Faculdade da Computação Faculdade da Computação --UFUUFU 11

11

Operador Condicional Operador Condicional

C

C oferece tambémoferece também um um operador que operador que proporciona uma

proporciona uma forma mais compactaforma mais compacta de se de se representar decisões

representar decisões simples. O operador simples. O operador condicional

condicional, , cuja sintaxecuja sintaxe éé condição

condição ?? expressão1expressão1 :: expressão2expressão2 Ex.:Ex.:

abs = n>0 ? n : abs = n>0 ? n : --n;n;

Uma vantagem no uso do operador condicional

Uma vantagem no uso do operador condicional ééque, sendo que, sendo um operador, podemos utiliz

um operador, podemos utilizáá--lo em qualquer contexto em lo em qualquer contexto em que uma express

que uma expressãão o éé permitidapermitida..

Faculdade da Computação Faculdade da Computação --UFUUFU 12

12

Condicionais Aninhados e Condicionais Aninhados e Encadeados

Encadeados

estrutura condicional

estrutura condicional serve para selecionarserve para selecionar e e executar

executar um um entre dois comandos entre dois comandos alternativos

alternativos. .

É É possível quepossível que, , algumas vezesalgumas vezes, um , um destes destes comandos alternativos

comandos alternativos ((ouou ambos) sejam ambos) sejam também condicionais

também condicionais. . Nesse caso

Nesse caso, , dizemos quedizemos que o primeiro o primeiro condicional

condicional é o principalé o principal e o outro está e o outro está aninhado

aninhado ou encadeadoou encadeado

(7)

Faculdade da Computação Faculdade da Computação --UFUUFU 13

13

Condicionais Aninhados e Condicionais Aninhados e Encadeados

Encadeados

Sintaxe Sintaxe::

if( condiçãoif( condição)) /* principal *//* principal */

if ...

if ... /* aninhado/* aninhado */*/

else else

if ...

if ... /* encadeado/* encadeado */*/

Problema Problema::

“Dados trDados trêês ns núúmeros verificar se eles podem meros verificar se eles podem representar as medidas dos lados de um tri

representar as medidas dos lados de um triâângulo e, se ngulo e, se puderem, classificar o tri

puderem, classificar o triâângulo em equilngulo em equiláátero, istero, isóósceles sceles ou escaleno

ou escaleno””..

-

-Para que três números representem os ladosPara que três números representem os ladosde um triângulode um triânguloé é necessário que cada

necessário que cada um deles um deles seja menor queseja menor quea soma dos outros doisa soma dos outros dois.. --Um triânguloUm triânguloé equiláteroé equiláterose tem se tem os três lados iguaisos três lados iguais, , isóscelesisósceles se tem se tem apenas dois lados iguais

apenas dois lados iguaise escalenoe escalenose tem se tem todos os lados distintostodos os lados distintos

#include <

#include <stdiostdio.h>.h>

#include <

#include <conioconio.h>.h>

void

void main() {main() { float a, b, c;

float a, b, c;

clrscr();

clrscr();

printf(

printf(““\\nInforme trnInforme trêês ns núúmeros: meros: ““););

scanf

scanf((““%f %f %f%f %f %f””, &a, &b, &c);, &a, &b, &c);

if( a<b+c && b<a+c && c<a+b ) { if( a<b+c && b<a+c && c<a+b ) {

printf(

printf(““\\nÉum trium triâângulo: ngulo: ””););

if( a==b && b==c )

if( a==b && b==c ) printfprintf((““equilequilááterotero””););

else if( a==b || a==c || b==c )

else if( a==b || a==c || b==c ) printfprintf((““isisóóscelessceles””););

else printf(

else printf(““escalenoescaleno””););

}}

(8)

Faculdade da Computação Faculdade da Computação --UFUUFU 15

15

Desafio de Programação Desafio de Programação

P1:Numa faculdadeP1:Numa faculdade, , os alunosos alunos com média com média maior ou igual amaior ou igual a 7,0 7,0 são aprovadossão aprovados, , aquelesaqueles com médiacom média inferior a 3,0 são inferior a 3,0 são reprovados

reprovados e os demais ficame os demais ficam de de recuperaçãorecuperação. . DadasDadas as as duas notas

duas notas de um de um alunoaluno, , informe sua situaçãoinforme sua situação. . EmitirEmitir as as mensagens aprovado

mensagens aprovado, , reprovadoreprovado e e recuperaçãorecuperação, , respectivamente

respectivamente

P2:Dados P2:Dados os coeficientesos coeficientes (a≠(a≠0, b e c) de 0, b e c) de uma equaçãouma equação do do 2o 2o graugrau, , calculecalcule e informe suas raízes reaise informe suas raízes reais, , usandousando a a fórmula

fórmula de Báskarade Báskara::

a

ac b

x , b

2

2 4

2 1

±

= −

Faculdade da Computação Faculdade da Computação --UFUUFU 16

16

Estrutura Switch

Estrutura Switch - - Case Case

A A estruturaestrutura de decisão múltiplade decisão múltipla é bastante é bastante adequada quando precisamos escolher uma adequada quando precisamos escolher uma entre várias alternativas previamente

entre várias alternativas previamente definidas

definidas, , por exemplopor exemplo, num menu. , num menu.

A A decisão múltipladecisão múltipla tem a seguintetem a seguinte sintaxe:sintaxe:

switch(

switch( expressãoexpressão) ) {

{

case constante1 : comando1; break;

case constante1 : comando1; break;

case constante2 : comando2; break;

case constante2 : comando2; break;

...

...

case

case constantenconstanten: : comandoncomandon; break;; break;

default :

default : comandocomando; ; }

}

(9)

Faculdade da Computação Faculdade da Computação --UFUUFU 17

17

Estrutura switch

Estrutura switch- -case case exemplo:

exemplo:

#include <

#include <stdiostdio.h>.h>

void

void main() {main() { intint n;n;

printf(

printf(““\\n Digite um nn Digite um núúmero: mero: ””););

scanf(

scanf(““%d%d””, &n);, &n);

switch( n ) { switch( n ) { case 1:

case 1: putcharputchar('A'); break;('A'); break;

case 3:

case 3: putcharputchar('B');('B');

case 4:

case 4: putcharputchar('C'); break;('C'); break;

default:

default: printfprintf('*');('*');

case 5:

case 5: putcharputchar('D');('D');

}}

putchar

putchar('.'); ('.');

} }

Bibliografia Bibliografia

Pereira, S.L., Linguagem C

Pereira, S.L., Linguagem C – Distribuição gratuitaDistribuição gratuita Schildt

Schildt, H., C , H., C CompletoCompleto e Total, e Total, Editora MakronEditora MakronBooks do Books do Brasil Editora Ltda

Brasil Editora Ltda, 1996., 1996.

Evaristo

Evaristo, J., , J., AprendendoAprendendo a programar programando em a programar programando em linguagem

linguagem C, Book Express, 2001.C, Book Express, 2001.

Mizrahi

Mizrahi, V. V., , V. V., Treinamento em LinguagemTreinamento em Linguagem C, C, Curso Curso Completo

Completo, , MódulosMódulos 1 e 2, 1 e 2, MakronMakron Books do Brasil Books do Brasil Editora Ltda

Editora Ltda,1990.,1990.

Kernighan

Kernighan, B.W & Ritchie, D. M., C a , B.W & Ritchie, D. M., C a LinguagemLinguagem de de Programação

Programação, , EditoraEditora Campus, 1986.Campus, 1986.

Referências

Documentos relacionados

Observa-se que, sistematicamente, em 2001, para o Brasil e todas as regiões, os resultados de desempenho em Língua Portuguesa dos alunos de 4 a série que estudam em escolas da

O Ministério da Cultura, por meio da Secretaria de Políticas Culturais, e a Coordenação de Aperfeiçoamento de Pessoal de Nível Superior, por meio da Diretoria de Programas e Bolsas

O(A) participante deve estar ciente de que os resumos selecionados para as sessões temáticas deverão ser apresentados na modalidade Oral, não importando a forma como haviam

Deste modo, o adequado zoneamento e sua observância são fundamentais para a conciliação da preservação ou conservação de espécies, hábitats e paisagens dentre outras e

Nos tempos atuais, ao nos referirmos à profissão docente, ao ser professor, o que pensamos Uma profissão indesejada por muitos, social e economicamente desvalorizada Podemos dizer que

The aim of the present study was to evaluate the microscopic structure and chemical composition of titanium dental implants removed from patients in cases of implant failure and

O CES é constituído por 54 itens, destinados a avaliar: (a) cinco tipos de crenças, a saber: (a1) Estatuto de Emprego - avalia até que ponto são favoráveis, as

ANEXO VI: Entrevista Semi-estrurada B, respondida pelos professores que destacaram que o tema "florestamento" no RS, não havia repercutido na escola: Durante encontro de formação