Zagadka: mając poniższy kod w C lub C++ i zakładając standardowy target x86 lub x64, odpowiedz, najlepiej bez kompilowania kodu, co powinna zwrócić funkcja f:

unsigned int m(unsigned short a, unsigned short b) {
return a * b;
}
unsigned int f() {
for(unsigned short x = 65535u; x>0; x--)
for(unsigned short y = 65535u; y>0; y--)
if (m(x,y) > 49999u*49999u) return x+y;
return 666;
}

#programowanie #zagadkaprogramistyczna #jezykc #cpp
@dupasmoka: @b33zon: Dzyń dzyń dzyń mamy prawidłową odpowiedź!
Standard mówi, że operacje arytmetyczne na małych typach dzieją się przez promocję do int. Zakładając 16-bitowe shorty i 32-bitowe inty, to o ile mnożenie dwóch unsignedshortów zmieściłoby się w unsignedincie, to już nie w zwykłym incie. Kompilator widzi, że 49999×49999 jest większe niż INT_MAX i że wynik m musiał się zmieścić w nieujemnym incie, więc wie, że niemożliwym wg standardu jest,
#zagadkaprogramistyczna #php

Małe zadanie na rozruszanie neuronów z rana. Szukamy najciekawszego sposobu na połączenie dwóch stringów. Można zarówno zastosować je bezpośrednio, jak również po przypisaniu do zmiennych. Może być klasycznie:

echo "foo" . "bar";


Może być bardziej na miejscu:

echo "mir" . "ko";


Edit:

Poprawne rozwiązanie musi pozwolić na przypisanie wyniku do zmiennej i być deterministyczne
Idąc śladem tagów #glupiewykopowezabawy i #zagadkaprogramistyczna mam dla Was nową zabawę.

Tym razem chodzi o coś dla naprawdę kumatych Mirków - testy #mensa

Otwieram zabawę nowym hashtagiem #zagadkiiq - a dziś mam dla Was (jak dobrze znaną ze szkół) zagadkę z wagami.

Dwie górne wagi są w stanie równowagi. Jaki symbol zapewni równowagę na trzecie wadze?

Powodzenia!

--------------------------------

edit: Prośba dla zgadujących. Odpowiedzi proszę spojlerować, aby nie popsuć innym zabawy.

Jak zabawa
janusz_mirek - Idąc śladem tagów #glupiewykopowezabawy i #zagadkaprogramistyczna mam ...

źródło: comment_bnuWc0mz5QNBVjoJPkXf5nQY2KnAzVPj.jpg

Pobierz
Mirki, mam zadanie dla Was. Trzeba napisać kod, który zsumuje elementy tablicy (zakładamy, że w tablicy są tylko liczby całkowite dodatnie) bez użycia pętli, funkcji array_ i używania indeksu tablicy. Funkcja niech wygląda tak:

arraySum($arr, &$sum) { ... }

przykładowa tablica do zsumowania: array(1, 2, 3, 4, 5). Na ekranie przy takiej tablicy powinien się wyświetlić wynik = 15

#programowanie #zagadkaprogramistyczna #php
#gorfagrozdajegry

Rozdawanie gier z Humbdle Bundle za zagadki ciąg dalszy, kolejna 4 zagadka, również będzie zagadka programistyczną.

Odpowiedzią na pytanie jest:

Czy podany kod się skompiluje?

Jeśli tak to jaki da wynik i dlaczego?

Jeśli nie to dlaczego?

Kto pierwszy ten lepszy. Odpowiedzi w komentarzach.

Dla zwycięzcy do wyboru pozostały:

Dead Space Origin Key

Burnout Paradise: The Ultimate Box Origin Key

Crysis 2 Maximum Edition Origin Key

Medal of Honor Origin Key
gorfag - #gorfagrozdajegry



Rozdawanie gier z Humbdle Bundle za zagadki ciąg dalszy...

źródło: comment_LauhYtO38shjijiH6inOpXSaKkBlUPQ8.jpg

Pobierz
#gorfagrozdajegry

Dalszy ciąg rozdawania gier z Humble Bundle

Zagadka 3, to zagadka programistyczna.

Jaki output wypluje ten program skompilowany w C i najważniejsze - dlaczego taki. Proszę o jasne wytłumaczenie :) Odpowiedź musi być zawarta w komentarzu, nie może być udzielona w postaci linka do strony.

Dla zwycięzcy pozostały do wyboru:

Dead Space Origin Key

Burnout Paradise: The Ultimate Box Origin Key

Crysis 2 Maximum Edition Origin Key

Medal of Honor Origin
gorfag - #gorfagrozdajegry



Dalszy ciąg rozdawania gier z Humble Bundle



Zagadka ...

źródło: comment_YSihNjOKn4CFYmInGaFtfuJxzCwfra6F.jpg

Pobierz