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 2 3 4 5 6 7 8 9 [10] 11 12 13 14 15 16 17
91  Foros Generales / Sugerencias y dudas sobre el Foro / [Sugerencia] Dar votos a artículos/respuestas en: 24 Diciembre 2015, 21:50 pm
Hola a todos!

Estaría bueno agregar algún plugin para dar votos a un artículo.
¿Hay algún plugin para dar negativos o positivos a ciertos artículos?
Y también a respuestas del propio artículo.

Saludos!
92  Programación / Desarrollo Web / Re: [Encuesta] ¿Qué editor de código utilizas? (2015) en: 24 Diciembre 2015, 18:36 pm
Atom!
93  Programación / Programación C/C++ / Re: Conectarme a servidor SMTP en: 24 Diciembre 2015, 06:13 am
El protocolo de correo SMTP no requiere autenticación, no necesitás conectarte al SMTP de Gmail para enviarte a un correo.

Podés enviarte un correo desde una dirección falsa, en Gmail te va a saltar un aviso de que la dirección de correo puede ser falsa, de todos modos te llegará.

\m/
94  Programación / Programación C/C++ / Re: programadores c/c++ en: 24 Diciembre 2015, 06:07 am
Como se nota que ni siquiera hiciste un mínimo esfuerzo para buscar información hay libros por todos lados. Usa GOOGLE!

Este tipo de post deberían ser directamente borrados.

 >:(
Saludos!
95  Programación / Scripting / Re: Script netstat valñidacion de IP en txt en: 24 Diciembre 2015, 05:59 am
Primero de todo para que tenés una variable llamada IP si ni siquiera la usás.
Segundo, te faltó la etiqueta de código, queda horrible así.

Específicamente, ¿qué querés hacer? ¿comprobar si un puerto está abierto?
¿A qué carajo te referís con validación de IP?

Ya habías preguntado algo parecido ...

Puede que haya otras formas de hacerlo.
 
96  Programación / Scripting / Re: Instalacion bash para Arch Linux en: 24 Diciembre 2015, 05:47 am
Si podés ejecutar comandos desde la consola, como no vas a poder ejecutar scripts?

WTFF!!

Vos tenés por lo menos la más mínima idea de lo que estás hablando ?

97  Programación / Programación General / [Haskell] Ejemplos de funciones: tail, reverse, zip, etc. en: 24 Diciembre 2015, 03:33 am
Hola a todos!

He creado estas funciones con el fin de entender como funcionan cada una de ellas.
Por eso algunas ya están definidas como por ejemplo tail,reverse, zip, ...

Código
  1. fac 0 = 1
  2. fac n = n * fac (n-1)
  3.  
  4. replicate' 0 n = [n]
  5. replicate' x n = n:replicate (x-1) n
  6.  
  7. take' 0 xs = []
  8. take' n [] = []
  9. take' 1 xs = [head xs]
  10. take' n xs = head xs:take (n-1) (tail xs)
  11.  
  12. reverse' [] = []
  13. reverse' (x:xs)=last (x:xs):reverse'(init (x:xs))
  14.  
  15. haycero [] = False
  16. haycero (x:xs) = (x==0) || haycero (xs)
  17.  
  18. todosceros [] = error "No está definido para una lista vacía"
  19. todosceros [x] = (x==0)
  20. todosceros (x':x:xs) = (x'==0) && todosceros(x:xs)
  21.  
  22.  
  23. maximo n x = if (n>x) then n else x
  24. minimo n x = if (n>x) then x else n
  25.  
  26. maximo' n x
  27.  | n>=x = n
  28.  | n<x = x
  29.  
  30. zip' xs []         = []
  31. zip' [] ys         = []
  32. zip' (x:xs) (y:ys) = [(x,y)]  ++  zip' xs ys
  33.  
  34. zip'' xs [] = []
  35. zip'' [] ys = []
  36. zip'' (x:xs) (y:ys) = (x,y) : zip'' xs ys
  37.  
  38. nth [] n = error "No está definida para lista vacía"
  39. nth xs n = if (length xs > n) then xs !! n else error "No se puede acceder a esa posición ya que no existe"
  40.  
  41.  
  42.  
  43. {-
  44. Comprueba si un elemento dado está en la lista
  45. -}
  46.  
  47. elem' n []     = False
  48. elem' n (x:xs) = (n==x) || elem' n xs
  49.  
  50. {-
  51. ANALISIS POR CASOS
  52. -}
  53.  
  54. elem'':: Eq a => a -> [a] -> Bool
  55. elem'' n xs
  56.  | length xs==0  = False
  57.  | otherwise     = (n==head xs) || elem'' n (tail xs)
  58.  
  59. {-
  60. quicksort [10,2,5,3,1,6,7,4,2,3,4,8,9] = [1,2,2,3,3,4,4,5,6,7,8,9,10]
  61. -}
  62.  
  63.  
  64. {-
  65. zip [] []= []
  66. zip [2] [5] = [(2,5)] ++ zip [] []
  67. zip [1,2] [4,5] = [(1,4)] ++ zip[2][5]
  68. -}
  69.  
  70. length' [] = 0
  71. length' (x:xs) = 1 + length' xs
  72.  
  73. {-
  74. repeat' 0
  75. repeat'
  76. -}
  77.  
  78. map' f [] = []
  79. map' f (x:xs) = f x : map' f xs
  80.  
  81. tail' [] = []
  82. tail' (x:xs) = xs
  83.  
  84. {-
  85. filter (>3) [1,2,3,4,10,10,10,20,20,20] = [4,10,10,10,...]
  86. -}
  87.  
  88. sumatoria [] = 0
  89. sumatoria (x:xs) = x+sumatoria xs
  90.  
  91. multiplicar [] = 1
  92. multiplicar (x:xs) = x*multiplicar xs
  93.  
  94. sumatoria' xs
  95.  | length (xs) == 0 = 0
  96.  | otherwise = head xs+sumatoria' (tail xs)
  97.  
  98. multidos [] = []
  99. multidos (x:xs) = 2*x : multidos xs
  100.  
  101. multiPor n [] = []
  102. multiPor n (x:xs) = n*x : multiPor n xs
  103.  
  104. h [] = [1]
  105. h (x:xs) = (x+1) : h xs
  106.  
  107. test [] = []
  108. test (5:[]) = error "Tu lista empieza por 5"
  109.  
  110. h' [] = [1]
  111. h' (x:xs) = [(x+1)] ++ h xs
  112.  
  113. g 0 = error "El numero es cero"
  114. g n = error "El numero no es cero"
  115.  
  116. multiplicar' xs
  117. | length xs == 0 = 1
  118. | length xs /= 0 = head xs*multiplicar'(tail xs)
  119.  
  120.  
  121. filter' f [] = []
  122. filter' f (x:xs)
  123.      | f x =  x:filter' f xs
  124.      | otherwise = filter' f xs

Ejecutan ghci y lo cargan con :l <nombre-del-archivo>
Después hagan los llamados que quieran.

Perdón como se ve, no hay una etiqueta para Haskell.

Saludos!
98  Programación / Programación General / ¿Qué pasó con el "kernel" Luxur? en: 9 Diciembre 2015, 14:39 pm
Hola a todos!,


¿El proyecto sigue en pie?, la página está caída.

¿Qué pasó?
¿Existe algún otro proyecto parecido en el foro?

Saludos!
99  Programación / Programación C/C++ / Re: [C] ¿Qué hace este while de una sola linea? en: 25 Noviembre 2015, 06:59 am
Este es todo el programa

Código
  1. #include <stdio.h>
  2. #include <ctype.h>
  3. #include <stdlib.h>
  4.  
  5. #define MAXTOKEN 100
  6. #define NUMBER '0'
  7.  
  8. struct node {
  9.  int v;
  10.  struct node *next;
  11. };
  12.  
  13. struct node *head = NULL;
  14.  
  15. void push(int i) {
  16.  struct node *nuevo;
  17.  nuevo = (struct node *) malloc (sizeof(struct node));
  18.  if (nuevo==NULL){printf("No hay memoria suficiente.\n"); exit(-1);}
  19.  nuevo->v =i;
  20.  nuevo->next = head;
  21.  head = nuevo;
  22. }
  23.  
  24. int pop() {
  25.  
  26.  struct node *nuevo;
  27.  int aux;
  28.  
  29.  nuevo = head;
  30.  
  31.  if (!nuevo) return 0;
  32.  head = nuevo->next;
  33.  
  34.  aux = nuevo->v;
  35.  free(nuevo);
  36.  return aux;
  37.  
  38. }
  39.  
  40. int get_token(char buffer[]) {
  41.  int a,c;
  42.  
  43.  c=getchar();
  44.  buffer[0]=c;
  45.  while (c == ' ' || c == '\t' || c=='\n')buffer[0]=c=getchar();  // SI ENCONTRAS UN ESPACIO UN SALTO DE LINEA O UN TABULADOR SEGUI LEYENDO
  46.  
  47.  buffer[1] = '\0';
  48.  
  49.  if (!isdigit(buffer[0]))
  50.    return c;
  51.  
  52.  a = 0;
  53.  if (isdigit(c))
  54.    while (isdigit(buffer[++a] = c = getchar()));
  55.  
  56.  buffer[a] = '\0';
  57.  if (c != EOF)
  58.    return NUMBER;
  59. }
  60.  
  61. void mostrar_lista(){
  62.  struct node *auxiliar;
  63.  int i;
  64.  i=0;
  65.  auxiliar=head;
  66.  while (auxiliar!=NULL){
  67.      printf("%d\n", auxiliar->v);
  68.      auxiliar=auxiliar->next;
  69.      i++;
  70.  }
  71. }
  72.  
  73. int main(void) {
  74.  int type;
  75.  int n;
  76.  int sustraendo;
  77.  int divisor;
  78.  
  79.  char buffer[MAXTOKEN];
  80.  
  81.  while((type = get_token(buffer)) != EOF) {
  82.    switch(type) {
  83.    case NUMBER:
  84.      n = atoi(buffer); // convierte de cadena a entero
  85.      push(n);
  86.      break;
  87.    case '+':
  88.      push(pop() + pop());
  89.      break;
  90.    case '-':
  91.      sustraendo = pop();
  92.      push(pop() - sustraendo);
  93.      break;
  94.    case '*':
  95.      push(pop() * pop());
  96.      break;
  97.    case '/':
  98.      divisor = pop();
  99.      if (divisor != 0){
  100.          push(pop() / divisor);
  101.      }
  102.      else {
  103.          printf("¡ERROR! ¡No se puede dividir por cero!\n");
  104.      }
  105.      break;
  106.    default:
  107.      printf("error: comando desconocido %s\n", buffer);
  108.      break;
  109.    }
  110.  }
  111.  
  112.  mostrar_lista();
  113.  
  114.  return 0;
  115.  
  116. }


Calculadora polaca inversa
100  Programación / Programación C/C++ / Re: [C] ¿Qué hace este while de una sola linea? en: 25 Noviembre 2015, 06:12 am
Código
  1.  c=getchar();
  2. buffer[0]=c;
  3. while (c == ' ' || c == '\t' || c=='\n')buffer[0]=c=getchar();  // SI ENCONTRAS UN ESPACIO, UN SALTO DE LINEA O UN TABULADOR ENTONCES SEGUI LEYENDO
  4.  

¿Está bien ese razonamiento?

Que es lo mismo que

Código
  1. while ((buffer[0] = c = getchar()) == ' ' || c == '\t' || c=='\n');

¿O me equivoco?
Páginas: 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14 15 16 17
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines