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

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda sobre utilización de variables
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Duda sobre utilización de variables  (Leído 4,907 veces)
Bl4ck3lf

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Duda sobre utilización de variables
« en: 20 Diciembre 2012, 16:11 pm »

Hola, espero no ser redundante en la pregunta ya que he buscado por el foro y por google para no molestar a nadie pero no he obtenido respuesta.

El punto es que la duda es una chorrada, no obstante no consigo solucionarla. Lo que quiero es usar una variable declarada en medio de un for. Para que me entendáis:

Código
  1. #include <stdio.h>
  2.  
  3. main(){
  4.       int num1, num2, num3, num4, num5;
  5.       int i=0;
  6.       for(i=0;i<6;i++){
  7.       printf("\nValor %d:",i);
  8.       scanf("%d", num[i]);
  9.       num[i]=getch();
  10.       getch();
  11.       printf("Valores: %d", num[i]);                
  12.       }    
  13. }
  14.  
Lo que quiero es no tener que ir guardando en las variables una por una, sino que num vaya tomando valor 1,2,3...etc. Espero me hayáis entendido, gracias y disculpad la chorrada!


En línea

Dicen que el saber no ocupa lugar...
Danyfirex


Desconectado Desconectado

Mensajes: 493


My Dear Mizuho


Ver Perfil
Re: Duda sobre utilización de variables
« Respuesta #1 en: 20 Diciembre 2012, 16:35 pm »

te recomiendo que lo hagas con array algo así.


Código
  1. #include <stdio.h>
  2.  
  3.  
  4. int main ()
  5. {
  6.   int value [10],i; // declarar array
  7.   for (i = 0; i<10; i++)
  8.    {
  9.       value [i] = i; // cargamos el array
  10.    }
  11.   for (i = 0; i<10; i++)
  12.    {
  13.       printf ("\n%d",value [i]); // mostramos el array
  14.    }
  15.    getch();
  16.   return 0;
  17.  
  18. }
  19.  

saludos


En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Duda sobre utilización de variables
« Respuesta #2 en: 20 Diciembre 2012, 16:44 pm »


Lo que quiero es no tener que ir guardando en las variables una por una, sino que num vaya tomando valor 1,2,3...etc.
Código
  1. #include <stdio.h>
  2.  
  3. main(){
  4.  int num[5]={0};
  5.  int i=0;
  6.  for(i=0;i<5;i++){
  7.    printf("\nValor %d:",i+1);
  8.    num[i]=i+1;
  9.    printf("Valores: %d", num[i]);
  10.  }
  11. }
  12.  
Saluditos!.
En línea

Bl4ck3lf

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: Duda sobre utilización de variables
« Respuesta #3 en: 20 Diciembre 2012, 16:47 pm »

Amigo gracias por la pronta respuesta pero creo que no has comprendido la pregunta, igual soy yo el que se ha expresado mal.
Código
  1. scanf("%d",&num ?? );

Como hago para que después de &num lea el valor también de i, de tal manera que la salida sea: num1, num2, num3, num4, num5.

En shell script sería asi:
Código
  1. for I in `seq 1 5`#Creo una secuencia de 1 a 5
  2. echo "Valor: "#Le pido al usuario un valor
  3. read num$I#guardo el valor en la variable num+1(el cual se incrementa cada vuelta del for)
  4. done

Con lo que guardaría el valor que me pasen por teclado en num1, num2...etc. Un saludo y gracias!
« Última modificación: 20 Diciembre 2012, 17:00 pm por Bl4ck3lf » En línea

Dicen que el saber no ocupa lugar...
SokarTefnut

Desconectado Desconectado

Mensajes: 124



Ver Perfil
Re: Duda sobre utilización de variables
« Respuesta #4 en: 20 Diciembre 2012, 16:50 pm »

Con el programa ejemplo te dará error,ya que intentas usar
Citar
num
(en la linea 11), sin haber declarado el array.

Yo cambiaría la linea 4 por int num[5]; para declaralo y no modificar nada mas del programa.




 
En línea

"Saber romper medidas de seguridad no hace que seas hacker, al igual que saber hacer un puente en un coche no te convierte en un ingeniero de automoción"
-- Eric Raymond -- http://en.wikipedia.org/wiki/Eric_S._Raymond
Bl4ck3lf

Desconectado Desconectado

Mensajes: 18



Ver Perfil
Re: Duda sobre utilización de variables
« Respuesta #5 en: 20 Diciembre 2012, 16:54 pm »

Chicos gracias por las respuestas, releyendo mi pregunta he visto que he sido yo el que se ha expresado mal.

Este es el ejercicio:

Escribir un programa que lea 5 números y encuentre el promedio, el máximo y el mínimo de esos valores.

Es simple de hacer, lo se, lo que quiero aprender a hacer es con un for pedirle al usuario los 5 números y que los guarde en su respectiva variable para poder trabajar después con ellas, no ir preguntando y guardando una por una, que es mas código, menos profesional y mas engorroso.
En línea

Dicen que el saber no ocupa lugar...
rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Duda sobre utilización de variables
« Respuesta #6 en: 20 Diciembre 2012, 17:13 pm »

lo que quiero aprender a hacer es con un for pedirle al usuario los 5 números y que los guarde en su respectiva variable para poder trabajar después con ellas, no ir preguntando y guardando una por una, que es mas código, menos profesional y mas engorroso.
En C no puedes generar el nombre de una variable en tiempo de ejecución (como muestras en el script con num + 1 ==> num1, num + 2 ==> num2, etc.).

En su lugar y como ya te comentaron debes utilizar un array, en cada iteracion del bucle utilizas "num[ i ]" para indicar el objeto con indice "i" en el array "num".

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
twins

Desconectado Desconectado

Mensajes: 54


Ver Perfil
Re: Duda sobre utilización de variables
« Respuesta #7 en: 20 Diciembre 2012, 17:43 pm »

Coma ya te han comentado en c se deben declarar todas las variables antes de utilizarlas por lo tanto si queieres guardar 5 valores por separado debes de declarar 5 variables, por suerte en c existen los arrays o vectores que simplifican este tema y para acceder a un valor solo debes de conocer su posicion, saludos y asi es como queda el codigo  :)
Código
  1. #include<stdio.h>
  2. int main(void){
  3. int i,vector[5],mayor,menor;
  4. float promedio=0;
  5. for(i=0;i<5;i++){//llena el vector
  6. printf("ingrese valor\n");
  7. scanf("%i",&vector[i]);
  8. }
  9. for(i=0;i<5;i++)//imprime el vector
  10. printf("[%i]",vector[i]);
  11. puts("\n");
  12. mayor=vector[0];
  13. menor=vector[0];
  14. for(i=0;i<5;i++){
  15. promedio+=vector[i];
  16. if(vector[i]>mayor)//busca el elemento mayor
  17. mayor=vector[i];
  18. if(vector[i]<menor)//busca el elemento menor
  19. menor=vector[i];
  20. }
  21. printf("el mayor es %i\n",mayor);
  22. printf("el menor es %i\n",menor);
  23. printf("el promedio es %.2f\n",promedio/5);
  24.        getchar();
  25. return(0);
  26. }
  27.  
« Última modificación: 20 Diciembre 2012, 17:46 pm por twins » En línea

Danyfirex


Desconectado Desconectado

Mensajes: 493


My Dear Mizuho


Ver Perfil
Re: Duda sobre utilización de variables
« Respuesta #8 en: 20 Diciembre 2012, 17:45 pm »

Coma ya te han comentado en c se deben declarar todas las variables antes de utilizarlas por lo tanto si queieres guardar 5 valores por separado debes de declarar 5 variables, por suerte en c existen los arrays o vectores que simplifican este tema y para acceder a un valor solo debes de conocer su posicion, saludos y asi es como queda el codigo  :)
Código
  1. #include<stdio.h>
  2. int main(void){
  3. int i,vector[5],mayor,menor;
  4. float promedio=0;
  5. for(i=0;i<5;i++){//llena el vector
  6. printf("ingrese valor\n");
  7. scanf("%i",&vector[i]);
  8. }
  9. for(i=0;i<5;i++)//imprime el vector
  10. printf("[%i]",vector[i]);
  11. puts("\n");
  12. mayor=vector[0];
  13. menor=vector[0];
  14. for(i=0;i<5;i++){
  15. promedio+=vector[i];
  16. if(vector[i]>mayor)//busca el elemento mayor
  17. mayor=vector[i];
  18. if(vector[i]<menor)//busca el elemento menor
  19. menor=vector[i];
  20. }
  21. printf("el mayor es %i\n",mayor);
  22. printf("el menor es %i\n",menor);
  23. printf("el promedio es %.2f\n",promedio/5);
  24. return(0);
  25. }
  26.  

Te me adelantaste :S.

por cierto creo que declararte 6 valores en tu array. saludos
En línea

twins

Desconectado Desconectado

Mensajes: 54


Ver Perfil
Re: Duda sobre utilización de variables
« Respuesta #9 en: 20 Diciembre 2012, 17:53 pm »

No es posible todo esta comprobado  ;) talvez lo dices por esto for(i=0;i<5;i++) pues el 5<5 eso es falso por lo tanto no tomara el valor 5.
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
duda sobre la utilizacion del foro
Sugerencias y dudas sobre el Foro
Nyman 3 2,300 Último mensaje 19 Junio 2004, 01:41 am
por Nyman
Duda sobre legalidad de utilizacion de CURL
PHP
JungleBoogie 2 2,592 Último mensaje 6 Febrero 2011, 19:01 pm
por JungleBoogie
Tengo una duda sobre el significado y la utilización de Latencia
Dudas Generales
Senior++ 2 4,274 Último mensaje 28 Agosto 2011, 17:15 pm
por Senior++
Duda sobre variables y constantes
PHP
Senior++ 2 2,256 Último mensaje 21 Noviembre 2013, 19:48 pm
por Senior++
Duda sobre variables
PHP
Grave 3 2,246 Último mensaje 17 Junio 2014, 17:18 pm
por Grave
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines