Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - leosansan

#41
Cita de: kutcher en 16 Agosto 2014, 02:23 AM
Buenas, abro este post para ir publicando una serie de retos a medida que vayan resolviendo los mismo, con el objetivo estimular a la comunidad a participar mediante la resolución de problemas que competen al mundo de la programación que tanto nos apasiona


Encuentra los primeros cuatro números enteros consecutivos para tener cuatro factores primos distintos. ¿Cuál es el primero de estos números?

Espero su participación

Código (cpp) [Seleccionar]


134043 =  3  * 7 * 13 * 491
134044 =  2^2 *  23 * 31  * 47  
134045 =  5 *  17 * 19 *  83
134046 =  2 * 3^2 * 11 * 677



¡¡¡¡ Saluditos! ..... !!!!


#42
¿Qué compilador e IDE usas?. Por si no lo es te aconsejo en estos inicios Code::Blocks.

¡¡¡¡ Saluditos! ..... !!!!


#43
"Creo que en:

Código (cpp) [Seleccionar]
if (valor=9999)
{
continue;
}



deberías poner ("=" no, es para asignar,  "==" sí, es para comparar):

Código (cpp) [Seleccionar]
 for (  numeroValores  = 0 ; ; numeroValores ++ )
------------------------------------------------
 if ( valor == 9999 )
   break;
------------------------------------------------


EDITADO: El for también había que corregirlo.  ;)

¡¡¡¡ Saluditos! ..... !!!!


#44
Cita de: grego027 en 15 Agosto 2014, 02:05 AM
Desearia que me ayuden en esta funcion de antemano gracias....
................................................................

Como te comentó rir3760, lo primero es declarar main de tipo int, como manda el estándar de C y evitar el uso de la librería conio y sus funciones por lo mismo, no forman parte del estándar de C.

¿ char a[] ?. Si el array "a" va a almacenar números lo lógico es que sea de tipo int, ¿no?. Y declararlo previamente a tamaño de 100 cuando al introducir los pares pedidos pudiera ser que se pidan 200 pues se quedaría cortito. Mejor declarar el array después de introducir el valor de  "n".

¿La función "prome1" de tipo char?. Ni tan siquiera de tipo int ya que le pasas el array y esto hace que se pase por referencia. No es necesario pues que retorne nada.

Con estas ideas te quedaría algo como:

Código (cpp) [Seleccionar]
********************************************
int main ( ) {
---------------------------------------------------------------------------
  scanf ( "%d" , &n ) ;
  int a[ n ] ;
  printf( "\n" ) ;
  prome1 ( n , a ) ;
  for ( i = 0 ; i < n ; i++ )
    printf ( "\n\t[%d]" , a[ i ]) ;
  return 0;
****************************************************
void prome1( int n , int a[ ] ) {
  int i = 0 ;
  for( i = 0 ; i < n ; i++ )
    a[ i ] = ( i ) * 2 ;
}


¡¡¡¡ Saluditos! ..... !!!!


#45
No estoy seguro de haberte entendido bien pero parece que quieres leer una cierta cantidad de coordenadas del fichero xy.txt y guardar las  mismas en otro fichero que yo llamaré Copiaxy. Si es así lo siguiente lo realiza:

Código (cpp) [Seleccionar]
***************************************
 scanf("%d",&n);
 txt = fopen ( "xy.txt" , "r" ) ;
 for ( i = 0 ; i < n ;  i++  )
   fscanf  ( txt , "%lf%lf"  , &c  [ i ][  0 ] , &c  [ i ][  1 ] )  ;
 fclose ( txt ) ;

/* ***** OPERO SOBRE LAS COORDENADAS Y LAS GUARDO ***** */

 res = fopen ( "Copia_xy.txt" , "w" ) ;
 for ( i = 0 ; i <n ; i++ )
   fprintf ( res , "%lf  %lf\n" , c [ i ][ 0 ] , c [ i ][ 1 ] )  ;
 fclose ( res ) ;
************************************************


Y si lo que quieres es leer las coordenadas para "operar" sobre ellas, tipo ordenarlas y cosa por el estilo, están en el array "c". Puedes hacer lo que quieras con ellas y después guardarlas.

¡¡¡¡ Saluditos! ..... !!!!


#46
Cita de: kutcher en 12 Agosto 2014, 22:23 PM
Para ser un punto de silla debe cumplir una de estas dos condiciones:

1) Dentro de la fila son mínimos y dentro de la columna son máximos
2) Dentro de la fila son máximos y dentro de la columna son mínimos


Me debo estar quedando obsoleto, ¡los años no pasan en balde!.

Yo me quedé en la definición primera como punto de silla , para nada la segunda. Sniff!!!!!...¿o tal vez esté en lo cierto?.  :silbar:

¡¡¡¡ Saluditos! ..... !!!!


#47
Cita de: NOB2014 en 12 Agosto 2014, 19:54 PM
Hola gente.
Tengo un error con la validación de datos en este programa y por más que práctico no logro dar con la tecla.-
Debo reconocer que puedo estar cometiendo un error que ya debería resolver por mi mismo pero me pase 2 días de 8 horas cada uno para hacer que funcionara la matriz de punto de silla y cuando lo logré (bueno creo que lo logré porque lo corrí más de 50 veces y nunca me sale la tabla con la coincidencia) me aparece este error que deseo que me ayuden a resolver porque quiero dejar perfectamente establecida la forma correcta de utilizar fgets.-
..........................................

Bienvenido otra vez amigo Daniel.

El código funciona perfecto pero pretender que de forma aleatoria te salga un punto de silla es mucho pedir.  :o

Te aconsejo introducir a mano una matriz que sepas que tiene punto de silla y así compruebas que el código funciona O.K.

Cambia a:

Código (cpp) [Seleccionar]
void ingreso(int matriz[], int intFil, int intCol){
unsigned int hora = time(NULL), i=0, j=0, indice=0;
srand(hora);

for(; i < intFil; i++){
for(j=0; j < intCol; j++){
indice = i * intCol + j;
printf("Introduzca la posicion %d, %d: ", i+1, j+1);
scanf ("%d",&matriz[indice]);
//matriz[indice] = rand ()% 100;
}
}
printf("\n");
for(i=0; i<intFil; i++){
for(j=0; j<intCol; j++){
indice = i * intCol + j;
printf(" %3d", matriz[indice]);
}
if(j%intCol==0) printf("\n");
}
}


e introduce como ejemplo de matriz con punto de silla:

Código (cpp) [Seleccionar]

   1       2       3
   2       3       4
   1       5       2


Y de paso cambia, para que el resultado sea más chachi en la función puntoDeSilla:

Código (cpp) [Seleccionar]
printf("\n en la fila %d columna %d hay punto de silla", i+1, colMen+1);

Veras como sí que detecta el punto de silla en la fila 2 y columna 1, con los cambios que te he mencionado, claro.  ;)

Lo dicho, un fuerte saludo Daniel de tu amigo León.

¡¡¡¡ Saluditos! ..... !!!!




Sorry!, ya han contestado mientras escribía esto.
#48
Cita de: kutcher en 12 Agosto 2014, 02:09 AM
Hago un aporte con otro método bastante rápido :

´´´´´´´´´´´´´´´´´´´´´´´´´´´´´´´´´´´´

Conste que es en plan buen rollo, ¿vale?.  ;)

No sé cuan rápido es porque de entrada tienes desactivado el "cargarPrimos".

No imprime nada por lo que no se sabe si calcula el total de primos hasta n o los n primeros primos. Viendo un poco el código, por aquello de que x e y varían de 1 a la raíz del limite, creo que es lo primero. Pero en este caso te faltaría una variable tipo acumulador que vaya contando cuántos primos van saliendo Creo que podría ser algo como:

Código (cpp) [Seleccionar]
for (int i = 3 ; i < limite ; i++)
        if ( es_primo [ i ] )
            cont++ , primos.push_back ( i ) ;


Aún poniendo un:

Código (cpp) [Seleccionar]
for ( int i = 0 ; i < cont ; i++ )
      cout << primos [ i ] << "  "  ;
    cout << endl << "Hasta " << MAXIMO << " hay "  << cont ;


no obtengo los resultados esperados,  ¿puedes confirmarlo, please?.

Tienes varios if en la función primo, ¿seguro que con ellos recorres todos los números de 1 a limite?,  porque si no es así faltaría un ultimo else.

Como diría eferion, me he levantado "quisquilloso" y como la función "es_primo" es de tipo bool sus asignaciones propiamente sería de tipo:

Código (cpp) [Seleccionar]
.............................................
            es_primo [ n ] = true;
....................................
          es_primo  [ b ] = false;
................................


Sí, ya sé que con el 1 y el cero va, pero es por usar true y false,así se manifiesta claramente que es de tipo bool no sea que en otro momento nos despistemos y hagamos es_primo  [ b ] = 97 o cosas por el estilo.

Quedo a la espera de las mejoras y de un código realmente funcional para pasarle el test de los tiempos, aunque con el uso tan extenso que haces de las operaciones módulo ya me imagino los resultados.

En cualquier caso, y caso de que funcione adecuadamente, será un aporte "diferente" y por ello muy bienvenido.  ;-)

Y reitero lo del principio, en plan buen rollo, ¿vale?.  ;)

¡¡¡¡ Saluditos! ..... !!!!


#49
Cita de: 718208 en 12 Agosto 2014, 01:46 AM
Muchas gracias por sus respuestas, eliminaron mi duda!  ;-)

De nada, de nada y me alegra enormemente que te hallamos sido de ayuda.  :o

Ya sabes donde estamos para cualquier otra duda que te  surja.  ;)

¡¡¡¡ Saluditos! ..... !!!!


#50
Cita de: engel lex en 12 Agosto 2014, 01:12 AM
ahora si te comprendí en ese ejemplo si es muy bien aplicable la idea! :P

Siento no haberme explicado con claridad la primera vez. Gracias por la comprensión.

Un fuerte saludo de León.