Uyarı: Bu meydan okuma Monkey Island Sırrı için bazı hafif spoiler içerir.
Oyunun sonuna doğru, büyülü bir şekilde korunmuş bir navigasyon başkanı tarafından mezar mezarlarından geçiyorsunuz:
Göz küresi kolyesine ihtiyacınız var, ancak Kafa size vermek konusunda isteksiz. Bunu almanın bir yolu sadece yalvarmaya devam etmektir:
Guybrush: O kolyeyi alabilir miyim lütfen?
Head: Hayır, ama kibarca sorduğunuz için teşekkürler.
Guybrush: Oh, hadi, lütfen?
Head: İstediğin herşeye yalvarabilirsin, ama sahip olamazsın.
Guybrush: Güzel lütfen?
Head: İstediğin herşeye yalvarabilirsin, ama sahip olamazsın.
Guybrush: Oldukça güzel lütfen?
Head: İstediğin herşeye yalvarabilirsin, ama sahip olamazsın.
Guybrush: Lütfen üstte şeker var mı?
Kafa: Oh, tamam, seni büyük bebek. Alabilirsin. Omuzlarınız yoksa kolye ne işe yarar?
Meydan okuma
Yukarıdaki diyalogu yazdıran tam bir program yazın. Yakalama, program her çağrıldığında sadece iki satır yazdırmasıdır (biri Guybrush tarafından yalpalamak ve Başın tepkisi). Örneğin gönderiminiz Python'da yazılmışsa, kullanım şöyle görünmelidir:
$> python please.py
Guybrush: May I please have that necklace?
Head: No, but thanks for asking so politely.
$> python please.py
Guybrush: Oh come on, pleeeeease?
Head: You can beg all you want, but you can't have it.
$> python please.py
Guybrush: Pretty please?
Head: You can beg all you want, but you can't have it.
$> python please.py
Guybrush: Pretty PRETTY please?
Head: You can beg all you want, but you can't have it.
$> python please.py
Guybrush: Pretty please with sugar on top?
Head: Oh, all right, you big baby. You can have it. Hey, what good's a necklace if you don't have shoulders?
Programın 5 kereden fazla başlatılması tanımlanmamış davranışa neden olabilir, böylece ya döngü yapabilir, son iki satırı yazdırmaya devam edebilirsiniz ya da program 5. çağrıdan sonra bozulabilir.
Çalışma dizinindeki bir dosyaya yazabilir veya çağrıları izlemek için programın kaynak kodunu değiştirebilirsiniz. İkinci durumda, programınız kendi dosya adına bağlı olmamalıdır. (Önceki durumda, programınızın dosya adının, programınızın bağlı olduğu herhangi bir dosya adıyla çakışmayacağını varsayabilirsiniz.)
REPL benzeri bir ortam olduğunu veya çağrılar arasında herhangi bir verinin RAM'de tutulduğunu varsaymamalısınız. Mathematica'da cevap verirseniz, çağrılar arasındaki çekirdeği bıraktığımı varsaymalısınız.
Bu kod golf, en kısa cevap (bayt cinsinden) kazanır. Programınız ilk çağırma işleminden önce var olan ek dosyalara bağlıysa , adını ve içeriğini bayt sayınıza ekleyin.
node please.js
5 farklı çıktı vererek 5 kez çağırabileceğim bir program yazmalısınız