|
381
|
Programación / Programación C/C++ / Re: Ayuda con arrays y punteros
|
en: 5 Marzo 2014, 06:17 am
|
Holaaa.... Nunca he dicho lo contrario Gh057, pero creo que era necesario fomentar este punto ( Porque no se debe colocar funciones dentro del programa principal?). Es distinto decir, no se debe a no se puede! ..............................................................
Me ratifico en lo que te indiqué: no se debe. El hecho obvio de que si se puede hacer es que tú lo has hecho, mal pero lo has hecho.
Cuestión de semántica nada más.¡¡¡¡ Saluditos! ..... !!!! P.D: ¡¡¡UFFFFF...!!!, como está hoy el personal .....
|
|
|
382
|
Programación / Programación C/C++ / Re: Problema en programación en C
|
en: 5 Marzo 2014, 06:09 am
|
Has caso a lo que marca el compilador en la parte inferior, los errores y warnings.
* main es de tipo int. Ya sé que lo sabes porque has puesto return 0 al final, pero al principio sería int main.
* Como te comentaron el signo para decimales, a no ser que uses un formato Spanish o similar, es el punto decimal. Con él puedes meter todas las cifras sin problemas, más siendo la variable de tipo double.
* Y hablando de double, en los últimos printf lo que procede es el formato %lf, ya que un tipo como %ld puede provocar salidas erróneas.¡¡¡¡ Saluditos! ..... !!!!
|
|
|
384
|
Programación / Programación C/C++ / Re: ayuda
|
en: 4 Marzo 2014, 21:36 pm
|
Gracias engel lex por tu punto de vista que considero neutral y totalmente objetivo.
No suelo hacer alarde de mi profesión ... "a no ser que me los toquen". Siento haberlo hecho. Sorry!
Y conste que considero que yoel_alejandro me da mil vueltas en este mundillo de la programación, creo, pero otra cosa muy diferente es tratar de intervenir en todos los temas, a veces a costa de no aportar nada nuevo.
Porque el código que aporta es para mí la expresión en código de lo que tu, engelx, expusiste en un post anterior de este hilo, ni más ni menos. Y se trataba de responder sin responder al que inició este hilo sin ninguna aportación, más allá del enunciado de un simple problema de ecuaciones.
Pero por mi parte el máximo respeto a yoel_alejandro .... pero cuando no se tiene razón, no se tiene y no pasa nada.... aunque siempre se agradece una aclaración más que una disculpa ya que creo que el "tonito" de la respuesta de yoel_alejandro lo merece. Pero en fin ........¡¡¡¡ Saluditos! ..... !!!!
|
|
|
385
|
Programación / Programación C/C++ / Re: ayuda
|
en: 4 Marzo 2014, 18:10 pm
|
Saludos a todos. Como profesor de matemáticas me permito hacer algunos comentarios. .........................
Y yo como Ingeniero también aporto mis comentarios.Lamento corregirte querido yoel_alejandro pero mantengo lo que propuse: la indeterminación del sistema es de uno ya que existen DOS ecuaciones y TRES incógnitas con lo que dos de ellas se obtendrán de la tercera, o sea una sola variable independiente. Un centenar de mujeres, hombres y niños .......................
Al parecer no has leído correctamente el enunciado: un centenar, o sea 100, no un centenar y pico. Esa es una de las condiciones que se ha de cumplir y que tú obvias, quedando un sistema de dos ecuaciones y tres incógnitas. Claro que tu puedes interpretar centenar como más te guste.Y para que quede constancia, esta es la solución que da tu código con esa condición:Curiosamente coincide con mi solución . Y tu código con la condición del centenar:.............................................. En síntesis, el problema consiste en encontrar todas las tripletas de valores i, j, k que satisfagan: A*i + B*j + C*k = T
Y
i+j+k=100
#include <stdlib.h> #include <stdio.h> /* Nota: Sean * * A la cantidad de monedas que aporta cada hombre * B la cantidad de monedas que aporta cada mujer * C la cantidad de monedas que aporta cada nino * T el total de monedas * * entones tenemos: */ #define A 75 #define B 99 #define C 40 #define T 7869 /* por otra parte, siendo i la cantidad de hombres, j la cantidad * de mujeres y k la cantidad de ninos, la condicion buscada es que * * A*i + B*j + C*k = T * * siendo i, j, k numeros enteros y positivos. La solucion la buscaremos * por tanteo (fuerza bruta) mostrando todas las combinaciones posibles. */ int main () { int i, j, k, count; int i_MAX, j_MAX, k_MAX; printf( "********************************************\n" "Programa de calculo de combinaciones\n" "********************************************\n\n" ); printf( "Condiciones:\n" " cada hombre aporta %d monedas\n" " cada mujer aporta %d monedas\n" " cada nino aporta %d monedas\n" " Total: %d monedas.\n\n", A, B, C, T ); /* El maximo valor posible de i sera el cociente entero de * (T - 1*B - 1*C) entre A, es decir, el valor entero de i que satisface * la ecuacion: * * A*i + B*j + C*k = T * * con los valores minimos de j = 1, k = 1. De modo similar se calculan * los valores maximos posibles de j y k. */ i_MAX = (T - 1*B - 1*C)/A; j_MAX = (T - 1*A - 1*C)/B; k_MAX = (T - 1*A - 1*B)/C; printf("%d, %d, %d, %d\n", i_MAX, j_MAX, k_MAX, i_MAX*j_MAX*k_MAX); count = 0; for ( i = 1; i <= i_MAX; i++ ) for ( j = 1; j <= j_MAX; j++ ) for ( k = 1; k <= k_MAX; k++ ) if ( A*i + B*j + C*k == T && i+j+k==100) {/** AQUI EL CENTENAR **/ printf( "\n\nSe encontro la combinacion H = %d, M = %d, N = %d\n\n", i, j, k); count ++; } printf( "%d resultados. -- FIN DEL PROGRAMA --\n", count); }
Demasiado código para un problema tan nimio, al menos a mí me lo parece. ¡¡¡¡ Saluditos! ..... !!!!
|
|
|
388
|
Programación / Programación C/C++ / Re: Problema contador en C
|
en: 4 Marzo 2014, 04:26 am
|
Se te echa de menos por estos lares amigo dato000.
Espero puedas "puentear" las dificultades del trabajo y seguir colaborando activamente por aquí.
Hasta entonces, un fuerte saludo y puestos a ser positivos "al menos tienes trabajo".¡¡¡¡ Saluditos! ..... !!!!
|
|
|
389
|
Programación / Programación C/C++ / Re: encontrar el ultimo valor de la matriz recorrida
|
en: 3 Marzo 2014, 21:56 pm
|
Jordiiii te pillé jajajaja, suerte con esto!
Pues parece que si va a tener suerte.
Añades justo la línea del printf que te indico en el código e incluyes la nueva variable "colum_final" en la función pelota: void pelota (int matriu[50][50]){ int inicio,i,j,cont=0,colum_final; /** NUEVA VARIABLE **/ ..................................... else if (direccion=='I' || direccion=='i' && matriu[i][j-1]==1) matriu[i][++j]=cont++; } colum_final=j+1; /** ESTA VARIABLE **/ for(i=0;i<50;i++) { printf("\t\t"); for(j=0;j<50;j++) { if(matriu[i][j]==1) printf("X "); else if(matriu[i][j]==0 ) printf(". "); else printf("%d ",matriu[i][j]-2); } printf("\n"); } printf ("\n\t\tColumna Final= %d\n",colum_final); /** <==ESTA LINEA **/ } void cambiartabla (int matriu[50][50]){
Por cierto, mirar donde salen los errores y warnings y veréis que os sobran multitud de variables no usadas y falta el return 0 de la función main, entre otras lindeces. ¡¡¡¡ Saluditos! ..... !!!!
|
|
|
390
|
Programación / Programación C/C++ / Re: Problema contador en C
|
en: 3 Marzo 2014, 16:35 pm
|
Pues con esto mi parte del programa ya está acabado!! Gracias de verdad, sin tu ayuda hubiese sacado un 0 jjaja
De nada, da gusto ayudar, primero a gente agradecida, y segundo, a quien previamente se lo ha currado.
Ánimos y para otra ya sabes donde encontrarnos.¡¡¡¡ Saluditos! ..... !!!!
|
|
|
|
|
|
|