Ir ao conteúdo
  • Cadastre-se

Quadrado perfieto


Fabinhoncn

Posts recomendados

Preciso resolver um exercicio sobre função

O algoritimo recebe um numero e retorna v se ele for um quadrado perfeito e f se nao for...fiz o q eu pensei ser mas ele so esta me retornando v

#include <stdio.h>

#include <math.h>

int func (int num);

int main(int x)

{

int num;

char resp;

printf("informe um numero inteiro");

scanf("%d",&num);

resp=func(x);

printf("%c",resp);

}

int func (int num)

{

int quad;

quad=sqrt(num);

if(num==(quad*quad)){

return ('v');

}else{

return ('f');

}

}

Link para o comentário
Compartilhar em outros sites

Bom dia Fabinho,

Sobre o seu problema eu não entendi algumas coisas que você acabou fazendo, mas compilei o programa aqui e fiz umas modificações e não vi problema nenhum com ele.

Na verdade foram alguns erros de sintaxe e por exemplo, você colocou o valor de retorno da função como int, tente char :D


#include <stdio.h>
#include <math.h>
#include <stdlib.h>

char func (int num);

int main() {
int num;
char resposta;
printf("Informe um numero inteiro: ");
scanf("%d",&num);
resposta = func(num);
printf("\n%c \n\n", resposta);
system("pause");
}

char func (int num) {
int quad;

quad = sqrt(num);

if(num ==(quad*quad)){
return ('v');
}
else {
return ('f');
}
}

Tente verificar o código dessa forma como está acima.

Se tiver alguma duvida poste

Att

Link para o comentário
Compartilhar em outros sites

Olá ai valeu pela a ajuda mas é o seguinte ele esta compilando normalmente mas o que eu nao consigo e criar a função para ver se o numero digitado e um quadrado perfeito (quadrado perfeito seria numero que tem raiz por exemplo o 9 e um quadrado perfeito pois sua raiz e 3 ja o cinco nao e pois nao tem raiz) sendo assim tentei usar esta função

if(num ==(quad*quad)){

mas so da verdadeiro pois a conta sempre vai dar o valor do numero digitado mesmo que for 5.

Resumindo, nao consigo criar a formula do quadrado perfeito

Link para o comentário
Compartilhar em outros sites

Tem que ser um quadrado perfeito de um int?? Então faz assim:


#include <stdio.h>
#include <math.h>
#include <stdlib.h>

char func (int num);

int main() {
int num;
char resposta;
printf("Informe um numero inteiro: ");
scanf("%d",&num);
resposta = func(num);
printf("\n%c \n\n", resposta);
system("pause");
}

char func (int num) {
double quad;
quad = sqrt(num);
if(quad==(int)quad) return ('v');
else return ('f');
}

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!