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


 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


Páginas: [1] 2 3 4 5 6 7 8 9 10
 1 
 en: Hoy a las 03:22 
Iniciado por Jay - Último mensaje por Jay
Hola amigos, tengo una duda con un arreglo char lo que pasa es que necesito que el arreglo que tengo declarada como w y quiero que se repita n veces  y tengo la invetida de w 2n veces, pero esa n quiero que sea capturada por el usuario
Código
  1.  
  2. #include<stdio.h>
  3. #include<stdlib.h>
  4. #include<string.h>
  5. #include<math.h>
  6.  
  7. char *invertir(char cadena[]) {
  8.  int longitud = strlen(cadena);
  9.  char temporal;
  10.  for (int izquierda = 0, derecha = longitud - 1; izquierda < (longitud / 2);
  11.       izquierda++, derecha--) {
  12.    temporal = cadena[izquierda];
  13.    cadena[izquierda] = cadena[derecha];
  14.    cadena[derecha] = temporal;
  15.  }
  16.  return cadena;
  17. }
  18.  
  19.  
  20.  
  21. int subCadena(char *cad, char *subCad, int ini, int fin)
  22. {
  23.    int iC, iS;
  24.  
  25.    if((ini>fin)|| (ini<0) || (fin>=strlen(cad)))
  26.        return 0;
  27.  
  28.    iS = 0;
  29.    for (iC = ini; iC<=fin; iC++){
  30.        subCad[iS] = cad[iC];
  31.        iS++;
  32.    }
  33.  
  34.    subCad[iS] = '\0';
  35.  
  36.    return 1;
  37.  
  38. }
  39.  
  40.  
  41. int subCadenaApellido(char *cad, char *subCad, int ini, int fin)
  42. {
  43.    int iC, iS;
  44.  
  45.    if((ini>fin)|| (ini<0) || (fin>=strlen(cad)))
  46.        return 0;
  47.  
  48.    iS = 0;
  49.    for (iC = ini; iC<=fin; iC+=8){
  50.        subCad[iS] = cad[iC];
  51.        iS++;
  52.    }
  53.  
  54.    subCad[iS] = '\0';
  55.  
  56.    return 1;
  57.  
  58. }
  59.  
  60. char *strstr(const char *haystack, const char *needle);
  61.  
  62.  
  63.  
  64. int main(){
  65.  
  66.  
  67.    char alfabeto[38]="1809669 mario alberto charles martinez",i[38], w[38],winv[38], j[38], lenguaje[34];
  68.    char cadena[37], k[37];
  69.    int n;
  70.  
  71.    printf("Introduce el valor de n: ");
  72.    scanf("%d", &n);
  73.  
  74.        printf("Introduce la cadena a verificar: ");
  75.        scanf("%s", &cadena);
  76.  
  77.    if(subCadena(alfabeto,i,0,6) == 0){
  78.  
  79.        printf("Error");
  80.  
  81.    }
  82.  
  83.    if(subCadenaApellido(alfabeto,w,22,30) == 0){
  84.  
  85.        printf("Error");
  86.    }
  87.  
  88.    for(int i=1; i<n; ++i){
  89.        k[i] = w;
  90.        printf("%s", k);
  91.  
  92.    }
  93.  
  94.    if(subCadena(alfabeto,i,0,6) == 0){
  95.  
  96.        printf("Error");
  97.  
  98.    }
  99.  
  100.    if(subCadenaApellido(alfabeto,winv,22,30) == 0){
  101.  
  102.        printf("Error");
  103.    }
  104.  
  105.     if(subCadena(alfabeto,j,8,12) == 0){
  106.  
  107.        printf("Error");
  108.  
  109.    }
  110.  
  111.    strcat(lenguaje, i);
  112.    strcat(lenguaje, w);
  113.    strcat(lenguaje, i);
  114.    strcat(lenguaje, invertir(winv));
  115.    strcat(lenguaje, j);
  116.    strcat(lenguaje, j);
  117.  
  118.  
  119.    if (strstr(lenguaje, cadena) != NULL) {
  120.    printf("Existe %s dentro de %s\n", cadena, lenguaje);
  121.    } else {
  122.    printf("No existe %s dentro de %s\n", cadena, lenguaje);
  123.    }
  124.  
  125. }
  126.  
  127.  
  128.  
  129.  

Espero me puedan ayudar, gracias

 2 
 en: Hoy a las 02:14 
Iniciado por FranAI - Último mensaje por FranAI
Ya varias veces me viene pasando lo mismo con otros programas, el condicional if no me compara dos strings,  no entra, pasa de largo. He usado tanto el operador "==" como el metodo .compare, y realmente no se que puede estar mal.
CPP de carga:
Código
  1. #include <iostream>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include <stdio.h>
  5. using namespace std;
  6. struct registro{
  7. int numCuenta, saldoCuenta;
  8. string apellido, nombre, codCuenta;
  9. };registro r[6];
  10. int main()
  11. {
  12. FILE *p = fopen("registros4.dat", "ab");
  13. if(p == NULL)
  14. {
  15. cout << "Error al abrir el archivo.";
  16. exit(1);
  17. }
  18. else
  19. {
  20. cout << "Seis clientes" << endl;
  21. for(int i = 0; i < 6; i++)
  22. {
  23.  
  24. cout << "CLIENTE " << i+1 << endl;
  25. cout << "Ingrese numero de cuenta del cliente: ";
  26. cin >> r[i].numCuenta;
  27. cout << "Ingrese codigo de cuenta del cliente: ";
  28. cin >> r[i].codCuenta;
  29. cout << "Ingrese nombre del cliente: ";
  30. cin >> r[i].nombre;
  31. cout << "Ingrese apellido del cliente: ";
  32. cin >> r[i].apellido;
  33. cout << "Ingrese saldo de la cuenta del cliente: ";
  34. cin >> r[i].saldoCuenta;
  35. fwrite(&r[i], sizeof(registro), 1, p);
  36. }
  37. system("pause");
  38. fclose(p);
  39. }
  40. }

CPP del proceso, donde está el problema:
Código
  1. #include <iostream>
  2. #include <stdlib.h>
  3. #include <string>
  4. #include <stdio.h>
  5. using namespace std;
  6. struct registro{
  7. int numCuenta, saldoCuenta;
  8. string apellido, nombre, codCuenta;
  9. };registro r[6];
  10. int main()
  11. {
  12. FILE *p = fopen("registros4.dat", "rb");
  13. if(p == NULL)
  14. {
  15. cout << "Error al abrir el archivo.";
  16. exit(1);
  17. }
  18. else
  19. {
  20. int num = 0, importe = 0, a = 0, b = 0;
  21. string A = "A", B = "B", C = "C", D = "D";
  22. for(int i = 0; i < 6; i++)
  23. {
  24. fread(&r[i], sizeof(registro), 1, p);
  25. if(r[i].codCuenta.compare(B) == 0)
  26. {
  27. cout << "Cuenta bloqueada" << endl;
  28. cout << "Numero de cuenta: " << r[i].numCuenta << endl;
  29. cout << "Nombre del cliente: " << r[i].nombre << endl;
  30. cout << "Apellido del cliente: " << r[i].apellido << endl;
  31. cout << "Saldo de cuenta: " << r[i].saldoCuenta << endl << endl;
  32. }
  33. if(r[i].codCuenta.compare(C) == 0)
  34. {
  35. num = i;
  36. cout << "Cuenta en gestion judicial" << endl;
  37. cout << "Numero de cuenta: " << r[i].numCuenta << endl;
  38. cout << "Nombre del cliente: " << r[i].nombre << endl;
  39. cout << "Apellido del cliente: " << r[i].apellido << endl;
  40. cout << "Saldo de cuenta: " << r[i].saldoCuenta << endl << endl;
  41. importe += r[num].saldoCuenta;
  42. }
  43. if(r[i].codCuenta.compare(A) == 0)
  44. {
  45. a++;
  46. }
  47. if(r[i].codCuenta.compare(D) == 0)
  48. {
  49. b++;
  50. }
  51. }
  52.  
  53. cout << "Cuentas normales: " << b << endl;
  54. cout << "Cuentas cerradas: " << a << endl;
  55. }
  56. system("pause");
  57. fclose(p);
  58. return 0;
  59. }

 3 
 en: Hoy a las 01:42 
Iniciado por FreeCellnet - Último mensaje por WHK
Principalmente, no es lo mismo tener múltiples placas y gpu y que este ya pueda igualar todo el trabajo que hace un super computador.

Para comenzar, el uso de múltiples placas significa el uso de una motherboard que te permita soportarlas e interconectarlas de manera simultanea y aun así, cada tarjeta tendrá su propia latencia debido a que cada una debe compartir una velocidad de transferencia por slot y por chip encargado del bus de datos serial, en un supercomputador utilizas placas especiales modulares donde puedes insertar todas las cpu y gpu que quieras al msimo hardware y trabajar de manera simultanea entre ellas sin perdida de latencia o de transferencia ya que no son independientes sino que son todas gestionadas bajo el mismo hardware, ais que tienes un hardware que en la práctica soporta cientos de sockets de cpu y cada uno con cientos de nucleos y no es llegar y embutir como un slot de pc, estos son placas gigantes y largas con componentes electrónicos especiales, a eso suma el chasis personalizado para ventilar todo eso y mantener una continuidad operativa de una manera eficiente y constante, soporte para fuentes de energia redundantes, sistemas de extracción de hardware en caliente, etc, cosas que ni en sueño tendrias en una pc, imagina que una placa madre de un supercomputador está diseñada para trabajar en caliente con cada componente electrónico, a demás estos son capaces de trabajar unidos, cada rack por hardware directamente, no por red como lo haría por ejemplo un pc con procesamiento distribuido, acá estamos hablando de una eficiencia máxima con la menor pérdida posible, un pc convencional por más cpus o gpus que tenga no podrá igualar su desempeño ni forma de escalar, si pudieras comprar esa cantidad de tarjetas gráficas no podrías escalar tu sistema de la misma manera que lo necesita un supercomputador según la complejidda de la tarea, a menos que tengas que estar desarmando el supercomputador cada ves que necesites hacer una tarea diferente.

En el caso de amazon, es algo muy diferente ya que su capacidad de hardware es constante y lineal y muy rara ves necesitan  escalar a menos que sus servicios escalen tambien, lo único dinámico es el uso del hardware, o sea, lo digital, pero el poder de hardware es constante por nodo y datacenter, en cambio un supercomputador necesita escalar en hardware, no en software.

Entonces, el costo está definido no solo por su poder de procesamiento, sino tambien por la complejidad de la construcción del hardware, a demás, no hay una demanda tal que permitiera a una compañía fabricar hardware de manera masiva para supercomputadores porque nadie en sus casas tiene el dinero para comprar y armar uno, ais que los costos de ensamblaje se encarecen ya que no hay una demanda y por lo general el diseño se debe considerar dentro del costo de la adquisición de cada pieza, no es como un pc donde compras una nvidia tesla por ejemplo, donde nvidia las manda a fabricar de manera masiva, no tienen que gastar dos veces en crear los moldes o mandar a hacer los planos, un supercomputador está diseñado solo para el modelo específico y para un uso específico, asi que todo tiende a ser mas costoso, a demás de lo "especial" que es cada pieza.

Un ejemplo claro, un disco duro de 1tb tiene un precio, pero el de 2tb no cuesta el doble, hoy cuesta lo que vale proporcionalmente 1.5tb, pero los de 4tb cuestan lo que proporcionalmente deberían costar casi 10 discos de 1tb y es por la complejidad de su construcción, su escacez de público objetivo, costos en almacenaje (por lo general pasan mas tiempos guardados y eso tiene un costo de almacenaje), etc. Asi que no todo tiene un costo proporcional a su capacidad o potencia, hoy un procesador de 30 nucleos que corre a 8.0 Ghz te puede costar lo mismo que comprar unos 100 razen.

Ahora, en la práctica:

PC v/s supercomputador con la misma capacidad de procesamiento:

El pc se quemaría si lo tienes a full trabajando meses completos o años completos sin apagar. Podrás decir que para eso puedes ponerle refrigeración líquida y todo lo demás, pero los ventiladores no tienen una vida útil tan larga y en algun momento tendrás que apagarla para cambiarle las piezas que fallan, un pc normal no tiene opcion de utilizar una fuente de poder edundante, imagina tener que realizar un calculo que tarda dos meses y justo el ultimo dia se te va la luz o tu ups no aguanta o necesitas escalar a un hardware superior, deberás detener lo que estás haciendo, por eso en el mundo corporativo no puedes usar un pc para aloojar un sitio web ni una raspberry, para eso se utilizan servidores rackeables por unidad, los cuales tienen un chasis especial que soporta altas temperaturas, fuentes de poder redundantes para evitar apagarlos en caso de cortes de luz, tienen un diseño físico para aumentar la eficiencia de refrigeracion y ahorrar costos, no necesita mantencion tan periodica como un pc, pueden pasar años encendidos sin problemas y con toda seguridad, un pc no te da seguridad por mas que confies en una marca o hayas tenido buenas experiencias: https://www.winpy.cl/files/w12575_2017.jpg , por otro lado un superservidor da un paso mas arriba que un servidor rackeable, a pesar de que uns ervidor rackeable soporta cantidades extraordinarias de cpus en una misma placa, cantidad gigantezcas de memoria ram y placas completas para poner gpus de tipo tesla, aun asi esto le queda corto a un super computador por temas de eficiencia y escalabilidad, con un pc convencional talves termines gastando mucha mas energia tanto en fuentes de pdoer como en ventilación, espacio físico, mantención, cuidados, etc, tener diez mil computadores no es algo eficiente en comparación a un super servidor, recuerda que a demás debes pagar el espacio físico donde tendrás todo, pagar cuentas de luz, pagarle a personal técnico de mantención, etc.

A demás, para rematar este tema, si usas varias gpu en un pc, que sistema operativo le pondrías?, alguno que sea compatible al 100% con el hardware?, le pondrás windows 10?, eso es totalmente absurdo y perderías mucho rendimiento y windows 10 no está diseñado para escalar a ese nivel, por eso es que la mayoría de los supercomputadores utilizan unix o linux y hardware especializado que sea totalmente compatible.

En otras palabras, el costo del supercomputador es mas elevado que un pc gigante porque un pc gigante no te da lo que si te da el supercomputador.

 4 
 en: Hoy a las 01:22 
Iniciado por Flamer - Último mensaje por Flamer
https://en.wikipedia.org/wiki/South_of_Pico

PD. La encontre despues de haberla reconocido en Google con: Christina Hendricks cigarettes bride movie.


gracias amigo ahora corre de mi cuenta bajarla

saludos

 5 
 en: Hoy a las 01:20 
Iniciado por nuriabarcelona355 - Último mensaje por nuriabarcelona355
Quiero saber si está página  es de confiar

https://www.elinformatico.org/

 6 
 en: Hoy a las 01:09 
Iniciado por El_Andaluz - Último mensaje por El_Andaluz

La revista satírica francesa Charlie Hebdo vuelve a responder a su manera a los ataques contra Francia y a generar controversia con su número de esta semana. En esta ocasión lo hace con una caricatura en calzoncillos del presidente turco, Recep Tayyip Erdogan, en la que levanta la túnica a una mujer musulmana y deja al aire sus nalgas y sus piernas, mientras dice: "¡Ouh, el profeta!".

El semanario, que publicará su nueva edición este miércoles, ha adelantado en Twitter el diseño de la portada este martes por la tarde y las respuestas en las redes no se han hecho esperar. "En privado, es divertido", es el texto que acompaña a la imagen en referencia al mandatario turco, que en el dibujo aparece sentado en un sillón y con una lata en la mano.

Esta ilustración llega tras las críticas del presidente turco a principios de septiembre a la republicación por parte de la revista de las caricaturas de Mahoma que desataron una ola de disturbios en países de mayoría musulmana en 2005 y 2006.

Ve la luz también justo después de que Erdogan haya animado a boicotear los productos franceses, tras la defensa del presidente galo, Emmanuel Macron, de la libertad de expresión, tras el asesinato del profesor Samuel Paty a manos de un islamista radical checheno.

El dirigente turco, además de desincentivar la compra de productos franceses, comparó la islamofobia, que "se expande en Europa como una peste", con la situación de "los judíos hace 80 años", antes del Holocausto perpetrado por los nazis, que exterminó a la mayoría de la población hebrea del continente.





Creo que Charlie Hebdo la ha Vuelto a liar veremos a ver como responde Cerdogan cuando vea hoy Miércoles su caricatura de portada en la revista satirica no me quiero ni imaginar la cara que va poner. :xD



 7 
 en: Hoy a las 00:19 
Iniciado por FreeCellnet - Último mensaje por FreeCellnet
Insisto, no has montado una de 1,11 hexaflops. Has cogido la velocidad teórica que alcanzaría una build y la has multiplicado X veces para llegar a tu objetivo. No has tenido en cuenta ni software, ni distribución de tareas, ni paralelización, ni nada. Asumes que simplemente montas 10 pcs con esos componentes y la tarea esta acabada.. y no va así xD

Eso tampoco es cierto.

Saludos

Tienes razon :rolleyes: pero 400 millones seguro que no cuestan, lo que si cuesta 432 millones de euros es pagar durante 10 años la factura de la luz de 18MW de consumo. Tendria que hacer un calculo de una instalacion fotovoltaica. Serian un poco mas de 60.000 modulos fotovoltaicos de 300 vatios pico, que a 100€ la unidad seria nunos 60 millones de euros mas otros 40 millones porque si, y asi no nos gastariamos 400 milllones pagando la luz. Pero entonces, solo prodria funcionar de dia. :xD, habria que almacenar energia por denoche , pero las baterias no serian opcion, habria que vender sobrante y compensar por la noche, o turbinar un embalse subiendo el agua con bombas de rodete por el dia con energia sobrante, y turbinar con una francis por la noche al embalse de abajo, para producir energia. Con las perdidas que tienen las turbinas se deberia sobredimensionar la instalacion fotovoltaica x 2 , teniendo en cuenta el exceso tamb para turbinar hacia arriva por el dia, y hacia abajo por la noche.

 8 
 en: Ayer a las 23:58 
Iniciado por michfere43 - Último mensaje por michfere43
Hola si me pueden ayudar , necesito hacer el juego de las torres de hanoi pero me falta el metodo de apilar y desapilar
#include <iostream>

using namespace std;

int iniciarJuego(int torre1[], int torre2[], int torre3[], int cima1, int discos);
void mostrarTorres(int torre1[], int torre2[], int torre3[], int discos);
void mostrarCima(int cima1, int cima2, int cima3);


int main()
{
   cout<<"T O R R E  D E  H A N O I"<<endl<<endl;
   int discos = 0;
   cout<<"Para iniciar indica el numero de discos: ";
   cin>>discos;

   
   int torre1[discos];
   int cima1 = -1;
   int torre2[discos];
   int cima2 = -1;
   int torre3[discos];
   int cima3 = -1;
   int opc = 0;
   int origen = 0;
   int destino = 0;

   cima1 = iniciarJuego(torre1, torre2, torre3, cima1, discos);
   //mostrarTorres(torre1, torre2, torre3, discos);
   //mostrarCima(cima1, cima2, cima3);
      if(discos==1)
{
   cout<<"mover disco de torre 1 a torre 3" ;
}
   else
   {
      cout<<"Selecciona una opcion: \n 1. Realizar un movimiento\n 2. Terminar el juego";
      cin>>opc;
      switch(opc)
      {
         case 1:
            cout<<endl<<endl<<"Torre origen: ";
            cin>>origen;
            void moverdisco();
            switch(origen)
            {
               case 1:
                  cout<<endl<<"Torre destino: \n 2. Torre 2\n 3. Torre 3"<<endl;
                  cin>>destino;
                  if(destino == 2 || destino == 3)
                  {
                     void desapilar();   
                  }else{
                     cout<<endl<<"Torre destino invalido"<<endl;
                  }
                  break;
               case 2:
                  cout<<endl<<"Torre destino: \n 1. Torre 1\n 3. Torre 3"<<endl;
                  cin>>destino;
                  break;
               case 3:
                  cout<<endl<<"Torre destino: \n 2. Torre 2\n 1. Torre 1"<<endl;
                  cin>>destino;
                  break;
               default:
                  cout<<endl<<"Torre destino invalido"<<endl;
                  break;
            }
            break;
         case 2:
            break;
         default:
            cout<<endl<<"Torre origen invalido"<<endl;
            opc = 3;
            break;
      }
   }while(opc == 3);
   
   
   return 0;
}

int iniciarJuego(int torre1[], int torre2[], int torre3[], int cima1, int discos)
{
   for(int i = 0; i<discos; i ++)
   {
      torre1 = discos - i;
      cima1 ++;
      
      torre2 = 0;
      torre3 = 0;
   }
   
   return cima1;
}

void mostrarTorres(int torre1[], int torre2[], int torre3[], int discos)
{
   cout<<endl<<"Torre 1: ";
   for (int i = 0; i<discos; i++)
   {
      cout<<torre1<<" ";
   }
   
   cout<<endl<<"Torre 2: ";
   for (int i = 0; i<discos; i++)
   {
      cout<<torre2<<" ";
   }
   
   cout<<endl<<"Torre 3: ";
   for (int i = 0; i<discos; i++)
   {
      cout<<torre3<<" ";
   }
}

void mostrarCima(int cima1, int cima2, int cima3)
{
   cout<<endl<<endl<<"Indice cima 1: "<<cima1;
   cout<<endl<<"Indice cima 2: "<<cima2;
   cout<<endl<<"Indice cima 3: "<<cima3;
}

void desapilar()
{
   
}
void apilar()
{
   
}


 9 
 en: Ayer a las 23:50 
Iniciado por FreeCellnet - Último mensaje por #!drvy
Citar
cuando la mia es de 1,11 hexaflops que cuesta 5 veces menos.

Insisto, no has montado una de 1,11 hexaflops. Has cogido la velocidad teórica que alcanzaría una build y la has multiplicado X veces para llegar a tu objetivo. No has tenido en cuenta ni software, ni distribución de tareas, ni paralelización, ni nada. Asumes que simplemente montas 10 pcs con esos componentes y la tarea esta acabada.. y no va así xD

Citar
no comercial, que seria mas barato comprar al por mayor.

Eso tampoco es cierto.

Saludos

 10 
 en: Ayer a las 23:44 
Iniciado por FreeCellnet - Último mensaje por FreeCellnet
Es dificil calcular las horas que costaria pagar a 30 operarios para armar 18000 computadoras y pagar a los demas para adecuar o construir un edificio de 10 plantas de 225 metros cuadrados, pero no creo que cueste 400 millones de euros, porque toda la infraestructura electrica son 36 millones y las computadoras otros 60 millones que han sido presupuestadas siempre redondeando hacia arriba.

De ahí que no me crea que haya costado en america , 500 millones de euros una computadora de 200 petaflops, cuando la mia es de 1,11 hexaflops que cuesta 5 veces menos.

He redondeado y agregado decenas de millones a los equipos informaticos, a precio domestico , no comercial, que seria mas barato comprar al por mayor.

Páginas: [1] 2 3 4 5 6 7 8 9 10
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines