Ir ao conteúdo

Posts recomendados

Postado

Bom dia, alguém pode me ajudar? a pergunta é essa: 

Escreva um programa que lê um número inteiro. Através de uma FUNÇÃO verifique se o mesmo é par ou ímpar. A função deve RETORNAR o resultado para que seja impresso pelo programa principal.

Fiz um programa mas o resultado sempre termina em impar claramente tem algum erro de sintaxe mas não consigo descobrir o que é, refiz e fiz diversas vezes. Código está aqui: 

#include <stdio.h>

int par(int a)
{
    int verif, b;
    b = a % 2;
    if (b = 0)
    {
    verif = 2;
    }
        else{
        verif = 1;
        }
    return verif;
}   
    
    
 main (){
    int a,x;
    
    printf("Digite valor:");
    scanf ("\n%d", &a);
    
    
    x = par(a);
    if (x = 2)
    {
        printf("Par");
    }
    else{
        printf("Impar");
    }

    
}

 

Postado

@Vulgo_Lobo  Nos testes If você está usando incorretamente o operador de atribuição =. Para comparar use  ==,

 

Forma correta,

 

if (b == 0)

if (x == 2)

 

Você pode simplificar o código e já retornar na função par o resultado do modulo, p.ex

 

#include <stdio.h>

int par(int n){
    return !(n % 2);
}

int main(){
    int n;
    
    printf("Digite o valor: ");
    scanf("%d",&n);
    
    if(par(n))
        printf("Par\n");
    else
        printf("Impar\n");
    
    return 0;
}

 

  • Curtir 1
  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!