Programação Progressiva
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Programação Progressiva

Fórum para dúvidas dos sites: Programação Progressiva, Java Progressivo, C Progressivo


Você não está conectado. Conecte-se ou registre-se

Decisao em c

Ir para baixo  Mensagem [Página 1 de 1]

1Decisao em c Empty Decisao em c Qua Jul 06, 2016 12:14 pm

Wellington Gomes


Convidado


Olá pessoa,
Alguém aí pode me ajudar nesse código, não consigo chegar ao resultado que preciso.obrigado.


Codifique, compile e execute um programa em C que receba dois números inteiros positivos e
descubra o maior e o menor deles. No final, o programa deve mostrar o maior e o menor dos números
informando para cada um, se o número é par ou impar.

Entrada
A entrada é composta por uma linha contendo dois números inteiros e positivos.
Saída
Seu programa vai gerar uma linha de saída falando se o número é maior, par ou ímpar, qual é o menor e se é
par ou ímpar. Todas as saídas devem estar com quebra de linha no final da sentença, menos a última.


#include <stdio.h>
#include <stdlib.h>
int main(){
int x,y;
int par,impar;
printf (" Digite dois numeros\n ");
scanf ("%d%d",&x,&y);
if (x>y && x%2==0){
printf ("%d e maior e par",x);
}if (x<y && x%2==1){
printf ("%d e menor e impar",x);
}if (y>x && y%2==1){
printf ("%d e maior e impar",x);
}
if (y<x && y%2==0){
printf ("%d e menor e par",x);
}
return 0;
}

2Decisao em c Empty Re: Decisao em c Qua Jul 27, 2016 1:41 am

ghostEth0



Wellington Gomes, boa noite.

Você pode usar o código abaixo:


Código:
#include <stdio.h>

int main(void){

int x,y;

printf("Escreva o primeiro número: \n");
scanf("%d", &x);

printf("Escreva o segundo número: \n");
scanf("%d", &y);

//verificação das variáveis
if (x > y)
{
 printf("O valor %d é maior que %d\n", x, y);
}
else
{
 printf("O valor %d é maior que %d\n", y, x);
}


//verificando se as variáveis são IMPARES ou PARES
if (x%2 > 0)
{
 printf("O número %d é IMPAR\n", x);
}else{
 printf("O número %d é PAR\n", x);
}


if (y%2 > 0)
{
 printf("O número %d é IMPAR\n", y);
}else{
 printf("O número %d é PAR\n", y);
}
return 0;

}


Explicação:

É feito uma verificação básica entre as duas variáveis: se X for maior que Y, informe que X é MAIOR que Y, caso não, informe que Y é MAIOR que X. 

Logo após, você pode usar o operador "%", que fará a divisão dos números e retornará o RESTO da divisão. Aí que você pode fazer essa operação direto e comparar: 

SE X % 2 > 0 ENTÃO X é IMPAR
SENÃO, x É PAR

Todo número que, dividido por 2, sobre algo, é PAR. Essa lógica também é aplicada na comparação do valor de Y: 

SE y % 2 > 0 ENTÃO X é IMPAR
SENÃO, y É PAR


Não é necessário declarar mais outras duas variáveis para compará-las depois, isso faria um uso de memória desnecessário. 

O resultado em minha máquina foi: 

ghost@eth0:~/Área de Trabalho$ ./forum 
Escreva o primeiro número: 
75
Escreva o segundo número: 
10
O valor 75 é maior que 10
O número 75 é IMPAR
O número 10 é PAR

Da pra economizar algumas linhas ainda neste código, mas, para este caso, isso basta.


Espero ter ajudado!

Ir para o topo  Mensagem [Página 1 de 1]

Permissões neste sub-fórum
Não podes responder a tópicos