Hace 7 años | Por Cachopín a cnnespanol.cnn.com
Publicado hace 7 años por Cachopín a cnnespanol.cnn.com

Se sacó una selfie con la pantalla de la máquina en la que podía leerse el monto exacto: 42,949,672.26 dólares. Sin embargo, el Resorts World Casino, el lugar donde Bookman estaba jugando, solo le ofreció un filete y 2.25 dólares. La empresa alegó que todo se había tratado de un "mal funcionamiento" de la máquina tragamonedas.

Comentarios

D

#9 the machine was only setup to do max payouts of $6,500

D

#10 has escrito un comentario en ingles y ni un solo negativo.
Si lo hago yo rn catalan los mesetarios me hunden.
Saludos

D

#90 A ti te los cascarán por no leer lol

Está citando de la referencia aportada en #9 , que es un hilo de reddit, que vaya por dios, está en Inglés.

D

#19 tinfoil

D

#19 Me ha hecho gracia Pero me suena más a que es una resta sin comprobación que descuenta el coste de una partida cada vez que se juega.

c

#19 explicame lo de la tierra plana porfis

D

#13 No es la solución para nada, no es muy normal que al repartir un premio alguien compruebe que es menor que cero.

Ni debería. Sobreingeniería de libro.

El error es que de alguna forma llegan a un número negativo, hay un error en el proceso que deberían haber encontrado y solucionado.

D

#48 Si ha bajado de 0 es que hay una resta implicada. Si hay una resta y no debe bajar de 0, mete una comprobación, que es una tragaperras, no un sistema en tiempo real.

D

#71 No tiene por qué ser una resta, puede ser cualquier operación matemática . De hecho ni siquiera tiene por qué ser una operación matemática, aunque es lo más lógico.

Partamos de que tienes razón. ¿Vas a poner un if>0 en cada operación matemática que tengas en el código?

¿y vas a solucionar así todos los problemas? ¿vas a poner if!=null cada objeto de tu código "por si acaso"? Dicen que buscar el mejor rendimiento aunque no haga falta es el mayor error del programador, en mi opinión es la sobreingeniería. Esa manía de escribir tanto código inútil "por si acaso".

Yo los llamo "porsis".

Esa no es la forma de proceder. Ese número es negativo porque seguramente la lógica de negocio tiene un problema, un caso específico donde no se hace lo que debería hacerse. Hay que arreglar el problema en sí, no poner millones de "cláusulas de seguridad" en el código porque

1) luego no hay quien se lo trague
2) los errores siguen ahí y pueden explotar en otro sitio. ¿y si luego por ese error no se te devuelve negativo sino un positivo incorrecto?

No habrías solucionado nada.

D

#79 Teniendo en cuenta que es por un error de desbordamiento hacia abajo, el que ha hecho el programa ha asumido que "eso no va a pasar nunca" y no ha puesto ninguna comprobación. Cosa que la encuentro una chapuza cuando, si lo ha hecho en C, por ejemplo, la documentación indica que (unsigned int) -1 == UINT_MAX.

En cuanto a la lógica de negocio, imagino que el no descontar de más en el dinero que se va a pagar estará incluido en la misma ¿O no?

D

#96 Es que el error seguirá ahí. Y es más, estás haciendo que un error no se rompa. "break it fast". Para eso montamos tests y servicios de integración continua, para que se rompa lo antes posible y encontrar el problema.

Un error que no rompe nada es un error muy difícil de localizar. Son los que luego te tienen días arreglándolo porque no tienes cómo cogerlo.



#89 Voy a plantearlo de otra forma.

Supongamos que hay un error por el que al calcular el premio a entregar se le resta 1. Propongo dos casos

1) Si entrega 10€ de premio, saldrá 9€
2) Si entrega 0€ de premio, salen cuarenta millones (por overflow de entero)

Si pones un "if < 0 =0" lo que estás haciendo es "medio solucionar" el segundo caso. Pero tu problema sigue ahí porque estás entregando mal todos los premios.

La solución real es encontrar el error por el cual entregas siempre un euro menos de lo que toca.

Esas cláusulas, como las famosas " != null" o las aberrantes try-catch para saltarse los NPE no son soluciones.

Y esto por no hablar de la mierda de basura de código que se te queda con tanto if de sobreingeniería. Código que no aporta valor, molesta, te crea "pirámides de la muerte"... una pesadilla lol

D

#97 Luego te pasas (en caso de Java) reglas con PMD o Sonar de calidad de código y estalla por todos lados lol

D

#98 Eso te pasa por programar en Java, en Kotlin PMD y Sonar se aburren

D

#97 Pues en lugar de un "if

D

#79 Yo soy de tu opinión. Programación ultrasegura lo llamamos de coña. Que ganas tiene la gente de validar cosas que por definición tecnica no deberían pasar. Si pasan es que hay un error previo que es el que hay que solucionar.

miau

#48 Enhorabuena, eres un programador que no lo soluciona todo con ifs. Deduzco experiencia > 10 años.

D

#9 Vamos, que la tía está haciendo el ridículo.

Para mí está claro, caso cerrado, a su casa.

D

#21 Si es un problema de la máquina, que las hagan mejores.

#21 La máquina tiene al menos un problema. Podría ser que la máquina ni siquiera diese premios o los diese incorrectos o cobrara de más a los jugadores. No es fiable.

Podría ser que el casino y el fabricante de la máquina se expongan a una denuncia de todos los que puedan haber demostrado haber jugado alguna vez en esa máquina. Que digan que ante un error se anula lo jugado no tiene por qué ser legal, y si lo es que le devuelvan a esa mujer todo lo que pueda demostrar haber jugado en esa máquina.

Como dice #24 que las hagan mejores. Si en lugar de ser una tragaperras es un ascensor o un coche que pasa ante un fallo del mismo, ¿que se anula el viaje? Si la dirección se queda bloqueada por un fallo de software y hay un accidente ¿Las consecuencias no existen porque lo ponga en una pegatina en el coche?

Es una máquina que no funciona bien. Dice que ha dado un premio, aunque sea ridículamente alto. Que le den el premio máximo de esa máquina a la mujer y pongan en cuarentena esas máquinas hasta que esté arreglado el error, y que el casino pida al fabricante de la máquina compensación por un producto deficiente.

Si yo hago vendo un producto malo no le digo al cliente que es su culpa. Le compenso y voy al proveedor y busque a su vez que me compense a mi.

D

#21 Si cuela, cuela. A ver qué juez le toca. Si fuera yo, se lo daba.

Si no le dan el premio, a lo mejor sí le dan una indemnización por la montaña rusa psicológica que sin duda habrá sufrido.

Facochero

#21 sí, pero al menos yo y me imagino que tú también reclamarlos hasta el final

m

#21: ¿Caso cerrado? De momento la máquina demuestra no ser fiable y ha podido estar estafando a miles de personas.

i

El fallo es claro, es un overflow de la variable que guarda el valor del premio. Es un unsigned integer (Número entero sin signo) y al hacer overflow empieza desde el valor más alto, que es 2^32 = 4296 millones de céntimos, como dice #9

a

#25 *underflow

i

#32 me parece que te has colado. Underflow se refiere a un número no representable en floating point. En el caso de los enteros es overflow cuando se desborda tanto por encima como por debajo:

https://en.m.wikipedia.org/wiki/Integer_overflow

a

#82 https://en.wikipedia.org/wiki/Arithmetic_underflow

El termino tiende a confundirse, ya que el caso más frecuente es que se salga por arriba.

Pero si atendemos a su significado literal en Ingles, es underflow.

i

#84 el enlace que has puesto me da la razón:

''The term arithmetic underflow (or "floating point underflow", or just "underflow")''

Underflow es para floating point, que son números decimales. Para números enteros se usa overflow tanto si se desborda por arriba como por abajo:

''either larger than the maximum or lower than the minimum representable value''

S

#9 Mismo error que el "bug" de Europa Universalis 4 con las deudas para dinero infinito. Pero en real haha

Que cracks

Oniros

#9 Bueno, si la máquina falló y dio un premio deberían darle almenos el maximo premio que da la maquina. Si sale premio superior al maximo que le den el maximo que según dicen es de 10.000$ en EEUU
No una puta cena de 25$ y una propina

pd: que se jodan y paguen su error.

D

#9 Lo normal es que escribas en castellano, para que todos lo entendamos. Si yo he puesto este comentario en inglés es porque es un copia-pega de otro comentario de reddit que aporta información relevante a la noticia.

Kantinero

Hay gente muy tikismikis...

Peter_Feinmann

#37 La culpa, como siempre, del informático.

ewok

#38 Pozí...

D

#16 No exactamente, 232 = 4294967296 y a ella le sale 4294967276.

m

#50 Tienes razon, le han "sisado" 20 centavos, quiza la maquina funciona con monedas de 20 centavos y tenga relacion

LaResistance

#51 No hay monedas de 20 centavos de dolar

Bretto

#70 Pero sí de dolar, y un dolar entre cinco partidas da a 20 centavos. Manera de forzar a que se "apueste" 1 USD en lugar de 50 centavos.

Supongo que tendrán alguna estadística donde las personas que van con monedas al casino, no lo hacen con monedas de 1, 2, 5 y 25 centavos. Incluso en caso de que vayan con monedas de 25 centavos, o "pierden" cinco centavos.

Moneda de 25: 1 partida más 5 centavos que la máquina no devolverá (tienes que multiplicar por 4 monedas para tener juegos/dinero exactos)
Moneda de 50: 2 partidas más 10 ctos. (2 monedas para tener juego/dinero exactos)

Suelen ser tácticas de diseño de juegos/tragaperras para asegurarse que participas con un mínimo. Lo más probable es que con el "extra" de diez centavos, te permitan jugar un todo o nada a cambio de un juego -o crédito- para una ronda extra.

D

#43 Tu comentario lo compensa.

D

#43 tienes razón,totalmente.

Mister_Lala

#43 Pero la inicial de la primera palabra de una frase, sí.

Facochero

#54 Y a ti te sobra una coma.

Mister_Lala

#76 No.

HyperBlad

#43 Y "estadounidense" va como "separado", todo junto.

m

#4: Votado positivo por error: a mi si me parece interesante que un casino se niegue a pagar el premio de una tragaperras.

O sea, para cobrar las jugadas no hay error de la máquina, pero para cobrar el premio, si...

D

#91 Como no podía ser menos, es respetable tu opinión. Mira, yo hasta te voto positivo..y sin error. Me la suda el karma.

ﻞαʋιҽɾαẞ

Si el filete era de buena calidad, tampoco habría mucha diferencia.

Cachopín

#2 yo la primera vez leí que le habían ofrecido un Falete. Prefiero el filete

ﻞαʋιҽɾαẞ

#23 Un falete... Prefiero quedarme sin comer.

Mister_Lala

#2 Javi, no te reconozco. Tu comentario debería ser algo así como: "pues la chica es mona. yo también le hubiese dado el filete". Con la edad te estás amariconando cocopineando.

ﻞαʋιҽɾαẞ

#61 Acepto humildemente la reprimenda, procuraré enmendarme en próximos comentarios.

D

#11 qué putada, lo siento mucho tío

pedrobz

#11 Keep calm and intall uBlock origin and/or AdAway

Aokromes

#39 tengo ublock origin, el opera con su bloqueador de publicidad, y el adguard y aun y todo sale esa mierda.

pedrobz

#41 Pues que raro, a mi no ni en chrome windows ni en chorme android me sale nada de publicidad, por eso te recomendé ambos. Ahora voy a preguntar obviedades ¿Has actualizado los filtros de ublock? ¿Le has pasado a tu ordenador un anti spyware como malware-bytes?

Aokromes

#59 no tengo malware, la publicidad solo sale en la web de la cnn y hay multiples resultados en google con problemas de ella. (ah y tengo los filtros en autoactualizar)

Aokromes

#59 es mas, para demostrarte que no es cosa de mi ordenador:
vm con debian 8 totalmente actualizado (en proceso de actualizar a debian 9) ublock origin:
http://i.imgur.com/EkxVFfH.png

Aokromes

Se resume todo al final en:

"El Chicago Tribune informó que un tribunal falló a favor de Isle Casino Hotel cuando una máquina tragamonedas de centavo indicó que una mujer de 90 años ganó 41 millones de dólares. El tribunal dictaminó que "las reglas del juego limitaban los premios a 10.000 dólares y no permitían bonificaciones", según el periódico."

#12 De hecho es lo que está haciendo su abogado desde el principio*. No hay que ser muy listo para darse cuenta de que cuando en una máquina te avisan "premio máximo 10.000" si el software te dice que has ganado 43 millones hay un error**.
Pero nada, los atúnes han tomado MNM.
* [7#]
** [ 9#]

Mister_Lala

#12 No sé si en USA eso llega para pagar al abogado.

D

#6 Son casos diferentes, lee bien el artículo.

Aokromes

#22 si casos diferentes, mismo problema.

D

#26 No es el mismo problema, de hecho la Comisión del Juego no ha informado de que problema tratan, ni el casino ni el fabricante. Me temo que va a ganar.. y algo más de 46 millones.

Aokromes

#30 es el mismo problema, la maquina no puede dar mas de xmil dolares.

"En ese momento, el portavoz de Resorts World, Dan Bank, se disculpó y le dijo a CNN que "el personal del casino fue capaz de determinar que la cifra mostrada en la máquina era el resultado de obvio error- un hecho confirmado más tarde por la Comisión de Juegos del Estado de Nueva York".

La comisión también dijo en agosto que la máquina mostraba un aviso que decía: "Los errores de funcionamiento anulan todo lo que paga y juega"."

D

Hellooo ooo ooooo

Attitude

#20 Mr. Jackpot!

D

#49 Grande!!

D

Joder si es que os toca y queréis cobrar. Encima que te ofrecían un filete que no lo has visto ni en fotocopia... desagrsfevifis !

Unregistered

Anda que no es viejo esto, envié la noticia hace un año, la única novedad es la demanda. Una mujer gana 43 millones de dólares en una máquina tragaperras y el casino se lo cambia por una cena

Hace 7 años | Por Unregistered a antena3.com

D

Es un error de la máquina. Igual que cuando un banco ingresa por error dinero en tu cuenta. Ten cojines de tocarlo a ver lo que pasa.

Lo de siempre, gente con la cara muy dura aprovechándose de los errores, como cuando sale en amazon una play 4 por 40euros y tiramos de publicidad engañosa porque de le ha pasado un creo al escribir el precio.

Gato.Gatillo

#31 Efectivamente si es un error, de validación int 32 bits. Una operación mal realizada, seguramente un numero mal en la multiplicación 232

EspecimenMalo

Si hubiese sido un cubo de pollo frito y un trozo de sandía se habría ido tan contenta

D

#65 y un vaso de soda lol me ha hecho mucha gracia el topicazo.

Aokromes

#5 esta noticia es que presenta la demanda de la cual no hay una sola palabra en tu enlace.

Charles_Dexter_Ward

#7 Mientras, el abogado contratado por Bookman, Alan Ripka, va a seguir litigando para que el Resorts World Casino pague a la joven la cantidad máxima permitida por la máquina: 6.500 dólares (6.170 euros). Ojalá logre el objetivo para resarcirse del cabreo monumental que pilló la pobre. Pues en esta otra de la misma época parece que ya había demanda, como es lógico. Gana 43 millones en una tragaperras y el casino se lo cambia por una cena familiar


No creo que nadie espere 7 meses para presentar una demanda, como me preguntaba en mi anterior comentario.

YesWeKang

#5 Muy buena pinta tenía que tener ese filete para tardar 7 meses en decidirse

Mister_Lala

Hay que tener cuidado si contratas a un mono para programar, en lugar de a un profesional. La broma te puede costar $43 millones.

e

#58 Es que sólo tenía cacahuetes para pagar.

trasier

Está bien eso, resumidamente: Si apuestas y pierdes, la máquina va bien, si ganas, la máquina va mal.

El casino nunca pierde.

crateo

#14 no, el resumen es un fallo informático.

trasier

#17 Y, mientras el fallo era a favor del casino, no era un fallo.

Ya, pues espero les jodan bien y paguen y, porque no, que se investigue y se multe si "descubren" los fallos que ha tenido en favor del casino.

crateo

#18 pero es que no hubo un fallo a favor. Ha sido un desbordamiento de enteros, sin más. Como dice el propio tribunal que ya le ha dado la razón al casino.

W

#18 No es un fallo de ganar o perder, es un fallo del contador, que ha dado la vuelta. Es como en un reloj restar un segundo cuando no se debería poder y pasar de 00 a 59 segundos.

juantxovilla

Resulta que en realidad el valor es -19 en 32 bits (es decir -0.19$). es el valor 0xFFFFFFEC (poniendo los dos decimales como enteros, es decir el valor de la variable es en centésimos de $). Bien podría tratarse de un error de programación le daba un premio de -0.19$ o todavía mucho más lógico la función devolvió error "-19" y no ha sido correctamente capturado. Parece un error de tratar un int32_t como un uint32_t.

polvos.magicos

Espero que la justicia les haga pagar, esos millones y un poco más por las molestias de tener que buscarse a un abogado para defender lo que se supone que no hacía falta que se defendiera.

D

Y a mi que me parecen caras las hamburguesas de 10€

e

Que les crujan bien crujidos.

D

¿Noticia sobre una maquina tragaperras y no sale un chino?...Debe ser errónea.

D

Pues que apriete en la reclamación, que el casino siempre gana. Por una vez que pierde, ajo y agua.