Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: lalo+12 en 16 Noviembre 2017, 02:28 am



Título: un numero multiplique un vector
Publicado por: lalo+12 en 16 Noviembre 2017, 02:28 am
hola necesito ayuda
quiero que un numero escalar multiplique un vector y el resultado quede guardado en otro vector 
necesito ayuda cuando multiplico el numero escalar por el vector me da 0

mi codigo es:
#include <stdio.h>

void print_vector_int(int *v,int n)
{
    for(int i=0;i<n;++i)
    {
        printf("v[%i] = %i\n",i,v);
    }
}

void inicializa_vector_int(int *v,int n,int x)
{
    for(int i=0;i<n;++i)
    {
        v = x;
    }
}

void inicializa_vector_teclado_int(int *v,int n)
{
    for(int i=0;i<n;++i)
    {
        printf("v[%i] = ",i);
        scanf("%i",&v);
    }
}

void inicializa_valorx_vector_int(int *v,int x,int y)
{
    v
  • = y;
}

void escalar()
{
    int esc=0;
   
    printf("Dame el numero escalar ");
    scanf("%i",&esc);
   
}

void multiplicacion(int n)
{
    int mult=0;
    int vector[]={2,-1,4};
   
          for(int i=0;i<n;++i)
          {
              mult=mult * vector;
          }
    printf("La multiplicacion es %i \n",mult);
}


int main(void)
{
    int n = 0; //Tamaño del arreglo.
    int vector[]={2,-1,4};
   
   
    n = sizeof vector/sizeof (int);     //Se calcula el tamaño del arreglo.
   
    printf("Vector \n");
    print_vector_int(vector,n);
    escalar();
    multiplicacion(n);
   
   
   
    return 0;
}


Título: Re: un numero multiplique un vector
Publicado por: CalgaryCorpus en 16 Noviembre 2017, 07:13 am
Usa
Código
  1. v[i]
no uses
Código
  1. v

La primera expresión es el i-esimo elemento, el segundo es un puntero constante al inicio del arreglo.