elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Duda/Error sobre arrays (vectores) en: 2 Diciembre 2015, 13:30 pm
Buenas tardes, he empezado hace poco a aprender a programar en C++ por lo que el error será básico pero me tiene un poco desquiciado.
El ejercicio a realizar es el siguiente:
Realiza  un  programa  que   trabaje   con  un  vector  de  enteros.  El  programa  deberá,  de  manera
secuencial, realizar lo siguiente:
a) Rellenar el vector con elementos introducidos por teclado hasta que el usuario introduzca un
número negativo.
b) Mostrar el contenido del vector.
*El vector tiene un máximo de 100 elementos*

En un principio no me parecía dificultad alguna, exceptuando la detención del programa al introducir un número negativo, ya que no me dejan utilizar "break". Pero al menos intenté hacerlo con 5 elementos a ver si funcionaba.
Todo correcto, hasta que intente crearlo en forma de funciones. Supuse que sería un mínimo error e intente crear el ejercicio con la misma estructura que la función.
Código:
#include<stdio.h>
#define max_v 10

int main(){

int v[max_v];
int i;
int utiles=0;
for (i=0; i<max_v;i++){
        
        printf("[%d] : ", i);
scanf("%i", &v[i]);
         utiles ++;  
                      }
for (i=0; i<=utiles;i++){
    
     printf("Vector[%d]: %d \n", i, v[i]);

}

return 0;

}
El problema es a la hora de llevarlo a funciones.
Incluyo también el mismo intento de programa pero con funciones.
Código:
#include <stdio.h>
#define max_ele 100

int leerVector(int vector){
     int i, utiles=0;
    
      for(i=0; i<max_ele; i++){
         printf("Posicion [%d] : ", i);
         scanf("%d", &vector[i]);
              utiles++;
         return utiles;
                          }
int imprimirVector(int vector[], int utiles){
           int i;
           for(i=0; i<utiles; i++)
           { printf("\nElemento [%d] : %d", i, vector[i]);

                            }
                                            }
int main(){

int vector[max_ele];

int utiles;

utiles = leerVector(vector[]);
imprimirVector(vector, utiles);


return 0;
          }
Mi intuición cree que es debido a la "escritura" de la función, pero he buscado ejemplo o guías y sigue sin funcionar.
Disculpen por el tochopost y gracias de antemano.
Un saludo.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines