Ir ao conteúdo
  • Cadastre-se

Erro em um exercício de Ponteiro C++


lincolnmqs

Posts recomendados

Estou com dúvida  no seguinte problema:

 

Fazer uma função FATORES que:
a. Recebe 3 parâmetros: um vetor de inteiros, um número inteiro n passado por valor e
outro número x passado como ponteiro.
b. Retorna um número inteiro.
c. Decompõe o número n em fatores primos e armazena-os nas posições do vetor. O
conteúdo de x deve receber o número de fatores primos encontrados. Caso o número de
fatores encontrados seja maior que 10, a função deve retornar 1, do contrário deve
retornar 0.

 

Fiz um código aqui mas não sei se está muito errado, poderiam me ajudar?

 

#include <bits/stdc++.h>

using namespace std;

int n, vet[15], j;

int FATORES(int vet[], int n, int *x){

    int cont1=0, cont2=0;

    for(int j=1; j<=n; j++){
            if(n % j == 0) cont1++;
        }

        if(cont1 == 2){
            for(int j=0; j<15;j++) vet[j] = n;
            cont2++;
        }

        x = vet;

        cont1 = 0;

        if(cont2 > 10) return 1;
        else return 0;
}

int main(){

    int q, *x, y;

    cin >> q;

    for(int i=1; i<=q; i++){
        scanf("%d",&n);

        y = FATORES(vet,n,x);

        for(int i=0; i<15; i++)
            printf("%d\n",*(vet + j));
    }

    return 0;
}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber 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...