Jump to content
Fórum Script Brasil
  • 0

função utilizando vetor?


binhole

Question

Escreva um programa em C, que contenha uma função que receba um valor correspondente ao número de termos e gere a série: -1 2 -3 4 -5 ... (gerar apenas 10 elementos)

por favor verifiquem meu codigo.. o programa inf o seguintes erros

Compilador: Default compiler

Executando g++.exe...

g++.exe "D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.cpp" -o "D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.exe" -g3 -I"C:\Dev-Cpp\lib\gcc\mingw32\3.4.2\include" -I"C:\Dev-Cpp\include\c++\3.4.2\backward" -I"C:\Dev-Cpp\include\c++\3.4.2\mingw32" -I"C:\Dev-Cpp\include\c++\3.4.2" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib" -g3

D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.cpp: In function `int main()':

D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.cpp:10: error: invalid conversion from `int' to `int*'

D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.cpp:10: error: initializing argument 1 of `int impar(int*)'

D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.cpp: At global scope:

D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.cpp:20: error: `i' was not declared in this scope

D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.cpp: In function `int impar()':

D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.cpp:22: error: `i' undeclared (first use this function)

D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.cpp:22: error: (Each undeclared identifier is reported only once for each function it appears in.)

D:\Documentos - binho\sistemas da Informação 2ª ano\Algoritmo e Estrutura de Dados\exercicio 10.cpp:24: error: `vet' undeclared (first use this function)

Execução terminada

segue codigo

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

int impar(int vet[10]);

main ()
{
    int funcao,i,j,vet[10];

funcao=impar(vet[i]);

printf("%d",funcao);

 printf("\n\n");

system("pause");

}

int impar(int vet[i])
{
for (i=1;i<=10;i++)
{
    if (vet[i] %2=1)
    {printf("%d",vet[i]*-i);}
    else
    {printf("%d",vet[i]);} 
}       
    

return(vet[i]);

}

obrigado!

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Binhole, eu não saberia dizer onde é que você acertou no código, pra ser sincero.

Tá tudo errado.

int impar(int vet[10]);
Você não pode passar um vetor como argumento na função... O vetor é um ponteiro constante, ele deve ser passado como um ponteiro...
int funcao,i,j,vet[10];
funcao=impar(vet[i]);
printf("%d",funcao);
Você inicializa a variável i e chama a função impar passando um elemento do vetor que não existe, pois i não tem um valor. Mesmo se passasse um inteiro:
int impar(int vet[i])
{
for (i=1;i<=10;i++)
{
if (vet[i] %2=1)
{printf("%d",vet[i]*-i);}
else
{printf("%d",vet[i]);}
}
return(vet[i]);
}
você pega um argumento que não pode ser usado, e ainda compara um if com apenas um sinal de igual, ou seja, está atribuindo ao invés de comparar. Fora que você começa um loop num vetor que não tem nada dentro!!!! Além de não precisar do stdlib no include.... Cara, o que você quer é mais ou menos isso:
#include <stdio.h>

void negImpar(int *v);
void imprime(int *v);

int main (){

    int vet[10];
    negImpar(vet);
    imprime(vet);

return 0;
}

void negImpar(int *v){
int i;    
    for (i=0;i<=10;i++){
        if (i%2==1)
        v[i]=-i;
        else
        v[i]=i;
    }
}

void imprime(int *v){
     int i;
     
         for(i=1; i<11; i++)
         printf("%d,", v[i]);
     
     printf("%d\n\n", v[10]);
     system("pause");     
}

A função negImpar cria o vetor de 10 posições e coloca números impares negativos nele.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152k
    • Total Posts
      651.8k
×
×
  • Create New...