Home   Artículos   Recursos   Foros   
Artíclos recientes publicados en Latindevelopers:
Visual C++: NSDoubleEdit: Un control para el manejo de números decimales en Visual C++.
Visual C++: Implementando una Calculadora en Visual C++
Visual C++: CCommandLine: Una clase para el uso de la linea de comando
Visual C++: Una clase para el manejo del Registro

Arrays con varias variables.

Preguntas y respuestas sobre el lenguaje de programacion C/C++

Arrays con varias variables.

Notapor Liwk el Mié Mar 05, 2008 9:08 am

Hola.
Estoy teniendo un problema con un programa que estoy haciendo con vectores (para definir polinomios).
No soy para nada una experta en esto, por lo que estoy bastante segura de que mi problema es conceptual, espero que puedan ayudarme.

En el programa se definen los coeficientes de un polinomio por medio de un vector:
i.e.

Código: Seleccionar todo
int i=0;
   double vector[50]={0};


   printf("\n\n\n\tGrado del polinomio = ");
   scanf("%d", &n);
   printf("\n\n\tCoeficientes:");

   while(i<=n)
   {
       printf("\n\n\t\ta(%d) = ",i);
       scanf("%f", &vector[i]);
       i=i+1;
   }


Pude haber usado un for para esto, pero en fin. Ese no es el punto ahora, aunque si es eso, pues claro que lo cambio.

Y bueno, ahora quiero usar el "vector[]" que obtuve en otras operaciones, por ejemplo:

Código: Seleccionar todo
               while(j<=N)
   {   
      while(k<=n)
      {
         g=g+vector[k]*pow(pi,k);
         f=f+vector[k]*pow(g,k);
         k=k+1;
         printf("\n\n%f\n%f\n%f", g,f,k);
      }

      [...]

Pero no funciona.

¿Estoy obligada a usar la misma variable "i" todo el tiempo?
Supongo que sí, porque así fue como se guardaron los coeficientes arriba.
Pero si se supone que la variabe (en vector[i]) sólo indica la posición en el Array, ¿por qué no puedo usar otras variables que empiecen como un contador diferente? Es que no encuentro la forma de escribir el código sin usar dos contadores diferentes en el vector.
En fin.
Gracias.
Liwk
Novato
Novato
 
Mensajes: 2
Registrado: Mié Mar 05, 2008 8:54 am

Re: Arrays con varias variables.

Notapor Laopecillo! el Mié Mar 05, 2008 9:37 am

Hola Liwk

Desde luego que puedes usar otras variables incluso la propia i siempre y cuando el bucle anterior en que la estes usando haya llegado a su fin.
asi no tendrias que declarar mas variables.

Pero viendo tu ejemplo solo te tocaria pues declarar tanto j como K
int j=0;
int k=0;

si ya saliste fuera del bucle donde esta i solo bastaria con volver a inicializarla
i=0; antes del While proximo en este ejemplo que pusiste de segundo si tica usar dos variables pues tienes un bucle anidado.

espero haber entendido tu pregunta y estar respondiendo claramente Bye saludos amiga

while(j<=N)
{
while(k<=n)
{
g=g+vector[k]*pow(pi,k);
f=f+vector[k]*pow(g,k);
k=k+1;
printf("\n\n%f\n%f\n%f", g,f,k);
}
Laopecillo!
Novato
Novato
 
Mensajes: 13
Registrado: Mar Nov 13, 2007 10:14 am
Ubicación: Panama

Re: Arrays con varias variables.

Notapor yalmar el Mié Mar 05, 2008 8:55 pm

Claro, c o c++ son lenguajes absolutamente flexibles, podiendose usar tantas variables como sean necesarias.
C++ es mas flexible aun, ya que se tiene el concepto de ambito, entonces variables pueden tener el mismo nombre en diferentes ambitos, considerandose siempre el ambito local, ejemplo
Código: Seleccionar todo
int i;
for (int j = o; j<5; ++j){
int i;
...
}


aqui la variable i dentro del for no es la misma que la de fuera, y el compilador acepta perfectamente este código. Este no es recomendable, hasta por legibilidad, entonces es mejor usar variables diferentes e inclusive con nombres descriptivos.


salu2
Avatar de Usuario
yalmar
Programador
Programador
 
Mensajes: 235
Registrado: Mié Jun 09, 2004 4:13 pm
Ubicación: Brasil

Arrays con varias variables.

Notapor Liwk el Mié Mar 05, 2008 9:40 pm

Hola, nuevamente.
Gracias por sus rápidas respuestas.
¡Ahora ya funciona!
Un saludo.
Liwk
Novato
Novato
 
Mensajes: 2
Registrado: Mié Mar 05, 2008 8:54 am


Volver a C/C++

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado