Zamyla Chan: Tayo'y suriin ang iyong credit. Sa problemang ito, kami ay prompt ng gumagamit para sa isang input ng isang numero ng credit card. Pagkatapos kami ay tumakbo na credit card numero upang makita kung ito ay may-bisa. Kung gayon, kami ay i-print ang kumpanya na na credit card ay kabilang sa. Kung hindi man, sasabihin namin sa user na card na ay hindi wasto. Sabihin tumalon karapatan in gamit pagdikta para sa user input. Ang numero ng credit card ay ng uri ng data long_long, kaya ang pag-andar CS50 library get_long_long ay lubos na kapaki-pakinabang. Ngunit ang function na ito ay nagsisiguro na ang user input anumang integer. Kaya ang anumang mga positive integers, negatibo integers, o zero ay ang lahat ng fine. Kaya nasa sa iyo upang higit pang patunayan kung o hindi ang gumagamit ay nagbigay sa amin ng isang wastong credit card uri ng numero. Ngayon na kami ay may isang credit card number mula sa user, at pagkatapos ay kailangan namin upang makalkula ang checksum. Kaya credit card checksums ay kinakalkula bilang mga sumusunod. Simula mula sa ikalawang sa huling digit, multiply namin ang bawat iba pang mga digit sa pamamagitan ng 2. Pagkatapos namin magdagdag ng mga produkto 'digits magkasama. Mula na naming idagdag ang kabuuan ng mga digit na ay hindi multiply sa 2 sa na nakaraan sum na kami kalkulahin. Sa wakas, kung ang numero na nagtatapos sa 0, pagkatapos ay ang bilang na ito ay may-bisa. Tara sa pamamagitan ng isang halimbawa at hawakan mo ang hakbang-hakbang. Kaya ang aming unang hakbang ay upang simulan ang mula sa ikalawang sa huling digit at multiply bawat iba pang mga digit sa pamamagitan ng dalawang. Ngayon, kung naka-imbak ko ang credit card numero sa isang variable na tinatawag na number CC, pagkatapos modding na sa pamamagitan ng 10 ng gagawin bigyan ako ang napaka-huling digit. Kaya kung paano maaari mong i-access ang ikalawa'y kay huling digit? OK, kaya sa sandaling na-access namin ikalawang to last digit, pagkatapos ay gagamitin namin ulitin sa pamamagitan multiply bawat iba pang mga digit sa pamamagitan ng 2. Kapag kami ay may na, pagkatapos ay isasaalang-alang namin ang mga produkto at magdagdag ng mga produkto 'digits magkasama. Kaya dito mayroon akong asawa numero, kaya na fine. Ngunit pagkatapos ay sa sandaling nakuha ko sa aking huling number-- 7 multiply sa 2-- nagdagdag ako ng 1 at ang 4 upang bigyan ako ng 27. Mula doon, idagdag namin na product-- 27-- ng sum ng digits na ay hindi multiply sa 2. Kaya dito ko na naka-highlight ang lahat ng sa mga numero sa mga orange. Sa sandaling idagdag namin ang mga numero, at pagkatapos makuha namin ang aming huling bilang checksum. Kaya patunayan namin ito sa pamamagitan ng paggawa siguraduhin na ang huling digit ay 0. Kung ang checksum ay hindi nagtatapos sa 0, pagkatapos ay ang numero ng credit card ay tiyak hindi wasto. Kung hindi man, sabihin pumunta sa sa i-check ang kumpanya tagapagkilala at ang credit card number haba. Nagbigay kami ng isang listahan ng tatlong pulutong, kasama na, ang bilang ng integers na ang kanilang mga numero ng credit card ay may. Pagkatapos ng unang dalawang digit na mga card ay maaaring magsimula sa. Kaya nasa sa iyo upang subaybayan ang mga unang dalawang digit ng credit card at ang bilang ng integers sa card na iyon. At sa na, na sa iyo tapos na ang problema. Ang pangalan ko ay Zamyla, at ito ay Credit.