Berilgan qiymatni olish uchun 22 dan 4 gacha kiritish uchun to'g'ri usul

Menga ushbu mantiqiy jumboqdan intervyu berildi.

Menga 22 dan 4 gacha qo'shib beradigan to'g'ri yo'lni aytib bering.

So'rovchidan men bu raqamlarning asosini nima deb so'radim. U bu o'nli raqamlar ekanligini aytdi. Men bu haqda juda ko'p o'yladim, lekin javob topa olmadim. Har qanday yordamni qadrlash kerak. Rahmat.

P.S. U menga 31 oktyabrni = 25 dekabrni muvaffaqiyatli bajarganimni isbotlashni iltimos qildi. Biroq, bu savol menga ushbu raqamlarning bazasi haqida so'radi. Biroq, bu savolga bog'liq emas.

30
Men savol berishga qarshilik qila olmayman: nima bilan intervyu oldingiz?
qo'shib qo'ydi muallif scunliffe, manba
P.S Nima uchun dasturchi bayramni xayvonlar bilan aralashtirib yubordi?
qo'shib qo'ydi muallif AndSoYouCode, manba
@Derecho Men ham kutgan edim, lekin u qilmadi va keyingi savolga ko'chib o'tdi. Men javobni oxirida so'radim, lekin u aytmadi. Ehtimol, u xuddi shu savolni boshqa nomzodlarga topshirmoqchi edi.
qo'shib qo'ydi muallif LawrenceC, manba
Aqlli savollar. Ishni jumboqlarni ishlab chiqarish/hal qilishni talab qilmasangiz, ishni bajarmang.
qo'shib qo'ydi muallif The Wandering Dev Manager, manba
@atkins, ah xudo haq! bulutlarda bosh ... uzr
qo'shib qo'ydi muallif Nathaniel Solyn, manba
Og'zaki yoki yozma edi?
qo'shib qo'ydi muallif Jawad Al Shaikh, manba
bu savolga to'g'ri javob: "Sizga kerak bo'lgan haqiqiy hayot senariysi nima?"
qo'shib qo'ydi muallif Fung, manba
Biz P.S.ni hal qilishimiz kerakmi? birinchi bo'lib jumboqni qanday hal qilishni tushunishimiz kerak, yoki birinchi bo'lib jumboqni hal qilishimiz kerak va P.S. tasdiqlash
qo'shib qo'ydi muallif Mayo, manba
@ a-j Javobni bilmasdan ketganingizni bir oz tashvishlantirmoqda. Yaxshi suhbatdosh sizni faqatgina ochiq qoldiribgina qolmay, javob berishga yo'naltirgan bo'lardi.
qo'shib qo'ydi muallif Derecho, manba

12 javoblar

Agar siz raqamlarni deb hisoblasangiz

24 soatlik vaqt

Keyin

$ 22 = 10 \ matn {pm} \\ 10 \ matn {pm} + 4 \ matn {soat} = 2 \ matn {am} $

63
qo'shib qo'ydi
@mstrz raqamlari 22 , 4 va 2 kasr sonlar shaklida ifodalanadi, lekin ular o'nlik tizimda ishlatilmaydi. 0 dan raqamlar tizimiga m , 4 va 2 raqamlarini chaqirish ko'proq o'rinli bo'ladi - 0 - f - bu holda m + < kodi> 4 = 12 - shuning uchun hali ham butunlay tekis emas.
qo'shib qo'ydi muallif Mike Minutillo, manba
@JeffreyKemp, kunduzlik shaklida kuniga 24 soatni ifoda etsak, kasr birligining 1/10 va soatiga 1/24 (va ikkilik birlik 1/2, sakkiz birlik) 1/8, heks birligi 1/16 ...).
qo'shib qo'ydi muallif Mike Minutillo, manba
Vaqt haqida hech qanday tayanch-24 yoki tayanch-12 mavjud emas. Aks holda hoziroq A: AA am (base-12) yoki A: M am (base-24) bo'lar edi, lekin biz buni aytmaymiz 10:22 (tayanch-10). Soatlar, daqiqalar, sekundlar kasrda ifodalanadi. Biroq ular modul (24 soat, 60 daqiqa va sekundlar uchun) hisoblab chiqiladi. Modulli = taglik. Soat uchun 22 + 4 ni bajarish uchun hisoblash quyidagicha bo'ladi: $ (22 + 4) \ pmod {24} = 2 $ - bu hali ham qo'shimcha.
qo'shib qo'ydi muallif Dan, manba
@antipattern: Savol modul arifmetik dan foydalanganligi sababli u 10 taglik emas degani emas Soat soat 23 dan keyin qayta tiklanadi, biroq uni kasrli yoki istalgan bazasida ifodalash mumkin.
qo'shib qo'ydi muallif Thorsten S., manba
@JakobPampBengtsson Siz konventsiyaga rozi bo'lmaysiz. Ammo 22-hanuzgacha vaqt emas, 22.344566 vaqt emas. Agar sizda "22" qaerda foydalanilgani haqida misollaringiz bo'lsa, men juda hayron bo'lardim.
qo'shib qo'ydi muallif Jerry McDonald, manba
"22" ham vaqt emas. Vaqt 22:00 bo'ladi. "04" uchun ham xuddi shunday. Shunday qilib, men bu to'g'ri javobni kutayotib, bu dahshatli savol.
qo'shib qo'ydi muallif Jerry McDonald, manba
@LaconicDroid I, bu erda Shvetsiyada oila a'zolari va do'stlari foydalanadi. Aytmoqchimanki, bu juda keng tarqalgan. Biz "Klockan 10" va "Klockan 22" (soatlarda samarali foydalanamiz) bilan almashamiz, biroq biz suhbatda stenograf foydalanishimiz mumkin; - Vilken tid? "Runt 22" (qachon 22 atrofida), va hatto undan keyingi texnik xususiyatlardan foydalanish uchun soatni yoki shunga o'xshash narsalarni ishlatmaslikning odatiy holatlariga qaramasdan, men uni shubhali maqsadlar uchun qoldirib ketish bilan haqiqiy muammo ko'rmayapman.
qo'shib qo'ydi muallif Johann Aydinbas, manba
@LaconicDroid Men sizning mulohazangizga qo'shilmayman. Agar 22-vaqti bo'lmasa, nima uchun 22:00 ga to'g'ri keladi? Siz buni faqat aniq ko'rsatyapsiz. Nima uchun 22:00:00 deb belgilashingiz shart emas? Shubhasiz, biz o'sha vaqtning tushunchasi haqida munozara olib boradigan o'lchovli vaqtning eng kichik miqdori bo'lmaguncha, xuddi shu dalilga amal qilamiz. Men shuni aytamanki, 22 - joriy vaqt, masalan, 3 yanvar kuni. Endi, men buni davom ettirsam: agar 3-yanvar bo'lsa va 366 kun qo'shsangiz (bir yil emas), bu qanday sana? Odatda "... va bir yil" qo'shilmaysiz. 22 + 4 soat = 2 soat yaxshi ko'rinadi.
qo'shib qo'ydi muallif Johann Aydinbas, manba
Va men Chris Burt Brown bilan kelishishim kerak. 22, 4 va 2-sonli raqamlar ushbu savolning o'nli (tayanch-10) sonlaridir. Agar ular tetravigesimal (bazasi-24) bo'lsa, u holda! /sub> (50 d ) + 4 tv (4 d ) = 26 TV d ) , qaysi bazalardagi 2 ga teng. Agar o'n oltinchi raqamli Fni 15 marta yozgan bo'lsangiz, u 15x = 21d ga tenglashtirilgan onaltılık raqam ekanligini aytgan. Agar siz dek gapirgan bo'lsangiz. yaxshi bo'ladi.
qo'shib qo'ydi muallif user22698, manba
qo'shib qo'ydi muallif Nathaniel Solyn, manba
Menimcha, bu deyarli aniq javob (va oyning taklifidan biroz yaxshiroq), lekin men a, b, c ning c
Xo'sh? Agar bu raqamlar "kasr emas" bo'lsa, 24 soatdan bir kunda qancha soat bor?
qo'shib qo'ydi muallif ShadowScripter, manba
Shuningdek, 22:00 va 4 soatlik soat 02:00 da ishlab chiqarilmaydi. Bu kun 02:00 va yana bir kun beradi. Xuddi shu e'tiroz "oylar" javobi uchun ham amal qiladi. "GRYda tugaydigan so'zlar" ga qarang: xkcd.com/169
qo'shib qo'ydi muallif Jack Bahou, manba
Bu, ehtimol, to'g'ri javob bo'lsa-da, suhbatdoshi "raqamlar kasrli" deb javob berib, bu 9 + 1da o'ynashni anglatadi. Bu erda juda aniq narsa yo'q. Men onaltılık yozishni 0-15 deb yozgan bo'lsam, u ularni o'nlik holiga keltirmaydi.
qo'shib qo'ydi muallif Micky and Sonic, manba
@Antipattern bilan rozi bo'lishim kerak. Soat o'nlik emas. Soatlar duodekimal (12) yoki to'rt barobar (24) dir. Ushbu nonsense ham qo'shimchalar qilish uchun ikkalasini ham ishlatadi (10).
qo'shib qo'ydi muallif Yiorgos Moschovitis, manba
kuniga o'n ikki soat ...
qo'shib qo'ydi muallif Yiorgos Moschovitis, manba

O'ylaymanki, suhbatdoshimiz gaplashmoqda

oylar : Agar siz 4 aprel (yil davomida 4-oy) deb hisoblasangiz va 22 oy qo'shsangiz (apreldan 22 oy keyin), 2 fevral ).

36
qo'shib qo'ydi
Shuning uchun intervyuser raqamlar o'nli bo'lib, chunki u 4 tagida samarali bo'lganligi sababli biroz yolg'ondir.
qo'shib qo'ydi muallif Joe Pineda, manba
Okt (al) 31 teng (Dec 25)
qo'shib qo'ydi muallif user10054, manba
@Menace Endi men yana bir savol sifatida oct 31 = dec 25 so'ragan deb o'ylayman.
qo'shib qo'ydi muallif LawrenceC, manba
Oktyabr va dekabr raqamlari bazalarini ko'rib chiqsangiz, uni olasiz.
qo'shib qo'ydi muallif LawrenceC, manba
Men buni 31 oktyabrdan 25 dekabrga qadar tushuntira olaman. Biroq mening savolimga hech qanday aloqasi yo'q.
qo'shib qo'ydi muallif LawrenceC, manba
@paolo Yo'q, u 10 tagacha. Matematik nuqtai nazardan, bu modul bilan emas, balki bazalar bilan aloqasi yo'q. Savol bo'lsa: 4 ga qo'shilgan 7 nima degani, javob B emas, balki 11 . Xuddi shunday 22 va 4 bo'lsa, 4 26 qo'shilgan 22 bazada 12, yoki 22 , agar ular 10 taglikda o'qilgan bo'lsa, bu savolning ma'nosi emas. Savol so'raydi: (4d + 22d) mod 12d =?
qo'shib qo'ydi muallif Linus Lim, manba
$ 22 + 4 \ equiv 2 \ pmod {24} $, $ \ pmod {12} $ dan foydalanishdan tashqari, aslida bir xil javob.
qo'shib qo'ydi muallif Hercynium, manba
Oktyabr = 10, Dek = 12, shuning uchun sizda 10/31 va 12/25; 10-tayanchda 10 =/= 25 dan 10 + 31 =/= 12 + 25, 31-10 =/= 25-12, 31; Agar siz oyning kunlarini hisoblasangiz, 31 + 10 = 10 va 25 + 12 = 6 ... Hozircha javob topmadingiz
qo'shib qo'ydi muallif Mayo, manba
@AJ Agar iloji bo'lsa, iltimos, iltimos, xuddi o'sha mantiq bilan ishlamaydi, hatto oylar o'rniga oyning kunlarini hisoblasangiz ham
qo'shib qo'ydi muallif Mayo, manba
@VincentAdvocaat Tani you! P.S. Oylarni ishlatish oyni 31 dekabrdan 25 dekabrga qadar tushunmagan bo'lsam-da, bu haqda o'ylardim
qo'shib qo'ydi muallif Mayo, manba
@MichaSprengers Oh, ha, bu yaxshi ish
qo'shib qo'ydi muallif Mayo, manba
Bu erda men o'zimning tushunchamni rad etdim, shuning uchun men faqatgina tushunib etdimki, base24 da 22 + 4 12 emas, 2; Bu bazalar haqida emas, balki uning ortida qolgan arifmetikalar haqida savol emas.
qo'shib qo'ydi muallif Micky and Sonic, manba

Another more Programmatic solution

Agar 4 ta imzosiz 3 bitli tamsayt bo'lsa, unda 22 ta to'ldirilsa, 2 ta natijaga olib keladi  4 = 100 Foydalanuvchining  4 + 1 = 101 Foydalanuvchining  4 + 2 = 110 Foydalanuvchining  4 + 3 = 111 Foydalanuvchining  4 + 4 = 000
 ..
 4 + 22 = 010 = 2

24
qo'shib qo'ydi
@PeregrineRook Modulo 8-dan foydalanib, hech qanday javob yo'q. Va agar u dasturiy intervyu bo'lsa, bu eng yaxshi javob imo.
qo'shib qo'ydi muallif Guvante, manba
Men bu javobni bir xil emas, $ i \ $ 24 $ dan foydalanadigan ikkita javob va $ \ bmod 12 $ foydalanadigan ikkita javob uchun asosli ekvivalent deb aytdim. Umuman, bu $ b \, \ \ $ 24 $ ($ b $ $ 24 $ bo'linadi) va $ ($ 8 $ bo'linuvchi $ 24 $ bo'linishi) uchun $ \ bmod b $ uchun ishlaydi, bu javob $ \ bmod 24 $ javoblarning soyasi. Suhbatdoshning nima istayotganiga qaramay, gapirish mumkin emas. Ammo "P.S.", kompyuterdan kelib chiqadigan oddiy echimga qaraganda matematik bo'lmagan javobda ko'proq qiziqish uyg'otdi.
qo'shib qo'ydi muallif Silent-Bob, manba
Ammo bu siz matematik modulo (8) ni bajarayotganingizni aytishning oddiy usuli.
qo'shib qo'ydi muallif Silent-Bob, manba
Aniqlanayotgan Stak Exchangega xush kelibsiz. Bu aslida oldingi javoblardan ikkitasiga teng, ammo u yangi burchakka ega va yaxshi tushuntirilgan. Yaxshi boshlang!
qo'shib qo'ydi muallif Silent-Bob, manba
@MarkLakata 22 + 4 natijasini 2 bitli to'liq sonda saqlash juda yaxshi. Modulli 4 ga asoslangan yana bir yechim shu. Men 3 ta bitni tanladim, chunki men bu haqda o'ylayapman, sizning fikringizni ko'rmagunimcha, 2 bitni o'ylamagandim. Bu siz uchun kerakli bitlar qanchalik muhimligini anglatmaydi, siz buni amalga oshirish uchun batafsil ma'lumotni istagan darajada toraytirasiz va kengaytirasiz va natija bir xil bo'ladi. Bitsni tashlab ketish muammosini ko'rmayapman, men unga mos kelmaydigan va sezgirlikni yo'qotadigan 3 (yoki 2) bitlik o'zgaruvchida qiymat saqlayman. Agar siz uni "bitsni tashlab yuborish" deb nomlashni istasangiz, buni amalga oshirishingiz mumkin.
qo'shib qo'ydi muallif RIGO MORALES, manba
@PeregrineRook Agar menga dasturlash intervyusida savol berilsa, suhbatdoshning soatlab gaplashayotganini tushunishni talab qiladigan savol bo'lsa, men o'zimning kasbim bilan bog'liq hech qanday aloqasi yo'q va boshqa joylarda ishlashni xohlaydigan axmoqlik bilan bog'liq savollar berib o'tirgandayman deb o'ylardim. Savol butunlay to'lib toshganligi va nozik yo'qotish (masalan, 120 + 10 = -126 kabi) bilan bog'liq bo'lsa, men har bir dasturchi bilishi kerak bo'lgan asosiy narsalarni tushunadigan narsalarni tekshiradigan yaxshi savol.
qo'shib qo'ydi muallif RIGO MORALES, manba
@PeregrineRook Tashakkur! Bu boshqa operatsiyani (modulo) qo'shadigan boshqa javoblarga teng deb o'ylamayman. Bunday holatda, siz haqiqatdan ham 22 dan 4 gacha qo'shilasiz va nozik yo'qotishlar tufayli 2 ta bo'lasiz.
qo'shib qo'ydi muallif RIGO MORALES, manba
Nima uchun 3 bit va 2 bit emas? Siz 3 bitni tanlashingiz kerak, chunki siz 4 uchun 3 bitga ega bo'lishingiz kerak, lekin siz 22 uchun 5 bitga ega bo'lishingiz kerak. Agar siz bitlarni tashlash haqida o'ylamasangiz, unda 2 bit bir xil javobni beradi, ya'ni 4 (b00) + 22 (b10 ) = 2 (b10).
qo'shib qo'ydi muallif Mark Lakata, manba

Bu matematik jihatdan yana bir imkoniyatdir

u modul arifmetik haqida gapiradi.

Ayniqsa,

$ 22 + 4 \ equiv 2 \ pmod {24} $

14
qo'shib qo'ydi
@ user1717828 Bu mening savolimga bog'liq emas, lekin buni tushuntiraman. Oktani Octal va Dec sifatida o'ntaligini ko'rib chiqing. Endi sakkizinchi raqamni o'nlikga aylantirasiz yoki aksincha qilishingiz mumkin. javob olasiz
qo'shib qo'ydi muallif LawrenceC, manba
@sig_seg_v, 10/31 = 12/25 ni qanday tushuntira olasiz? OP hech qachon qilmadi.
qo'shib qo'ydi muallif mashrab, manba
@ user1717828 Boshqa javob bo'yicha izohda tushuntiriladi, ammo oktyabr va dekabr oylar oktyabr va dekabr oylari o'rniga sonning bazasiga (oktyabr va o'ninchi daraja) mos keladi. Octal (31-tayanch) ning 31-sonida Decimal (25-bazasi).
qo'shib qo'ydi muallif user10386, manba
Bu mening birinchi fikrim, ayniqsa, 31-dekan/okt 25-savolni hisobga olgan holda. (22 + 4 = 2-mod 8)
qo'shib qo'ydi muallif Hercynium, manba
Shunga qaramasdan, modul - bu bo'linish, shuning uchun yana bitta operatsiyani qo'shsangiz, nima uchun 24-jadvalni keltirib chiqarmanglar?
qo'shib qo'ydi muallif Yiorgos Moschovitis, manba

Fikrlashimning bir usuli

22 dan 4-gacha joyga qo'ying, 2-ning orasidagi kvadratikni qo'ying va butun sonni qavat funktsiyasi bilan o'rab oling. $ $ \ lfloor 2.24 \ floorfinal $

5
qo'shib qo'ydi
$ $ ($ 2.2) $ da ishlaydi, chunki $ 0.2 <0.5 $
qo'shib qo'ydi muallif Pocketninja, manba
Men qo'shish ni ishlatish uchun to'g'ri so'z deb o'ylamayman. Aytish kerakki, "22 dan oldin 4-joy" va jismoniy narsalar haqida unutma.
qo'shib qo'ydi muallif Linh Huynh, manba

Buni ehtimol

$ 22 + 4 = 26 $ va $ 26 $ ikki raqamli raqam.

Lekin umid qilamanki, u erda yaxshi javob bor.

EDIT:

Yana bir sababdir

Suhbatdoshingiz buni qanday aytgan bo'lishi mumkin. Eshitgan narsalaringiz "To'g'ri to'rtdan ikkita yigirma" kuchli "ikki" ni qo'shib, ikkita sonni beradi ". Lekin u nima demoqchi bo'lgan bo'lishi mumkin "To'g'ri to'rt yo'l bilan yigirma kuchli" ham qo'shilsa, "to'g'ri aytaman". Bu bizga 20 va 4 raqamlariga beradigan boshqa raqamlar mavjudligini aytadi. Shuning uchun bizda $ 20 + 4 + x = 2 $ bor. Shuning uchun $ x = -22 $. Shunday qilib, biz 20 va 4 -22 qo'shilganda 2 bo'ladi.

5
qo'shib qo'ydi
Bu ehtimollikdir, lekin u so'radi 22 dan 4 ga qo'shib 2 beradi. Shuning uchun u 2 + 4 = 6 kabi bir narsani nazarda tutgan deb o'ylayman
qo'shib qo'ydi muallif LawrenceC, manba
"Menga yigirma to'rtdan birini qo'shishning to'g'ri yo'lini aytib bering" degan bayonot ikki marta beradi. " Men uchun hech qanday ma'no yo'q.
qo'shib qo'ydi muallif T Eizinger, manba

Ogohlantirish

Katta dasturiy ta'minot muhandisi sifatida, bu Menganing egoistik nuqtai nazarim. To'g'ri yoki Mengan aytayotgan narsalar haqiqat deb da'vo qilaman. Siz o'zingiz xohlagan tarzda sharhlash uchun erkin irodangiz bor.

Ibtido

Odatda, bir nomzod mavjud bo'lgan har qanday pozitsiyada etarli malakaga ega emas. Shuning uchun, odatda, dastlabki bir necha oy davomida o'zlarini rivojlantirish uchun o'z vazifalarini bajaradi va kompaniya zarari yo'qolishi mumkin. Ushbu shaxsga kerakli ko'nikmalar to'plamini olish uchun qancha vaqt kerakligini taxmin qilish kerak.

Bu oddiy miya teaser, siz kirish darajasidagi nomzodni so'rashingiz mumkin. U o'zlarining bilim buzuqliklarining qanday bo'lishiga qarab baho beradi. Asosiy g'oya shundaki, agar siz yaxshi va yaxshi ishlov beradigan muammolarni hal qilsangiz, ma'lumotlar bazangizning kamchiliklarini e'tiborsiz qoldirishingiz mumkin.

Bu savolni so'rashda nima izlayman?

  • birinchi ishchi yechim topgach, muammolarni "hal qilindi" deb hisobladi (
  • U (s) "qo'shimchani" turli ma'nolarga ega bo'lishi mumkin deb hisoblagan (s)
  • "raqamlar" ning turli xil kontekstlarga ega bo'lishi mumkinligini o'ylab chiqdi (s)

Muammolarni echish bilan bir xil emas, "ishlash muammolari yaxshi/buyuk" haqida gapirgan edim. Agar kishi muvaffaqiyatsizlikka uchragan bo'lsa, unda qanday qilib u muvaffaqiyatsizlikka duch kelganini ko'rishni xohlaysiz.

Kirish

Dasturiy echimning 80% xarajati rivojlanish tugaganidan keyin xizmatdan olinadi. Odatda korxona kodi yozilgandan 10 barobar ko'p o'qiladi. Umumiy xarajatlarni kamaytirishning eng yaxshi usuli "toza kod" ni yozishdir.

"Toza kod" yozishning bir jihati narsalarni to'g'ri nomlashdir. So'zlarning noaniqligini namoyish etishning eng oddiy holatlaridan biri "qo'shimchalar" dir. Bu erda bir necha qo'shimcha ma'no bor (ko'p narsa bor):

(you add 2 values)
1 + 1 = 2
(you add a value to each list value)            
{a, b, c} + 1 = {a + 1, b + 1, c + 1} 
(you add a value to start of the list)
Prepend[{a, b, c}, 1] = {1, a, b, c}
(you add a value to end of the list)
Append[{a, b, c}, 1] = {a, b, c, 1}
(you add a value to list at specified index position starting from the beginning)
Insert[{a, b, c}, 1, i] ex: {1, a, b, c} if i = 1
(you add a value to list at specified index position starting from the end)
Insert[{a, b, c}, 1, -i] ex: {a, b, c, 1} if i = 1
(you add a set of lists)
Join[{a, b, c}, {x, y}] = {a, b, c, x, y}
(you add a set of lists without duplicates)
Union[{a, b, c}, {c, a, d}] = {a, b, c, d}

C # .net ro'yxatida bir nechta eleMengantni qo'shish uchun bitta eleMengant va AddRange qo'shish uchun Qo'shish uslubiga ega. Bir usul oddiy ma'noga olib keladi va toza bo'lmaydi.

32bitli arxitektura kompyuterida kodni qo'llaganingizda, 32-bitli bit bitlari va ularning asosiy arifMengatikasi va logikasi uchun apparat ta'minoti mavjud. Int32 tipidagi tamsayı 32 bit bilan amalga oshiriladi, maksimal qiymat 2 ^ 31-1 va minimal qiymat -2-3 ga teng bo'lgan alohida raqamni ifodalaydi.

Echimlar

Kod misollar C# .net.

Spoiler o'z ichiga oladi.

Octo

Ishonchim komilki, nima uchun uning javobini rad etgan - bu to'g'ri.

1 baker's dozen = 13
2 baker's dozen = 26 (22 + 4)

Kod:

const int BakersDozen = 13;

Qiymati: DoMengan bilimlarini ko'rsatadi

manshu

Kod:

public static int operator +(manshu firstNumber, manshu secondNumber)
    => (firstNumber + secondNumber).ToString().Count();

Qiymati: Asosiy ma'lumotlar turlarini biladi

CodeNewbie

Following code example hides (int)(22/10 + 4/10) to be 22 + 4

Kod:

public static int operator +(CodeNewbie firstNumber, CodeNewbie secondNumber) 
    => firstNumber/10 + secondNumber/10;

Qiymat: Ma'lumotlarni turlari/operatorlari va ba'zi funktsional dasturlarni biladi

Oleg

Kod:

public static int operator +(Oleg firstNumber, Oleg secondNumber) 
    => firstNumber > secondNumber ? firstNumber + secondNumber : 2;

Qiymati: Default defaults haqida biladi

Ish

KoA and Menganace are just sub cases of Ish's general solution.

Kod:

public static int operator +(Ish firstNumber, Ish secondNumber)
    => (firstNumber + secondNumber) % 24;

Qiymat: Asosiy kriptografik doMenganlarni biladi

Menga

List that contains 22 and you add 4, now you have list containing 2 eleMengants.

Kod:

    var items = new List { 22 };
    items.Add(4);

Qiymati: savolni o'qish qobiliyati

Xulosa

A brain teasers during a Ish interviews can have valid uses. From my experience it is usually just a filler to engage the applicant.

2
qo'shib qo'ydi
Hatto 3-sinf o'quvchilari buni qilishlari mumkin edi.
qo'shib qo'ydi muallif quamrana, manba
@AJ Men javobimni ham taqdim qildim ( 22 ni o'z ichiga olgan va siz 4ni qo'shgan ro'yxatda 2 ta elementni o'z ichiga olgan ro'yxat mavjud. ). Bir qancha boshqalarni sanab o'tish mumkin, ammo bu eslatilmagan eng oson narsa.
qo'shib qo'ydi muallif quamrana, manba
@wchargin 1) "modulli arifmetik". 2) argumentlar ustida "/ 10" funksiyasini qo'llashingiz mumkin. 3) 26 ni 2 narsadan iborat ekanligini va u nima ekanini bilish. 4) Men faqat yechim taklif qilgandim, lekin men stolning boshqa tomonidan tushunishni ko'rsatishni tanladim. Qabul qilish g'oyasi shundaki,
qo'shib qo'ydi muallif quamrana, manba
KoA yoki Menace echimlari eng yuqori baholanishi mumkin, ammo Ish echimi yaxshiroq.
qo'shib qo'ydi muallif quamrana, manba
@wchargin Ha, bu oddiy vazifadir va chuqur tushunishni talab etmaydi. Buni, sizning e'tiboringizga qaramasdan, bu muammoni ko'rmagan, kirish darajasi nomzodlik nuqtai nazaridan ko'rishga harakat qiling.
qo'shib qo'ydi muallif quamrana, manba
Modul operatorini qanday ishlatish «asosiy kriptografik domen bilimlari» ni yoki butun sonni qisqartirishning «balki ba'zi funktsional dasturlashlarni» ko'rsatganligini ko'rsatadimi? Bundan tashqari, BakersDozen kodi, shakarlamalar sanoatining har qanday "domen bilimi" ni ko'rsatmaydi. Men, albatta, bu javobning nima ekanligini his qilmayapman - bu dasturiy ta'minot muhandisligi amaliyoti haqidagi boshqa tafsilotlar, keyin boshqa plakatlardan ko'chirilgan javoblar va ba'zi ma'nosiz "qiymat" qarorlar. Yuqorida siz ehtimol "to'g'ri emas, balki emas, da'vo qilmang» degan ma'noni anglatadi va men bunga rozilik bildiraman.
qo'shib qo'ydi muallif Lisa, manba
@Margus Javob beradigan kishi "modulli arifmetik" (masalan, tovushli funksiya nimani anglatadi, nima uchun muhim va u asosan RSA bilan bog'liq?), Yoki map bo'limlar o'zboshimchalik bilan ro'yxatning o'zboshimchalik bilan ishlashi bilan solishtirish mumkin emas); Ha, 26 narsa ikkita narsadir va bu haqiqatni tushunish uchun bitta domen bilimiga ehtiyoj yo'q yoki uning umumiy tilda nomi borligini tan olaman. (Men baker emasman - menda nolinchi domen mavjud emas. Bu muddatni bilaman, chunki men ingliz tilida gaplashaman).
qo'shib qo'ydi muallif Lisa, manba
Xayolga bormoqchi emasman, savolga javob berishdan bosh tortaman, chunki kontekst yo'q va etarli ma'lumot yo'q. Men nima olaman?
qo'shib qo'ydi muallif user4522, manba
Qanday qilib do'zaxda mening qarorimni shunday talqin qildingiz ?! To'g'ri amalga oshirish: ommaviy statik Oleg operatori (Oleg firstNumber, int secondNumber) => yangi Oleg (firstNumber.intValue + secondNumber) va bu Oleg (int intValue) konstruktori hisoblanadi: this.intValue = intValue% 8. Men butunlay to'lib toshish, torayish va kengaytirish haqida bilib olishingizni tavsiya qilaman. "Katta dasturiy muhandislar" bunday asosiy narsalarni bilib oladigan bo'lsa, dunyo yaxshiroq joy bo'lardi.
qo'shib qo'ydi muallif RIGO MORALES, manba

"KoA" ning javobi men uchun yaxshi ko'rinadi, lekin men matnning boshqa talqinini ko'rmoqdaman:

4 - kunduz va 22 soat. Bu safar "22 dan 4 gacha qo'shib qo'yish" 22 soatdan 4dagacha, 2 minutga tushish yoki 22 soatdan 4tagacha qo'shib, 2 minutni tashkil qilishni bildiradi. Bu 24 soatlik soatga mos keladi, lekin uni talab qilmaydi.

2
qo'shib qo'ydi
Bu aslida bir xil fikrdir.
qo'shib qo'ydi muallif Linh Huynh, manba
24-sonli arifmetik moduldan foydalanish kunlar va soatlar nuqtai nazaridan ham xuddi shunday. Lekin minalar farq qiladi, albatta, men 4 marta muomala qilaman va 22 soatga ko'paytiraman (KoA teskari o'girdi). Shunday qilib, matematika vaqtlari nuqtai nazaridan qanday talqin qilinayotgani va mening sharhimdagi 24 soatlik soatdan foydalanmasligi haqidagi haqiqat (mening javobimda aytib o'tganim) haqiqatdir.
qo'shib qo'ydi muallif Rosie F, manba

24 soatlik standart formatda takrorlangan 24 soatlik kunlik rejimda soat formatida 22 va 4 ni hisobga olgan holda

 Adding 22 hrs (10.00 pm) with 4 hrs (4.00 am) will give 22 + 4 =26 
 Pragmatically since we do not have 26 hrs we can split it as 24 + 2 which       
 in 12 hrs format is 12.00 (Midnight) and 2.00 am thus 26 hrs relatively is   
 2.00 am in 12 hrs as well as 24 hrs format

Shunday qilib, to'g'ri yo'l 24 soat vaqt formati bilan raqamlarni kiritish mumkin.

1
qo'shib qo'ydi

Harbiy/24 soat vaqt 22:00 (22:00) + 4 soat = 02:00 (2ayt)

1
qo'shib qo'ydi
Aniqlanayotgan Stak Exchangega xush kelibsiz. Bu erda ba'zi qoidalar bor; Men turga kirganingizni tavsiya qilaman, ehtimol yordam markaziga kiring va boshqa foydalanuvchilarning javoblarini o'qing. Qoidalar qatorida (1) sizning javobingizda ko'rsatganimdek, javobingizni "spoyler" belgisida yashirish; va (2) javobingizni joylashtirishdan oldin, boshqalarni o'qing. Agar sizning ko'plaringiz yoki boshqalaringizdan biriga o'xshash bo'lsa, uni hech qachon chop etma, agar siz haqiqatan ham yangi narsalarga qo'shilasiz. Javobingiz boshqalarning juftligi bilan bir xil.
qo'shib qo'ydi muallif Silent-Bob, manba

yigirma 2 dan 4 gacha qo'shib beradi.

20 * 2 + 4 = 44

Shunday qilib

44, ikki 4 raqamdan iborat. "yigirma ikkitadan 4 ga qo'shib, 2 (4) ni beradi".

0
qo'shib qo'ydi
javobingiz Manshuning hisobidan boshqa emas.
qo'shib qo'ydi muallif LawrenceC, manba

22 + 4 = 2 x 13 (novvoylarning o'nlab)

0
qo'shib qo'ydi
tushuntirish xafa bo'lmaydi.
qo'shib qo'ydi muallif LawrenceC, manba
Bu javob, avvalgi kabi, birliklarning o'zgarishiga tayanadi - operandlar bitta birlikda, natijada esa boshqa natijalar bo'ladi. Hisoblash uchun 22 + 4 birlik "non rulonlari" ga o'xshaydi, natijada 2 birlik "bakerning o'nlab (ya'ni 13)" dir. @ Guillaume ning natijasi "4 ning soni" bilan izohlanishi kerak. Ikkita birlik, fizibo va foobar ixtiro qilish mumkin, shuning uchun 22 + 4 fizibo = 2 foobar. Lekin bu juda ma'qul bo'lgan texnik emas.
qo'shib qo'ydi muallif mihi, manba