Autor
|
Tema: Ayuda: con sustitución de funciones (Leído 12,105 veces)
|
do-while1
Desconectado
Mensajes: 20
|
Buen día, tengo una duda. En el instituto nos han pedido un programa que nos de la media aritmética de varios valores. Hice el siguiente código: #include<stdio.h> #include<conio.h> #include<stdlib.h> #include<math.h> main() { int n,i; float c,ma,*a; printf("Introduce n\n"); scanf("%d",&n); a=(float*)malloc(sizeof(float)*n); printf("Digita los %d numeros\n",n); for(i=0;i<n;i++){ scanf("%f",&a[i]); } printf("Los %d numeros que ingresaste son:\n",n); for(i=0;i<n;i++){ printf("%f\n",a[i]); } c=0; for(i=0;i<n;i++){ c+=a[i]; } ma=c/n; printf("La media es: %f\n",ma); getch(); }
El programa ya está funcionando como el profesor quería, excepto por una cosa, a pesar de que me aplaudió el uso del arreglo de números no me ha permitido usar la función sizeof así como tampoco la función malloc dentro del programa pues dice "aun no las hemos implementado junto al resto de la clase" ^^ y me ha obligado a cambiar el código con funciones que ya he usado en clase, pero, el problema es que no encuentro función alguna que le pueda quedar al programa. Se podría usar algo más básico y que no genere muchos cambios en el código?
|
|
|
En línea
|
|
|
|
0xDani
Desconectado
Mensajes: 1.077
|
Usa un array estatico, o un VLA (Variable Length Array) y le dices a tu profesor que estas compilando en C99! Personalmente yo le diria que le den por culo que no me corte las alas y me deje usar cosas mas avanzadas si tengo mas nivel. Vamos que pasaria de el, basicamente. Con el VLA seria asi: float a[n]; /* Recuerda que la primera declaracion de "a" debe ser esta, quita la de mas arriba */
Cualquier compilador estandar en modo C99 te lo debe aceptar. Saludos. PD: De verdad estudiais C en el instituto? Vives en España?
|
|
|
En línea
|
I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!
I code for $$$ Hago trabajos en C/C++ Contactar por PM
|
|
|
leosansan
Desconectado
Mensajes: 1.314
|
Buen día, tengo una duda. En el instituto nos han pedido un programa que nos de la media aritmética de varios valores.....................
Pues a lo simple:#include<stdio.h> int main() { int n,i; float num,ma=0; printf("Introduce total de numeros: "); scanf("%d",&n); for(i=0;i<n;i++){ printf("Digita el numero %d: ",i+1); scanf("%f",&num); ma+=num; } printf("La media es: %g\n",ma/n); getch(); return 0; }
Pero se me hace algo "elemental" para tu nivel.Saluditos!. ...
|
|
« Última modificación: 5 Marzo 2013, 19:44 pm por leosansan »
|
En línea
|
|
|
|
do-while1
Desconectado
Mensajes: 20
|
Personalmente yo le diria que le den por culo que no me corte las alas y me deje usar cosas mas avanzadas si tengo mas nivel. Vamos que pasaria de el.
PD: De verdad estudiais C en el instituto? Vives en España?
jajajaja ganas no me faltan de decirselo, en grados anteriores un maestro que originalmente nos inculcaba taller de programación nos enseñó C++ y claro el nos decía las funciones más básicas pero también nos mostraba como un plus funciones para alguien más avanzado, no digo que yo lo sea haha pero pues no cae nada mal querer ver más allá aunque apenas seas un estuidiante. Y por lo otro, no vivo en España Soy de México y ya sea escuela pública o privada en el plan de estudio se exige ver aunque sea por mínimo C, pero aquí en mi instituto ya han abusado en cuanto a ver este lenguaje, yo hubiera preferido cuando menos ver Basic o C# jajaja Muchas Gracias
|
|
« Última modificación: 5 Marzo 2013, 19:54 pm por do-while1 »
|
En línea
|
|
|
|
do-while1
Desconectado
Mensajes: 20
|
Pero se me hace algo "elemental" para tu nivel.
jajaja creo que anteriormente me habías ayudado igual con algo muy elemental pero es que muchas veces me pasa que al estár tan "concentrado" jaja se me pasan esos detalles. xD Y bueno espero en verdad tener un buen nivel en C al menos tener una satisfacción personal jajaja Muchas gracias
|
|
|
En línea
|
|
|
|
amchacon
Desconectado
Mensajes: 1.211
|
Otra forma de implementarlo sin vectores. Gracias a la magia de los punteros: #include<stdio.h> #include<stdlib.h> #include<math.h> struct Eslabon { int N; Eslabon* Anterior; }; int main() { Eslabon * Numero = (Eslabon *)malloc(sizeof(Eslabon )); Eslabon* Buffer; int Cantidad; int Total = 0; Numero->Anterior = NULL; do { printf("Inserta numeros, introduce 0 para finalizar: "); if (Numero->N != 0) { Buffer = Numero; Numero = (Eslabon *)malloc(sizeof(Eslabon )); Numero->Anterior = Buffer; } }while(Numero->N != 0); // Desliamos la cadena Cantidad = Numero->N; while (Numero->Anterior != NULL) { Numero = Numero-> Anterior; Cantidad += Numero->N; Total++; } printf("La media es %d ",Cantidad /Total ); return 0; }
|
|
« Última modificación: 5 Marzo 2013, 21:04 pm por amchacon »
|
En línea
|
|
|
|
leosansan
Desconectado
Mensajes: 1.314
|
Una forma de implementarlo sin vectores. Gracias a la magia de los punteros:
.....................................
¡La de dios!, que pasada. ¿Pero no has leído que no le dejan usa " ni " malloc?. . Creo que se trataba de hacerlo "tipo" principiantes, ya que sólo pedía calcular la media, para nada se hablaba de "guardar" los datos entrantes.
Eso si amchacon, pedazo de código ´pa matar moscas a cañonazos .......
Saluditos!. ...
|
|
« Última modificación: 5 Marzo 2013, 23:17 pm por leosansan »
|
En línea
|
|
|
|
amchacon
Desconectado
Mensajes: 1.211
|
Para esta situación no era lo más adecuado, pero ya que todos ponían su código yo también quería xDDD
Esta bien para las situaciones en las cuales, no puedas saber cuantos numeros vas a guardar.
|
|
|
En línea
|
|
|
|
do-while1
Desconectado
Mensajes: 20
|
Pues resulta, chicos, que el "profe" me ha rechazado una vez más el código por que le faltó el arreglo jajajaja.
|
|
|
En línea
|
|
|
|
amchacon
Desconectado
Mensajes: 1.211
|
float a[n]; /* Recuerda que la primera declaracion de "a" debe ser esta, quita la de mas arriba */
No te sirve esto?. Solo te falta llenar los datos y calcular la media.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Criptografía - Cifrado por sustitución
.NET (C#, VB.NET, ASP)
|
hadree
|
2
|
8,686
|
22 Noviembre 2010, 19:14 pm
por hadree
|
|
|
[Batch] Criptoanalizador del cifrado generico monoalfabetico por sustitucion
Scripting
|
lShadowl
|
0
|
3,968
|
26 Febrero 2011, 14:23 pm
por lShadowl
|
|
|
Cifrado por sustitucion ASM
ASM
|
capiil4d
|
1
|
2,911
|
19 Junio 2013, 11:23 am
por Eternal Idol
|
|
|
Sustitución directa del EIP
Bugs y Exploits
|
Lodos76
|
3
|
3,317
|
10 Marzo 2014, 00:34 am
por Lodos76
|
|
|
[AYUDA] [BATCH] Problemita con sustitución de caracteres...
« 1 2 »
Scripting
|
.:Xx4NG3LxX:.
|
10
|
5,450
|
21 Febrero 2020, 17:38 pm
por .:Xx4NG3LxX:.
|
|