You are on page 1of 3

Voc consegue resolver diversos problemas apenas usando if , else e variveis mas isso no

significa que o cdigo ser otimizado muito pelo contrrio ele ficar at extensivo(m prtica de
programao).
Para usar essas funes necessrio a biblioteca padro do C (stdio.h)
Vou dar um exemplo prtico de como usar IF e else.
Notao:
Quero identificar se o primeiro nmero digitado par ou impar e quero saber se a soma do
primeiro valor digitado com o segundo vai dar um resultado par ou impar.

Veja mais: http://www.cheatsbrasil.org/local/tecnicas-de-programacao/109069-funcao-if-else-ifelse-c.html?s=1c10c766e70fb4398466dadd75728532#ixzz3bB8Yll18


#include <stdio.h>
#include <stdlib.h>
int main ()
{
int n1, n2;
printf ("Digite o primeiro valor, e o segundo sendo estes valores
inteiro. \n");
scanf ("%d %d", &n1, &n2);
if (n1%2==0)
{
printf ("O primeiro valor e par\n");
}
else if(n1%2!=0)
{
printf ("O primeiro valor e impar");
}
printf (" \n\nA soma dos valores acima e %d ", n1+n2);
if ((n1+n2)%2==0)
{
printf ("(Par)\n\n\n");
}
else
{
printf ("(impar)\n\n\n");
system ("pause");
return 0;
}

Veja mais: http://www.cheatsbrasil.org/local/tecnicas-de-programacao/109069-funcao-if-else-ifelse-c.html?s=1c10c766e70fb4398466dadd75728532#ixzz3bB8jrJRA


Vamos entender.
O enunciado pediu para dizer se o primeiro valor capturado par ou impar ou seja, se(if) a
diviso do primeiro valor por 2 for igual a zero(0) o valor ser par se no ser(else if) impar.

O problema pediu, tambm que voc verifique se a soma desses dois valores capturados
par ou impar, para no haver discordncia decidi imprimir a soma desses valores(boa
prtica de programao), eu poderia simplesmente dizer se ou no par.

Veja mais: http://www.cheatsbrasil.org/local/tecnicas-de-programacao/109069-funcao-if-else-ifelse-c.html?s=1c10c766e70fb4398466dadd75728532#ixzz3bB9B5tx1


int n1, n2; printf ("Digite o primeiro valor, e o segundo sendo eles valores inteiro. \n"); scanf
("%d %d", &n1, &n2); ...
Veja mais: http://www.cheatsbrasil.org/local/tecnicas-de-programacao/109069-funcao-if-else-ifelse-c.html?s=1c10c766e70fb4398466dadd75728532#ixzz3bB9Kmkzg
No momento acima, o programa vai fazer uma pergunta(printf) e vai capturar o que o usurio
digitar via teclado(scanf). Usei duas variveis nesse processo, N1(primeiro valor)
e N2(segundo valor), sendo os valores inteiros, e por esse motivo o aplicativo disse para o
usurio digitar valores inteiros, caso o usurio colocasse um valor como 2.4 daria discordncia
com o aplicativo todo, uma vez que as variveis possuem tipo inteiro e no real. A quebra de
linha "\N" extremamente necessrio para conformidade do que est sendo pedido.A quebra
de linha varia de acordo com o necessrio. Como quero capturar 2 valores eu usei dois "%d
%d" e sua correspondente varivel. Eu poderia usar dua scanf exemplo:
Cdigo:

Veja mais: http://www.cheatsbrasil.org/local/tecnicas-de-programacao/109069-funcao-if-else-ifelse-c.html?s=1c10c766e70fb4398466dadd75728532#ixzz3bB9UMbSi


scanf ("%d", &n1);
scanf ("%d", &n2);

Cansativo, no? bem melhor colocar apenas 1 linha do que duas isso vai otimizar seu cdigo
e qualquer otimizao por mais insignificante que seja sempre bem-vinda, acredite.
Veja mais: http://www.cheatsbrasil.org/local/tecnicas-de-programacao/109069-funcao-if-else-ifelse-c.html?s=1c10c766e70fb4398466dadd75728532#ixzz3bB9dQoaa
if (n1%2==0)
{ printf ("O primeiro valor e par\n"); }
else if(n1%2!=0) {
printf ("O primeiro valor e impar");
} ...
Veja mais: http://www.cheatsbrasil.org/local/tecnicas-de-programacao/109069-funcao-if-else-ifelse-c.html?s=1c10c766e70fb4398466dadd75728532#ixzz3bB9iu9ty
Chegamos nas operaes, j estvamos no corpo do cdigo.
O primeiro IF diz que se o resto da diviso de n1 com 2 for igual a 0 o primeiro valor digitado
pelo usurio par. O else if diz, se no e coloca uma condio(n1%2!=0), dizendo que se o
resto da diviso de n1 com 2 for diferente de 0 o valor ser impar.
Sempre envolvendo o printf com chaves abertas e fechada para dizer o fim daquela condio
se no o compilador no saberia identificar o que de quem.

em algoritmo
Cdigo:

Veja mais: http://www.cheatsbrasil.org/local/tecnicas-de-programacao/109069-funcao-if-else-ifelse-c.html?s=1c10c766e70fb4398466dadd75728532#ixzz3bBA2yH9c

Se (n1 mod 2 for igual a 0) imprima ("primeiro valor par") seno imprima("primeiro valor impar")
fim=
printf (" \n\nA soma dos valores acima e %d ", n1+n2);
if ((n1+n2)%2==0) {
printf ("(Par)\n\n\n"); }
else { printf ("(impar)\n\n\n"); }
Nessa ltima parte do cdigo estou interpretando o segundo pedido do enunciado, "..diga se a
soma dos dois valores capturados par ou mpar."
Na funo auxiliar printf eu uso o valor de impresso da soma de n1 com n2 e abaixo eu
instruo a condio verdade ou falsa.
Quando usei o if tive que usar () para dizer que a expresso dentro do IF teria que iniciar
primeiramente com a soma de n1 com ne e aps a diviso do resultado com 2 e se o resto for
igual a 0(zero) o valor ser par.
No segundo caso usei apenas "else" sem instruir o "else if". Num primeiro momento, quando
eu digo se o primeiro valor digitado par ou impar poderia simplesmente dizer if e else sem
usar o if else, mas em casos que existam mais de 2 condio necessrio usar o else if
simplesmente para dizer ao programa o que fazer se a primeira condio for falsa, em outras
palavras usamos else como ltima condio.

Veja mais: http://www.cheatsbrasil.org/local/tecnicas-de-programacao/109069-funcao-if-else-ifelse-c.html?s=1c10c766e70fb4398466dadd75728532#ixzz3bBAWwjmb

You might also like