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

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  PROFRAMACION EN C
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: PROFRAMACION EN C  (Leído 1,704 veces)
gmojon

Desconectado Desconectado

Mensajes: 6


Ver Perfil
PROFRAMACION EN C
« en: 28 Noviembre 2013, 05:19 am »

Q TAL! SOY ESTUDIANTE DE INGENIERIA AUTOMOTRIZ, LLEVO LA MATERIA DE LOGICA DE PROGRMACION, UTILIZO EL PROGRAMA DEV-C PARA LA MATERIA, EL PROBLEMA ES QUE NO ENTIENDO LA LOGICA!!!

conozco ALGUNAS FUNCIONES Y COMO "ACTUAN" HASTA CIERTO PUNTO, SOLO QUE NO SE KOMO PLANTEAR UN PROBLEMA, KOMO SOLUCIONARLO, VA DESDE EL DIAGRAMA DE FLUJO, EL PSEUDOKODIGO HASTA EL CODIGO FUENTE, PERO KREO Q ENTIENDO UN POKO MAS EN EL CODIGO FUENTE.

PODRIAN FACILITARME ALGUNA AYUDA

OTRO PROBLEMA ES MI PROFESORA, NOS EXPLIKA BIEN ALGNOS EJERCICIOS PERO LLEGA UN MOMENTO EN EL QUE ME PIERDO EN LA EXPLIKACION POR TRATAR DE ENTENDER OTRA KOSA, OJALA PUEDAN AYUDARME! GRACIAS DE ANTEMANO


En línea

gmojon

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: PROFRAMACION EN C
« Respuesta #1 en: 28 Noviembre 2013, 07:20 am »

TENGO QUE REALIZAR UN PROBLEMA!

OBTENER UN VECTOR CON 10 CASILLAS, LLENARLO KON NUMEROS ALEATORIOS, MOSTRARLO EN PANTALLA, OBTENER PROMEDIO

TODO ESTO YA LO LOGRE, AHORA DEBO OBTENER LA VARIANZA Y LA DESVIACION ESTANDAR, TENGO UNA IDEA DE KOMO HACERLO PERO NO LO SE CONCRETAMENTE

DE ANTEMANO GRACIAS PORR LA AYUDA!

______________________________________________
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define TAM 10

int main()
{
    int i, v[TAM];
    float prom, suma, var, dest;
    srand(time(0));
       
    for(i=0; i<TAM; i++)
    {
             v=10+rand()%80;
             printf("\n VECTOR [%d]=%d\n",i , v);
             suma=suma+v;
             prom=suma/TAM;
             var=
             dest=

    }
    printf("\nSUMA = %.2f\n", suma);
    printf("\nPROMEDIO = %.2f\n", prom);
   
    printf("\n");
    system("PAUSE");
return 0;
}
________________________________________________


« Última modificación: 28 Noviembre 2013, 07:27 am por gmojon » En línea

Delacure Mihawk

Desconectado Desconectado

Mensajes: 99


Lulz


Ver Perfil
Re: PROFRAMACION EN C
« Respuesta #2 en: 28 Noviembre 2013, 10:34 am »

Revisa tus apuntes de C, tu código me ha dado cáncer por lo siguiente:

- No inicializas las variables, la parte de "suma=suma+v;" la variable suma tiene un valor desconocido en el primer ciclo del bucle, antes de usar la variable la inicializas con un "suma=0;"
- Cuando usas un vector tienes que indicarle un índice! "v=10+rand()%80;":
Código
  1. y[i]10+rand()%80;


Para calcular la desviación y la varianza son simples procedimientos matemáticos, que parte de ellos es la que no sabes aplicar?

Y no uses mayúsculas todo el rato..
« Última modificación: 28 Noviembre 2013, 10:45 am por Delacure Mihawk » En línea

dato000


Desconectado Desconectado

Mensajes: 3.034



Ver Perfil
Re: PROFRAMACION EN C
« Respuesta #3 en: 28 Noviembre 2013, 19:29 pm »

Hacia tiempo no venia por aqui, estaba ocupado con estudios y trabajo, pero vamos a ver que sale.

Mira, no escribas en mayúsculas, es algo muy incomodo, molesto e irritante, es feo, es como andar gritando a todas horas.

Aquí estamos para ayudarte, entendemos tus problemas, todos hemos pasado por lo mismo:

Mira, tienes varios problemas, uno de ellos como mencionaron anteriormente, es que no usas indices en el vector (yo lo denomino arreglo o simplemente array por cuestiones tecnicas, pues un vector en programación es algo diferente). Un indice se utiliza para referenciar la posición que se esta utilizando en el momento de utilizar ese arreglo.

Una cosa muy importante es que si realizas operaciones entre variables flotantes y enteras te daran errores de cálculo, valores incorrectos, dependiendo en que variable se guarden, se asignara un espacio de memoria diferente que solo podra albergar una determinada cantidad de información, lo que necesitas entender es que no resultara correcto una operación int - float, para este ejercicio, como es importante las decimas, pues dejalo todo a float, y es más, si quieres más precisión, usa double

Aquí en el foro hay unas etiquetas para poner codigo, se pueden usar diferentes identificadores para otros lenguajes de programación
Código:
[code=c][/ code]

Por lo demás, mira, te ayudare:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #include <math.h>
  5. #define TAM 10
  6.  
  7. int main()
  8. {
  9.    int i;
  10.    float v[TAM];
  11.    float prom=0.0, suma=0.0, var=0.0, d_est=0.0;
  12.    //srand(time(0)); solo trabaja con enteros int, y al usar time(0) no aleatoriedad
  13.    srand48(time(NULL)); // numeros aleatorios con aleatoriedad relativa al reloj del procesador
  14.  
  15.    for(i=0; i<TAM; i++)
  16.    {
  17.            v[i] = drand48() * 100; // se usa esta funciona para generar numeros randomicos coma flotante
  18.                                    // separa adecuadamente los espacios para entender el código
  19.                                    // me gusta dejarlo en el rango de 0  a 99
  20.  
  21.             // nuevamente, hay que indicar la posición del indice
  22.             printf("\n Valor Vector/Array [%d] =  %.2f", i , v[i]);
  23.  
  24.             suma = suma + v[i]; // El vector/array con el indice
  25.             prom = suma / TAM; // suma de los elementos dividido por el numero de elementos, facil.
  26.  
  27.  
  28.             // Varianza Es la media de las diferencias con la media elevadas al cuadrado
  29.             // Consulta http://www.disfrutalasmatematicas.com/datos/desviacion-estandar.html
  30.             // Para más información
  31.  
  32.             // sumando cada varianza de cada indice con respecto a la media
  33.             var = var + pow( (v[i]-prom), 2 );
  34.             // funciona tambien con
  35.             // var += pow ( (v[i] - prom ), 2);
  36.  
  37.    }
  38.  
  39.    // ya fuera del ciclo con todos los elementos sumados, calculamos la relacion con el total de elementos
  40.    var = var / 10.0;
  41.  
  42.    // La desviación estandar es simplemente la raiz cuadrada de la varianza
  43.    d_est = sqrt( var );
  44.  
  45.    float aux = v[0] - prom;
  46.    float prueba = pow ( (v[0]-prom), 2);
  47.  
  48.    printf("\n\n\n *SUMA = %.2f\n", suma);
  49.    printf("\n *PROMEDIO = %.2f\n", prom);
  50.    printf("\n *VARIANZA = %.2f\n", var);
  51.    printf("\n *DESVIACION ESTANDAR = %.2f\n", d_est);
  52.  
  53.    // Valores de prueba
  54.    /*printf("\n *posicion prueba v[0] =    %.2f\n", v[0]);
  55.     printf("\n *promedio prueba =    %.2f\n", prom);
  56.     printf("\n *diferencia prueba =    %.2f\n", aux);
  57.     printf("\n *prueba =    %.2f\n", prueba);*/
  58.  
  59.    printf("\n");
  60.    getchar(); // horrible ese system, solo funciona en windows y provoca conflictos en el sistema, bueno, a veces...
  61.    return 0;
  62. }
  63.  

Fue un buen experimento, una buena practica, el cerebro hay que estimularlo, ejercitarlo, alimentarlo y enriquecerlo con esta clase de ejercicios XD

suerte amigo que te rinda

PD: Se que faltan tildes, pero es que la etiqueta del foro no me deja colocarlas... :silbar: :silbar:[/code]
En línea


gmojon

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: PROFRAMACION EN C
« Respuesta #4 en: 6 Diciembre 2013, 00:06 am »

Muchas gracias po el apoyo!!! me sirvio de mucho!
Tenia idea de algunas cosas pero no sabia komo plantearlas.

Tengo un proyecto final, mas adelante lo posteare para hacerlo igual kon mi avance, ojala pudieran ayudarme, muchas gracias de antemano!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines