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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Mensajes
Páginas: 1 ... 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 [154] 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 ... 193
1531  Programación / Programación C/C++ / Re: Existe algun comando para leer y guardar el valor de un fichero en C? en: 3 Febrero 2019, 19:48 pm
Saludos,

- Me ha ayudado enormemente este e-book gratuito en español:
https://openlibra.com/es/book/introduccion-a-la-programacion-con-c-3

- En mi caso lo he hecho con puro Array (muestro extracto):

Código
  1. #define MAX_FILAS   50
  2. #define TAM_FECHA   11
  3. #define TAM_NOMBRE  50
  4.  
  5. int main() {
  6.  
  7.  char fechas[MAX_FILAS][TAM_FECHA];
  8.  int  puntajes[MAX_FILAS];
  9.  char nombres[MAX_FILAS][TAM_NOMBRE];

- Para leer los datos del fichero, me pareció más cómodo hacerlo con fscanf (muestro estracto):

Código
  1.  printf("Fichero leido: \n");
  2.  
  3. /* Lee el fichero y guarda los registros */
  4.  while ( feof(file) == 0 ) {
  5.    fscanf(file, "%s%d%s", fechas[cont], &puntajes[cont], nombres[cont]);
  6.    printf("%s | %d | %s\n", fechas[cont], puntajes[cont], nombres[cont]);
  7.    cont++;
  8.  }
  9.  fclose(file);

- Una vez se tenga todo guardado el los Array (un lío que C no tenga un tipo string :xD) se procede a ordenarlo, en el e-book está el método de ordenamiento Burbuja ejemplificado, se tiene que hacer uso de Arrays auxiliares y eso. Pero no se pueden copiar Array a otro Array directamente, se tiene que usar strncpy(array_destino, array_origen, cantidad_de_elementos), esto también está teorizado y ejemplificado en el e-book, muestro extracto que solo ordena el puntaje y la fecha, también debes ordenar el nombre:

Código
  1. /* Ordenacion mediante metodo Burbuja*/
  2.  for ( int i = 0; i < cont - 1; i++ ) {
  3.    for ( int j = 0; j < cont - 1; j++ ) {
  4.      if ( puntajes[j] < puntajes[j + 1] ) {
  5.        strncpy(aux_fechas, fechas[j], TAM_FECHA);
  6.        aux_puntajes = puntajes[j];
  7.  
  8.        strncpy(fechas[j], fechas[j + 1], TAM_FECHA);
  9.        puntajes[j] = puntajes[j + 1];
  10.  
  11.        strncpy(fechas[j + 1], aux_fechas, TAM_FECHA);
  12.        puntajes[j + 1] = aux_puntajes;
  13.      }
  14.    }
  15.  }

- Al final solo queda mostrar los resultados que piden, cantidad de líneas leídas (cant), puntaje más alto (puntajes[0]) y usar un FOR para mostrar todos los registros ordenados, muestro salida del programa ordenado:

Código
  1. C:\Users\EdSon\Desktop>type read_file.txt
  2. 3-2-2019   21000      NOMBRE
  3. 3-2-2019   39000      NOMBRE
  4. 3-2-2019   18000      NOMBRE
  5. C:\Users\EdSon\Desktop>gcc read_file.c -o read_file.exe && read_file.exe
  6. Fichero leido:
  7. 3-2-2019 | 21000 | NOMBRE
  8. 3-2-2019 | 39000 | NOMBRE
  9. 3-2-2019 | 18000 | NOMBRE
  10.  
  11. Total lineas leidas: 3
  12. Puntaje mas alto: 39000
  13. Fichero ordenado:
  14. 3-2-2019 | 39000 | NOMBRE
  15. 3-2-2019 | 21000 | NOMBRE
  16. 3-2-2019 | 18000 | NOMBRE
  17.  
  18. C:\Users\EdSon\Desktop>
  19.  

- Ahora solo te toca encajar todo el código y listo (buen ejercicio) :P
1532  Informática / Hardware / Re: Disco duro Externo no Reconocido- AYUDA en: 3 Febrero 2019, 18:04 pm
- Si ni siquiera aparece la capacidad del Disco Duro ... puede ser daño físico. Recomendaría enviarlo a una empresa especializada en recuperación de datos, claro que tiene su buen costo, dependerá del valor de la data que tengas en él.

- Por otro lado puedes intentar con software privativo como ya mencioné arriba Easeus, u otro que recomienden.
1533  Programación / Scripting / Re: Como ejecuto estas lineas en mi PC. en: 3 Febrero 2019, 16:47 pm
- Pues básicamente lo que hace el dichoso Script es:

Código
  1.    var drainAppStoreQueue = function () {
  2.        var schTasks = wsh.ExpandEnvironmentStrings("%windir%\\System32\\schtasks.exe");
  3.        var arguments = "/run /Tn \"\\Microsoft\\Windows\\.NET Framework\\.NET Framework NGEN v4.0.30319";
  4.        runToCompletion(schTasks, arguments + "\"", true);
  5.        if (is64bit)
  6.            runToCompletion(schTasks, arguments + " 64\"", true);
  7.    }
  8.  
  9.    drainNGenQueue(isV4Installed ? "v4.0.30319" : "v2.0.50727");
  10.    if (isOSWin8OrLater) {
  11.        drainAppStoreQueue();
  12.    }

- Es decir, llama al Programador de Tareas (SchTasks) y corre (\run) la tarea programada ".NET Framework NGEN v4.0.30319" ubicada en "\Microsoft\Windows\.NET Framework\".

-- Si es un sistema de 64 bits ejecuta ".NET Framework NGEN v4.0.30319 64". Si es un sistema antiguo ejecuta la versión "v2.0.50727"

- PERO repito esta tarea programa ya existe en el PC de fábrica y se ejecuta automáticamente cuando al Encender el PC:



-- No es más fácil ir ahí y ejecutar la tarea a mano dando Click derecho > Ejecutar?

- Si quieres asegurarte de que la Tarea Programada se ha ejecuta correctamente ve al Programador de Tareas > Biblioteca del programador de tareas > Microsoft > Windows > .Net Framework, y ejecuta la/las tareas que desees, luego actualiza (actualizar o F5) y revisa la Hora última ejecución, Resultado de última ejecución.

- Voy a Ejecutar esas tareas haber si obtengo mejor rendimiento con mis juegos  :xD ya que yo siempre las deshabilito apenas formateo el PC y estoy sin ellos varios años.
1534  Informática / Hardware / Re: Disco duro Externo no Reconocido- AYUDA en: 3 Febrero 2019, 15:00 pm
- Correcto, lo más parecido que he encontrado para replicar tu problema es DISKPART Clean. Pero primero revisa que no sea un problema tan sencillo como este:



-- Ese disco está OffLine (sin conexión) y tan sencillo (y nada destructivo) como darle Click derecho > OnLine (Conectar):



--- Se muestran imágenes en inglés, cuidado con confundirlo con Initialize disk (Inicializar disco)

- Si no se trata del problema anterior, a mi me ha servido TestDisk para recuperar mi Disco al que le hice un Diskpart Clean:

1- Descarga TestDisk (gratuito):
https://www.cgsecurity.org/Download_and_donate.php/testdisk-7.1-WIP.win.zip

2.- Extrae el contenido del fichero descargado y ejecuta testdisk_win (testdisk_win.exe) y conecta tu Disco Duro con el problema

3.- Usa la teclas direcionales para moverte entre las opciones, elige cualquiera, en mi caso [Create], luego aparecerá una lista con los discos duros detectados, selecciona tu disco duro a tratar y da Enter

4.- Selecciona el tipo de Tabla de Particiones: [Intel] y da Enter, es raro que sea [EFI GPT] o cualquier otro.

5.- Ahora te mostrará información de tu Disco Duro y las opciones de Recuperación, selecciona [Analyse] y Enter, luego mostrará las particiones actuales y ofrecerá buscar las particiones perdidas (en nuestro caso no mostrará nada), un Enter para empezar el [Quick search] (búsqueda rápida).

6.- Ya casi, ahora debería de mostrar las particiones extraviadas (supongo que solo tendrás una) si no es un problema grave acá debería de mostrarte tus particiones, caso contrario comenta. Dale un Enter

7.- En la siguiente pantalla selecciona [Write] para reparar el problema (no se eliminará ni un solo dato de tu disco), luego un Enter, aparecerá una confirmación, debes teclear "Y" (sin comillas) y problema resuelto, verifícalo en tu Explorador de Windows

[Deeper Search] que aparece en el paso 7, debe ser usado si no se ha encontrado ninguna partición.

-----------------------------
Programa de pago alernativo: https://www.easeus.com/storage-media-recovery/you-must-initialize-a-disk-before-logical-disk-manager-can-access-it.html (Pero me parece más seguro TestDisk)
1535  Informática / Hardware / Re: Disco duro Externo no Reconocido- AYUDA en: 3 Febrero 2019, 14:09 pm
- Correcto, entonces si que reconoce el Disco (Disco con vida aún :xD), el problema es que se ha dañado el Sistema de Archivos/Tabla de particiones o le han hecho un Diskpart > clean.

- No hay garantía de que tus archivos estén bien... en el pero de los casos el disco tiene un daño físico leve/grave que ha causado todo esto y este disco deja de ser confiable, y en el mejor de los casos es un daño lógico que se soluciona inicializando/formateando el disco PERO se pierden los archivos.

- Voy a hacer unas pruebas para replicar tu problema e intentar recuperar mi disco de prueba, NO vayas ha inicializar el Disco ni nada destructivo, aún.

- Puede que te recomienden programas de recuperación de datos como Easeus, etc ...
1536  Programación / Scripting / Re: Como ejecuto estas lineas en mi PC. en: 3 Febrero 2019, 13:57 pm
Saludos,

- Me parece que el Script ese no hace nada nuevo, solo crea/ejecuta una tarea programada que por defecto ya está puesto en Windows desde hace mucho ... Además de que yo siempre deshabilito esa tarea porque consume muchos recursos :xD

- Es esta verdad: https://github.com/Microsoft/dotnet/tree/master/tools/DrainNGENQueue, que utilidad tiene, ya que yo he vivido siempre prescindiendo de sus servicios.
1537  Informática / Hardware / Re: Disco duro Externo no Reconocido- AYUDA en: 3 Febrero 2019, 13:39 pm
Saludos,

Citar
Si voy a la opción de crear y formatear particiones no muestra este disco, ni a traves de CMD, no no me lo muestra por ningunta parte.

- Disco muerto, o quizá algún problema con el Driver para reconocer al disco, lo has probado en otro PC? o desde un LiveCD/LiveUSB?

- Abre el "Visor de eventos" > Registros de Windows > Sistema, luego conecta tu Disco Duro, regresa al Visor de eventos y actualiza (F5), aparece algún error?

- Abre el "Administrador de dispositivos" > Unidades de disco, aparece tu disco externo? aparece en otro sitio?
1538  Comunicaciones / Redes / Re: Problemas Cliente DHCP y Cliente DNS en: 3 Febrero 2019, 13:31 pm
Saludos,

- El Cliente DHCP te otorga una IP, Máscara, Puerta de Enlace y Servidores DNS. Tu PC tiene todo esto, así que funciona.

- El Cliente DNS resuelve nombres de dominio a IP utilizando tus Servidores DNS, esto también funciona, así que no es culpa de ninguno de estos servicios.

- Si tus servidores DNS te dan problemas, porqué no configuras unos DNS Estáticos, por ejemplo los de Google o Open DNS.

-- La forma de comprobar la accesibilidad a los Servidores DNS es haciéndoles un PING <IP_del _DNS> (Ej.: PING 8.8.8.8), has un ping a tus servidores DNS y verifica que estén bien.

-- Para especificar un Servidor DNS estático lo haces en: https://img-17.ccm2.net/NJKy98BdJjBbOub_jiAQcLEqNg0=/42b1da54c6024d0595b349134c45cb0e/ccm-ugc/Enviados_y_Recibidos.jpg > Propiedades =>



-- Es un ejemplo de DNS de Google y OpenDNS
1539  Programación / Programación C/C++ / Re: Ayuda con conocimientos sobre C++ en: 3 Febrero 2019, 03:16 am
Saludos,

- Supongo que te refieres a crear Interfaces Gráficas, en caso de Windows puedes revisar lo siguiente: http://www.rickygzz.com.mx/win32/index.php

- Y este cuaderno de prácticas: https://openlibra.com/es/book/cuaderno-de-ejercicios-y-practicas-c-de-programacion-2
1540  Programación / Desarrollo Web / Re: [Pregunta]: Consultas Mysql / PHP en: 3 Febrero 2019, 01:13 am
Saludos,

- Con  LIMIT puedes hacer consultas que muestren rangos de registros:

Código
  1. mysql> SELECT * FROM tb_user LIMIT 0,5;
  2. +---------+------+
  3. | id      | name |
  4. +---------+------+
  5. | user_01 | pepe |
  6. | user_02 | paco |
  7. | user_03 | jhon |
  8. | user_04 | raul |
  9. | user_05 | juan |
  10. +---------+------+
  11. 5 rows in set (0.00 sec)
  12.  
  13. mysql> SELECT * FROM tb_user LIMIT 5,5;
  14. +---------+------+
  15. | id      | name |
  16. +---------+------+
  17. | user_06 | ivan |
  18. | user_07 | jose |
  19. | user_08 | rita |
  20. | user_09 | tito |
  21. | user_10 | abel |
  22. +---------+------+
  23. 5 rows in set (0.00 sec)
  24.  
  25. mysql> SELECT * FROM tb_user LIMIT 10,5;
  26. +---------+------+
  27. | id      | name |
  28. +---------+------+
  29. | user_11 | carl |
  30. | user_12 | dana |
  31. | user_13 | katy |
  32. | user_14 | lola |
  33. | user_15 | nina |
  34. +---------+------+
  35. 5 rows in set (0.00 sec)

- Ahí puedes encontrar el patrón, el primer argumento de LIMIT es el índice desde donde se deben extraer los registros (empezando desde 0 como los típicos Array), el segundo indica la cantidad de registros a extraer. El primer argumento es siempre la suma del primer y segundo argumento del SELECT anterior.

- Puedes poner una condicional que verifique si se han devuelto datos o hacer un COUNT(*) previo.
Páginas: 1 ... 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 [154] 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 ... 193
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines