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 - K-YreX

#461
Cita de: MAFUS en 18 Septiembre 2019, 12:30 PM
El enunciado dice que i-j=0, sin embargo no hay pares en {1, 2, 3} ,dónde la resta de dos elementos del conjunto de 0.

Citar
Dado un vector de enteros V[0..N) , con todos sus componentes siguiendo un orden stricto creciente, (1,5,17,20) y un numero k >=0 , diseñar un algoritmo de complejidad lineal que resuelva el número de pares de componentes <i,j> , con 0 <= i, j < N, tales que Vi-Vj = k.
En ese supuesto, las soluciones serían:
  • (0,0) ya que V[0] - V[0] = k
  • (1,1) ya que V[1] - V[1] = k
  • (2,2) ya que V[2] - V[2] = k
    Donde para todas las soluciones se cumplen todas las condiciones del enunciado. Es más se puede dar por supuesto que como el orden debe ser estrictamente creciente (no hay repetidos), siempre que k = 0, el número de pares que satisfacen las condiciones es N y por tanto la solución también.
#462
Cita de: MAFUS en 17 Septiembre 2019, 22:13 PM
En éste no veo como puede dar 3 de resultado.

Supongo que son todos los pares (i, j) donde i = j. Como son 3 elementos, pues 3 pares.
#463
Muy bien, ya tenemos el enunciado del ejercicio pero se te ha olvidado poner dónde está tu duda... :silbar:
Si en realidad el asunto de este tema no era "ayuda para programacion en c" y lo que querías poner era "Alguien que me haga la tarea" no te va a funcionar. En el foro ayudamos a hacer ejercicios tanto guiando sobre un problema concreto o localizando los errores que pueda tener un código, pero desde luego que nadie va a hacerte el ejercicio y te lo va a dar hecho.

Lo siento por tomármelo con humor pero son muchos los que se crean una cuenta y su primera aportación en el foro (y muchas veces, la última) es el enunciado de un ejercicio hecho. Si quieres ayuda, coloca tu código usando las etiquetas de Código GeSHi para que lo veamos o concreta qué ayuda necesitas para poder empezar. Si no quieres eso y prefieres esperar a alguien que te lo dé hecho... Suerte, la vas a necesitar.  :-X
#464
Programación C/C++ / Re: Duda con Ficheros C++
15 Septiembre 2019, 02:46 AM
Como bien te han dicho, si te aparecen 2 endl será que el propio fichero acaba con un endl.
Puede que el endl del final del fichero lo hayas colocado tú manualmente o que tengas alguna opción activada en el editor para que añada automáticamente un endl al final de un fichero antes de guardarlo.
#465
Programación C/C++ / Re: que esta mal ?
13 Septiembre 2019, 22:10 PM
No me he parado a comprobar qué son dos números amigos pero en el bucle de la B has mezclado la <i> y la <j>. Seguramente eso esté mal.
#466
Programación C/C++ / Re: que editor recomiendan
13 Septiembre 2019, 08:46 AM
Yo empecé usando IDEs (Dev C++ para ser exactos) ya que es lo que te suelen imponer cuando estás estudiando programación. Después aprendí a compilar desde la Terminal (de Linux) y a crear Makefiles por lo que dejé los IDEs a un lado y empecé a usar Gedit (es un editor de textos muy simple pero a la vez me parece una opción aceptable para proyectos no muy MUY grandes).
Hace poco probé SublimeText y Atom que son editores algo más completos y más orientados a la programación y definitivamente me quedo con Atom. Tiene muchas extensiones disponibles para poder añadir/quitar las funcionalidades que uno quiera (como la vista general característica de SublimeText) y también tiene autocompletado por si es algo que te interesa.
Sin embargo por tu comentario parece que lo que buscas es un IDE por lo que te recomiendo CodeBlocks como ya te han mencionado. Es un IDE muy completo.
PD: Algún día probaré Notepad++ por curiosidad :rolleyes: :-X
#467
Cita de: nadales56 en 11 Septiembre 2019, 20:26 PM
Hola, buenas a todos, tengo una pequeña duda sobre el siguiente ejercicio, les dejo el enunciado en negrita.

Defina el tipo Matriz como un array de 6x7 números enteros, y diseñe un subprograma para crear un calendario de un mes genérico en una matriz que se devolverá como parámetro de salida.
El subprograma se denominará calendario.  El primer parámetro (m), de salida, es de tipo Matriz.  El segundo parámetro (ndias), de entrada, es de tipo int y representa el número total de días del mes del calendario (28, 29, 30 o 31). El tercer parámetro (pds), de entrada, es de tipo int y representa el índice del día de la semana donde comienza el primer día del mes (donde 0 corresponde a Lunes, 1 a Martes, y así sucesivamente hasta 6 que representa al Domingo).


El código que he implementado es el siguiente:
Código (cpp) [Seleccionar]

void calendario(Tipo_Matriz &m, const int ndias,const int pds){
//Iniciar calendario me pone todos los valores de la matriz a 0
   iniciar_calendario(m);
   
   int dia = 1;
   int j;
   for(int i = 0; i < 6; i++){
       if(i == 0){
           j = pds;
       }else{
           j = 0;
       }
       while(dia <= ndias && (j >= 0 && j < 7)){
           m[i][j] = dia;
           dia++;
           j++;
       }
   }
   //mostrar calendario
   cout << endl;
   for(int i = 0; i < 6; i++){
       for(int j = 0; j < 7; j++){
           cout << m[i][j] << " ";
       }
       cout << endl;
   }
}


Cuando introduzco dias = 30 y pds = 2 (por ejemplo), el resultado que obtengo es:
0 0 1 2 3 4 6
6 7 8 9 10 11 13
13 14 15 16 17 18 20
20 21 22 23 24 25 27
27 28 29 30 0 0 0
0 0 0 0 0 0 0
me como una serie de números y no sé exactamente donde está el error, por lo que si pudiesen ayudarme, me sería de gran ayuda.
Muchas gracias!





Mod: No escribir titulos en mayusculas.

Después de estar un buen rato buscando dónde podía estar el fallo, he terminado por probar el código personalmente y... Esta es la salida que he obtenido:

0 0 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 0 0 0
0 0 0 0 0 0 0

Por lo que no hay ningún error. No sé si es que lo has escrito manualmente y entonces has "corregido" el error sin darte cuenta o es que has modificado algo y lo estás ejecutando sin volver a compilarlo pero ya ves que funciona. Obviamente se puede mejorar como ya te han demostrado pero correcto es. Por ejemplo esta parte:
Código (cpp) [Seleccionar]

if(i == 0)
    j = pds;
else
    j = 0;

La condición del <if> va a ser cierta una vez (en la primera iteración). Por lo que se puede poner directamente el valor de <pds> a la <j> antes del bucle.
Código (cpp) [Seleccionar]

int dia = 1;
int j = pds;
for(...){
    while(...){
        // el cuerpo del while
    }
    j = 0; // actualizamos siempre a 0 despues de la primera iteracion
}



Y respecto a la solución que te ha dado @engel lex, también es correcta. El resultado es el mismo que he mostrado antes. Comprueba que estés guardando y recompilando el código con cada modificación o si estás usando un IDE prueba a cerrarlo y volver a abrirlo.

Ya nos contarás si consigues solucionarlo y cuál era el problema al final. Suerte :-X
#468
Programación C/C++ / Re: Ayuda funcion eliminar
10 Septiembre 2019, 01:19 AM
Con el código bien tabulado sería más fácil de ver pero yo no sé cuál es la función del paréntesis de cierre de la línea 12... :silbar:
#469
No se hacen tareas.
Coloca tus avances y comenta dónde tienes algún problema de manera más específica.
#470
Programación C/C++ / Re: Codigo Grafos C++
5 Septiembre 2019, 23:18 PM
No se hacen tareas.
Inténtalo tú y cuando tengas un problema específico, muestra tus avances para poder ayudarte.