6

Click here to load reader

Tear Curso 01

Embed Size (px)

Citation preview

Page 1: Tear Curso 01

8/16/2019 Tear Curso 01

http://slidepdf.com/reader/full/tear-curso-01 1/6

convertido para foat mas continuaria a ser 1.0. Com o modeladortemos oresultado correto.AUTO AVALIAÇÃOVeja como você está:

Compile o exemplo acima sem usar o modelador, e verifque osresultados.Compile-o novamente usando o modelador e compare a saída com osresultadosanteriores.31

Aula 4 - ESTRUTURAS DE CONTROLE DE FLUXOs estruturas de controle de !uxo s"o #undamentais para qualquerlin$ua$em de pro$rama%"o. &em elas s' (averia uma maneira dopro$rama serexecutado: de cima para )aixo comando por comando. *"o (averiacondi%+es,repeti%+es ou saltos. lin$ua$em C possui diversos comandos decontrole de!uxo. possível resolver todos os pro)lemas sem utiliar todas elas,masdevemos nos lem)rar que a ele$ncia e #acilidade de entendimentode umpro$rama dependem do uso correto das estruturas no local certo.O Comando !  /á introduimos o comando ! . &ua #orma $eral :

if (condição) declaração; express"o, na condi%"o, será avaliada. &e ela #or ero, a declara%"on"oserá executada. &e a condi%"o #or di#erente de ero a declara%"o seráexecutada.qui reapresentamos o exemplo de um uso do comando ! :#include <stdio.h>

int main ()

{

int num;

printf ("Digite um numero: ");

scanf ("%d",num);if (num>!)

printf ("nn$ numero e maior ue !");

if (num&&!)

{

printf ("nn'oce acertoun");

printf ("$ numero e igual a !.");

if (num<!)

printf ("nn$ numero e menor ue !");

return();

- O "l#"

Page 2: Tear Curso 01

8/16/2019 Tear Curso 01

http://slidepdf.com/reader/full/tear-curso-01 2/6

odemos pensar no comando "l#" como sendo um complemento docomando ! . 2 comando ! completo tem a se$uinte #orma $eral:if (condição) declaração_1;

else declaração_2;

express"o da condi%"o será avaliada. &e ela #or di#erente de ero a

declara%"o 1 será executada. &e #or ero a declara%"o 3 seráexecutada. importante nunca esquecer que, quando usamos a estrutura !-"l#",estamos$arantindo que uma das duas declara%+es será executada. *uncaser"oexecutadas as duas ou nen(uma delas. )aixo está um exemplo douso do !"l#"que deve #uncionar como o pro$rama da se%"o anterior.3$4include 5stdio.(6

int main 789int numprint# 7;<i$ite um numero: ;8scan# 7;=d;,>num8i# 7num??1089print# 7;@n@nVoce acertouA@n;8print# 7;2 numero e i$ual a 10.@n;8B

else9print# 7;@n@nVoce errouA@n;8print# 7;2 numero e di#erente de 10.@n;8Breturn708B- O !-"l#"-!  estrutura !-"l#"-! apenas uma extens"o da estrutura !-"l#".&ua#orma $eral pode ser escrita como sendo:

if (condição_1) declaração_1;else if (condição_2) declaração_2;

else if (condição_3) declaração_3;

.

.

.

else if (condição_n) declaração_n;

else declaração_default;

estrutura acima #unciona da se$uinte maneira: o pro$rama come%aatestar as condi%+es come%ando pela 1 e continua a testar at que ele

ac(e uma

Page 3: Tear Curso 01

8/16/2019 Tear Curso 01

http://slidepdf.com/reader/full/tear-curso-01 3/6

express"o cujo resultado dê di#erente de ero. *este caso ele executaadeclara%"o correspondente. &' uma declara%"o será executada, ouseja, s' seráexecutada a declara%"o equivalente  primeira condi%"o que der

di#erente deero. Dltima declara%"o 7de#ault8 a que será executada no caso detodas ascondi%+es darem ero e opcional.33Em exemplo da estrutura acima:#include <stdio.h>

int main ()

{

int num;

printf ("Digite um numero: ");

scanf ("%d",num);if (num>!)

printf ("nn$ numero e maior ue !");

else if (num&&!)

{

printf ("nn'oce acertoun");

printf ("$ numero e igual a !.");

else if (num<!)

printf ("nn$ numero e menor ue !");

return();

- A "%&'"##(o )ond)onalFuando o compilador avalia uma condi%"o, ele quer um valor deretornopara poder tomar a decis"o. Gas esta express"o n"o necessita serumaexpress"o no sentido convencional. Ema variável soin(a pode seruma;express"o; e esta retorna o seu pr'prio valor. Hsto quer dier queteremos asse$uintes express+es:int num;

if (num&) ....

if (num&&) ....

for (i & ; string*i+ & ; i--)

equivalem aint num;

if (num) ....

Fuando o compilador avalia uma condi%"o, ele quer um valor deretornopara poder tomar a decis"o. Gas esta express"o n"o necessita ser

uma

Page 4: Tear Curso 01

8/16/2019 Tear Curso 01

http://slidepdf.com/reader/full/tear-curso-01 4/6

express"o no sentido convencional. Ema variável soin(a pode seruma;express"o; e esta retorna o seu pr'prio valor. Hsto quer dier queteremos asse$uintes express+es:

int num;if (num&) ....

if (num&&) ....

for (i & ; string*i+ & ; i--)

equivalem aint num;

if (num) ....

Fuando o compilador avalia uma condi%"o, ele quer um valor deretornopara poder tomar a decis"o. Gas esta express"o n"o necessita seruma

express"o no sentido convencional. Ema variável soin(a pode seruma;express"o; e esta retorna o seu pr'prio valor. Hsto quer dier queteremos asse$uintes express+es:int num;

if (num&) ....

if (num&&) ....

for (i & ; string*i+ & ; i--)

equivalem aint num;

if (num) ....

Fuando o compilador avalia uma condi%"o, ele quer um valor deretornopara poder tomar a decis"o. Gas esta express"o n"o necessita serumaexpress"o no sentido convencional. Ema variável soin(a pode seruma;express"o; e esta retorna o seu pr'prio valor. Hsto quer dier queteremos asse$uintes express+es:

int num;if (num&) ....

if (num&&) ....

for (i & ; string*i+ & ; i--)

equivalem aint num;

if (num) ....

Fuando o compilador avalia uma condi%"o, ele quer um valor deretornopara poder tomar a decis"o. Gas esta express"o n"o necessita seruma

express"o no sentido convencional. Ema variável soin(a pode seruma

Page 5: Tear Curso 01

8/16/2019 Tear Curso 01

http://slidepdf.com/reader/full/tear-curso-01 5/6

;express"o; e esta retorna o seu pr'prio valor. Hsto quer dier queteremos asse$uintes express+es:int num;

if (num&) ....

if (num&&) ........

for (i & ; string*i+ & ; i--)

equivalem aint num;

if (num) ....

Fuando o compilador avalia uma condi%"o, ele quer um valor deretornopara poder tomar a decis"o. Gas esta express"o n"o necessita serumaexpress"o no sentido convencional. Ema variável soin(a pode ser

uma;express"o; e esta retorna o seu pr'prio valor. Hsto quer dier queteremos asse$uintes express+es:int num;

if (num&) ....

if (num&&) ....

....

for (i & ; string*i+ & ; i--)

equivalem aint num;

if (num) ....

Fuando o compilador avalia uma condi%"o, ele quer um valor deretornopara poder tomar a decis"o. Gas esta express"o n"o necessita serumaexpress"o no sentido convencional. Ema variável soin(a pode seruma;express"o; e esta retorna o seu pr'prio valor. Hsto quer dier queteremos asse$uintes express+es:

int num;if (num&) ....

if (num&&) ....

....

for (i & ; string*i+ & ; i--)

equivalem aint num;

if (num) ....

Fuando o compilador avalia uma condi%"o, ele quer um valor deretornopara poder tomar a decis"o. Gas esta express"o n"o necessita ser

uma

Page 6: Tear Curso 01

8/16/2019 Tear Curso 01

http://slidepdf.com/reader/full/tear-curso-01 6/6

express"o no sentido convencional. Ema variável soin(a pode seruma;express"o; e esta retorna o seu pr'prio valor. Hsto quer dier queteremos asse$uintes express+es:

int num;if (num&) ....

if (num&&) ....

for (i & ; string*i+ & ; i--)

equivalem aint num;

if (num) ....

if (num) ....

for (i & ; string*i+; i--)

Hsto quer dier que podemos simplifcar al$umas express+es simples.- !# ann*ado#

2 ! anin(ado simplesmente um ! dentro da declara%"o de umoutro ! externo. 2 Dnico cuidado que devemos ter o de sa)er exatamente aqual