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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Mensajes
Páginas: 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 ... 280
91  Foros Generales / Foro Libre / Re: Una Manipulacion a nivel mediatico alucinante en: 5 Abril 2021, 16:00 pm
Estoy muy de acuerdo con lo que dices Ceibe.

Llevan 20 años en procesos judiciales y ningún tribunal lo ha declarado culpable por malos tratos. A pesar de ello se les llena la boca de la palabra "maltratador". Solo invitan a participar a colaboradores que estén de acuerdo con que es un maltratador, y los presentadores cortan a los que difieran en el mas mínimo detalle, etc. Vulneran flagrantemente su presunción de inocencia.

Por otro lado son juez y parte en cualquier discurso ideológico. Criminalizan a los youtubers, acosan a personas en la vía pública sin una sentencia, hacen investigaciones pseudo legales vulnerando los derechos de las personas, presionan al poder judicial influyendo en la opinión popular (cada vez menos popular por el debacle de los medios tradicionales frente a alternativas inteligentes) a base de juicios públicos y morales.

Así como incitan a los vecinos a que le tiren piedras a los "okupas" (en algunos casos familias trabajadoras con niños arruinadas por culpa del covid) criminalizándolos en favor de los bancos. Estos son muy malos, pero el estafador compulsivo confeso lleva colaborando en sus programas sin ningún problema desde el primer día.

El periodismo español dos tazas de lo mismo. Te mezclan información totalmente verídica con clickbaits, prensa sensacionalista, noticias directamente falsas...

La culpa es de la gente que lo ve, lo admite y hace click.

Lo de la moda esta del "feminismo" da mucho asco. Ensucian el esfuerzo de todas esas mujeres que han conseguido ascender a base de esfuerzo y logros. Yo admiro muchísimo a las mujeres que practican deportes de contacto y llegan a la cima a base de esfuerzo, no a las que se dejan pelos en los sobacos y le dicen a los demás lo que tienen que pensar o hacer sin aportar soluciones a nada. Aún se quejan de la ley actual de violencia de género. No sé que mas quieren conseguir si ya prácticamente meten en la cárcel y lapidan a los hombres por una decuncia falsa con un informe médico de autolesiones.

Creo que de verdad piensan que los hombres que levantan más peso en competiciones es por tráfico de influencias.

Es paradójico que estas mujeres que reclaman libertad e igualdad sean manipuladas e instrumentalizas para conseguir lo contrario.

Se dedican a estigmatizar a los hombres de forma general en lugar de atajar el problema y focalizarlo sobre los maltratadores. Se olvidan que muchos de los hombres que estigmatizan pueden haber sido también víctimas de la violencia por parte de padres maltratadores y acaban convirtiendo en enemigos a los que podrían ser sus mejores aliados. Y es que estos movimientos dejarían de existir si se erradicase el problema. A los políticos que manejan las masas no les conviene la erradicación, porque sin problemas no hay un fin que sirva de escusa para la manipulación. En España somos partícipes constantes del engrandecimiento, creación de problemas y de como se trae a debate cuestiones que ya estaban superadas con el objetivo de radicalizar a las masas consiguiendo así movilizarlas a votar para perpetuar su status y poder.

92  Foros Generales / Sugerencias y dudas sobre el Foro / Duda a cerca de la norma de no resolver tareas a los usuarios del foro. en: 5 Abril 2021, 14:57 pm
Hola, quería exponer una duda a cerca de una respuesta que hice a un usuario en el foro de C/C++.
En concreto este es el mensaje al que hago referencia: https://foro.elhacker.net/programacion_cc/crash_en_la_consola-t509690.0.html;msg2239804#msg2239804

Mi duda es a cerca de la norma de no resolver tareas a los usuarios del foro. E publicado una respuesta en la que incluyo un ejemplo completo del programa que necesita realizar a posteriori de que el usaurio ya ha conseguido dar con una solución y la ha publicado en el tema.

Mi motivación para aportar una respuesta completa a la tarea viene a coalición con lo que he expuesto en el mismo mensaje. En concreto trato de ejemplificar el uso de identación, funciones puras (lo que trata de usar el usuario que abre el tema) y proponer otra alternativa más organizada a la resolución de la tarea.

La razón de mi duda viene tras recibir un mensaje privado

No entendí cual era el problema asique respondí explicando mi motivación al publicar el código y preguntando cual era el motivo. No me convenció el argumento de la cantidad de lineas de código con respecto al usuario ya que el usuario omitió varios saltos de lineas que yo si añadí para que el código quedase mejor organizado así como el uso de más includes y funciones por mi parte en lugar de meter todo en una sola función, lo cual de por sí cada función son mínimo 4 o 5 lineas más. El prototipo, la declaracion, el return, el corchete final de la declaración y las llamadas que hago en cout, que decidí utilizar 3 llamadas independientes de cout en lugar de una sola para que el código quedase más claro

Tras lo cual:

Yo personalmente creo que mi código no es excesivo ni innecesario, asique en lugar de seguir respondiendo por privado y seguir argumentando (algo que obviamente no va a llevar a ningún lugar porque ya ambas partes hemos expuesto nuestra opinión a cerca del tema y no parece que vayamos a llegar a ningún lado) decido exponer mi duda aquí para zanjar el debate a cerca de si es correcta mi respuesta o no.
En caso de no serlo no tengo ningua objeción en que sea eliminado, modificado o lo que sea.

También me gustaría tener unas directrices claras de cuanto código es excesivo para poder seguir participando sin inclumplir las normas. O si la cantidad de código permitido en una respuesta mantiene algún tipo de relación con la cantidad de código sin identar que publica el usuario que abre el tema.

[MOD] Retirados los MP, estos no deben ser publicados en publico, al ser privados.
93  Programación / Programación C/C++ / Re: Crash en la consola en: 5 Abril 2021, 04:24 am
Te ha quedado un poco caótico, con muchísimas variables innecesarias emy algunas expresiones que puedes eliminar y no pasa nada.

Lineas 6, 7 y 8 deberían ir dentro de main. El motivo es que si declaras las variables globales, estas van a poder ser accesibles por librerías de otros programadores que incluyas en tu código, tus propias funciones que no deberían de poder acceder a ellas, se malgasta memoria al estar siempre accesibles hasta que se acabe el programa, etc. Usa solo globales cuando sea imprescindible.

Linea 11 y demás; deberías de identar (dar espacios antes de la palabra) dentro de cada cuerpo de función, bucle, condicional, etc. Es recomendable dar entre 2 y 4 (ambos incluidos) espacios. A tu gusto pero el número que eligas úsalo de forma consistente en todo el código del programa. Dar espacios facilita la interpretación del código a simple vista, mejora la lectura y es más sencillo detectar errores como la falta de un corchete.

En tu función int PedirEstudiantesEnRango(), retornas números, pero en ningún moemento haces nada de nada con el valor que se retorna. Si quieres una función que haga algo pero que no retorne nada, entonces declárala como void en lugar de int y te ahorras la linea de return. Lo lógico cuando usas funciones, es que hagan tareas más concretas y especializadas, y no funciones que hagan todo.

En lugar de usar globales dentro de la función PedirEstudianteEnRango, lo correcto es declarar las variables dentro de main y enviárselas como argumento de la llamada a la función. Y en la propia funcion las pones como parámetros. Ejemplo de lo que haces:
Código
  1. int numero1, numero2;
  2.  
  3. int sumar();
  4.  
  5. int main(){
  6. numero1 = 30;
  7. numero2 = 40;
  8. sumar();
  9. return 0;
  10. }
  11.  
  12. int sumar(){
  13. int resultado=numero1+numero2;
  14. cout<<"El resultado es: "<<resultado;
  15. return resultado;
  16. }

Ejemplo de lo que deberías hacer:
Código
  1. int sumar(int num1, int num2);
  2.  
  3. int main() {
  4.  int numero1 = 30;
  5.  int numero2 = 40;
  6.  
  7.  cout << "El resultado es: " << sumar(30, 40);
  8. }
  9.  
  10. int sumar(int num1, int num2) {
  11.  return num1 + num2;
  12. }

La linea 28 no hace nada. Tu compilador debería de lanzarte un warning avisándote de que eso ahí no se está usando para nada.

En las linea 29 y 31 los paréntesis en (i+1) no hacen nada, es como no ponerlos.

En la linea 51 tienes que convertir a doble ambos valores primero antes de dividirlos para que no trunque los decimales. Tal como lo tienes si divides 3 / 2 te da 1 en lugar de 1.5


Te dejo como lo haría yo por si te sirve de orientación para mejorar tu versión del programa conjuntamente con los consejos que te dejo y los que te ha dejado K-YreX. Repasa sus consejos y trata de entenderlos todos.



Código
  1. #include <iostream>
  2. #include <string>
  3. #include <vector>
  4.  
  5. using namespace std;
  6.  
  7. struct Estudiante {
  8.  int edad;
  9.  string sexo;
  10.  string carrera;
  11. };
  12.  
  13. int promedioEdadEstudiantesIngenieria( vector<Estudiante> &listado );
  14. int porcentajeHombresUniversitarios( vector<Estudiante> &listado );
  15. int porcentajeMujeresEstudianIngenieria( vector<Estudiante> &listado );
  16.  
  17. int main() {
  18.  int numeroEstudiantes = 0;
  19.  cout << "Cuantos estudiantes vas a introducir?" << endl;
  20.  cin >> numeroEstudiantes;
  21.  
  22.  vector<Estudiante> listadoEstudiantes;
  23.  
  24.  for (int i = 0; i < numeroEstudiantes; ++i) {
  25.    Estudiante estudiante;
  26.    cout << "Edad del estudiante?" << endl;
  27.    cin >> estudiante.edad;
  28.  
  29.    cout << "Sexo del estudiante?" << endl;
  30.    cin >> estudiante.sexo;
  31.  
  32.    cout << "Carrera que cursa el estudiante?" << endl;
  33.    cin >> estudiante.carrera;
  34.  
  35.    listadoEstudiantes.push_back(estudiante);
  36.  }
  37.  
  38.  cout << "Promedio de edad de los estudiantes de ingenieria: " << promedioEdadEstudiantesIngenieria(listadoEstudiantes) << endl;
  39.  cout << "Porcentaje de universitarios masculinos: " << porcentajeHombresUniversitarios(listadoEstudiantes) << "%" << endl;
  40.  cout << "El " << porcentajeMujeresEstudianIngenieria(listadoEstudiantes) << "% de las mujeres universitarias estudian ingenieria" << endl;
  41.  
  42.  return 0;
  43. }
  44.  
  45.  
  46. int promedioEdadEstudiantesIngenieria( vector<Estudiante> &listado ) {
  47.  int promedio = 0;
  48.  int numeroDeEstudiantesIngenieria = 0;
  49.  for (int i = 0; i < listado.size(); ++i) {
  50.    if (listado[i].carrera == "Ingenieria" || listado[i].carrera == "ingenieria") {
  51.      promedio += listado[i].edad;
  52.      ++numeroDeEstudiantesIngenieria;
  53.    }
  54.  }
  55.  return promedio / numeroDeEstudiantesIngenieria;
  56. }
  57.  
  58.  
  59. int porcentajeHombresUniversitarios( vector<Estudiante> &listado ) {
  60.  int numeroHombres = 0;;
  61.  for (int i = 0; i < listado.size(); ++i) {
  62.    if (listado[i].sexo == "Hombre" || listado[i].sexo == "hombre") {
  63.      ++numeroHombres;
  64.    }
  65.  }
  66.  return 100 / listado.size() * numeroHombres;
  67. }
  68.  
  69.  
  70. int porcentajeMujeresEstudianIngenieria( vector<Estudiante> &listado ) {
  71.  int numeroMujeresEnTodasCarreras = 0,
  72.  numeroMujeresEstudianIngenieria = 0;
  73.  for (int i = 0; i < listado.size(); ++i) {
  74.    if (listado[i].sexo == "Mujer" || listado[i].sexo == "mujer") {
  75.      ++numeroMujeresEnTodasCarreras;
  76.      if (listado[i].carrera == "Ingenieria" || listado[i].carrera == "ingenieria") {
  77.        ++numeroMujeresEstudianIngenieria;
  78.      }
  79.    }
  80.  }
  81.  return 100 / numeroMujeresEnTodasCarreras * numeroMujeresEstudianIngenieria;
  82. }
94  Programación / .NET (C#, VB.NET, ASP) / Re: Separar binario por cada byte en: 3 Abril 2021, 13:40 pm
Suma de 1 en 1 en lugar de 8 en 8 y cuando i % 8 == 0 añades un espacio.
Me refiería a esto.
Código
  1. for (int i = 0; i < recibidos.Length; i += 1) {
  2.  richTextBox1.Text += recibidos[i];
  3.  if (i % 8 == 0) {
  4.    richTextBox1.Text += " ";
  5.  }
  6. }
95  Programación / .NET (C#, VB.NET, ASP) / Re: Separar binario por cada byte en: 2 Abril 2021, 23:05 pm
Uhh, no sabía que sucedía ese error.

Suma de 1 en 1 en lugar de 8 en 8 y cuando i % 8 == 0 añades un espacio.
96  Programación / .NET (C#, VB.NET, ASP) / Re: Separar binario por cada byte en: 2 Abril 2021, 06:46 am
Usa un bucle

Código
  1. string binario = "001000111100011110010111110000001011000000001101";
  2. string resultado = "";
  3. for (int i = 0; i < binario.Length; i += 8) {
  4.  resultado += binario.Substring(i, 8) + " ";
  5. }

Substring pilla desde el index hasta los siguientes 8 caracteres, asique si solo quedan por ejemplo 3, los pillas igual.

Te sobra un espacio al final. Puedes sumarle 8 al iterador para ver si en la siguiebte iteración ya no vas a entrar en el bucle A.K.A no añadas el espacio la última vez que iteras porque ya acabaste de añadir bytes. O reasignas con Substring usando 0, y resultado.Length -1
97  Programación / Scripting / Re: Decrypt Lua Game Guadian Script en: 2 Abril 2021, 06:07 am
Puedes publicar aquí el script, o es muy largo?
98  Programación / Programación C/C++ / Re: Mediana en un Array en: 2 Abril 2021, 05:57 am
La media se realiza sumando todos los elementos y dividiendo el resultado de la suma por el número de elementos.

La forma más rápida de recorrer un vector es con el
Código
  1. for(int element : myVector) {
  2.  cout << element << endl;
  3. }

Para sumar múltiples elementos, ve guardándolos en una variable.
Código
  1. int total = 0;
  2. ...
  3. total += element;

Para calcular la media divides el total entre el número de elementos. Para calcular el número de elementos del vector puedes usar myVector.size() o myVector.length()
99  Programación / Ingeniería Inversa / Re: No entiendo esto en las Apps para Android en: 1 Abril 2021, 14:46 pm
Pasa todo por el servidor. Haz un bot para jugar 24/7
100  Programación / Ingeniería Inversa / Re: No entiendo esto en las Apps para Android en: 1 Abril 2021, 02:46 am
hola

Recién he intentado manipular valores y datos de aplicaciones de Android así como juegos accediendo como root a los archivos de la aplicación,  pero resulta totalmente inútil porque a iniciar la aplicación dichos archivos se actualizan de inmediato.
 
Supongamos que en un juego tienes 5000 fichas y tu modificas el valor a 9.999.999, incluso puede que este valor aparezca durante un segundo pero dura poco nuevamente aparecerá 5000. O por ejemplo una aplicación de esas de prueba de 5 usos y que al llegar a 0 tienes que pagar o esperar 24h, pues conseguido pero de inmediato la aplicación detecta el engaño.

Entonces si todo está en servidor, online para que diantres necesitan las aplicaciones crear archivos inútiles. Nada mas iniciar la aplicación los archivos que modifiqué vuelven a su estado original, eso significa que dichos datos se leen vía servidor, ¿para qué crea los archivo entonces?

No lo entiendo


No es lo mismo descargarte 2 teras cada vez que abres una aplicación que contrastar con el servidor enviando un hash si los archivos ya están descargados.
Páginas: 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 ... 280
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines