A
@aymurat
14 posts

№7 Masalaning yechilishi va kelgan javoblar

Dastlab 10 lik sanoq sistemasida berilgan sonni boshqa sanoq sistemasiga aylantiramiz. Undan so’ng boshqa sanoq sistemasiga aylantirilgan sonda birdek raqamlar bor yoki yo’qligi tekshiriladi. Masalan, 10, 123, 4358 sonlarida birdek raqamlar yo’q, 101, 3342, 10000 sonlardi esa birdek sonlar birnechtani tashkil qiladi. Birdek sonlarni tekshirish qulay bo’lishi uchun, 10 liktagi sonni boshqa sanoq sistemasiga aylantirish vaqtida, aylantirilgan harbir raqamni massivga yozib boramiz.

№7 Máseleniń sheshiliwi hám kelgen juwaplar

Dáslep 10 lıq sanaq sistemasında berilgen sandı basqa sanaq sistemasına aylandıramız. Onnan soń basqa sanaq sistemasına aylandırǵan sanda birdey cifrlar bar yamasa joqlıǵı tekseriledi. Máselen, 10, 123, 4358 sanlarında birdey cifrlar joq, al 101, 3342, 10000 sanlarında birdey cifrlar birneshe. Tekserip shıǵıw qolaylı bolıwı ushın, 10 lıqtaǵı sandı basqa sanaq sistemasına aylandırıw waqtında, hárbir aylanǵan cifrin massivke menshiklep baramız.

№6 Masalaning yechilishi va kelgan javoblar tahlili

Masala sharti bo’yicha 3 sonda ham bor bo’lgan umumiy raqamlarni o’sish tartibida chiqarish kerak. Bu yerda birxil raqamlar birnechta bo’lsa, ularning faqat bittasi olinadi. Bundan ko’rinadiki, 0 dan 9 gacha raqamlarni, berilgan 3 sonning barchasida bor yoki yo’qligini aniqlaymiz. Agar bor bo’lsa, massivga yozamiz. 3 songa ham 1 dan 10^80 gacha oraliqta sonlar kiritilishi mumkin. Shuning uchun ularni satrga yozamiz.

№6 Máseleniń sheshiliwi hám kelgen juwaplar analizi

Másele shárti boyınsha 3 sanda da bar bolǵan ulıwma cifrlardı ósiw tártibinde shıǵarıw kerek. Bunda birdey cifrlar birneshe bolsa, olardıń tek birewi alınadı. Bunnan kórinip turǵanınday, 0 den 9 ǵa shekemgi cifrlardı berilgen 3 sannıń hámmesinde bar yamasa joqlıǵın anıqlaymız. Eger bar bolsa, arnawlı massivke jazıp baramız. 3 sanǵa 1 den 10^80 ge shekemgi aralıqtaǵı sanlar kiritiliwi múmkin bolǵanlıqtan, olardı qatarlarǵa jazamız.

№5 Masalaning yechilishi va kelgan javoblar

Masalani yechishning 2 ta yo’lini qaraymiz. Birinchisi, java.math paketidagi BigInteger sinfidan foydalangan holda, ikkinchisi uzun sonlarni hisoblash algoritmidan foydalangan holda.

№5 Máseleniń sheshiliwi hám kelgen juwaplar

Máseleni sheshiwdiń 2 jolın qarap ótemiz. Birinshisi, java.math paketindegi BigInteger klasınan paydalanǵan halda, ekinshisi uzın sanlardı esaplawdıń algoritminen paydalanǵan halda.

№4 Masala yechimi

Avvalroq aytganimizdek, agar dasturingizda ishlatiladigan sonlar oddiy tiplarga sig’masa, unda satrlarda yoki massivlardan foydalaning. Bunnan tashqari BigInteger va BigDecimal sinflari ham bor, ular haqida keyinroq to’xtalib o’tamiz...

№4 Máseleniń sheshiliwi

Aldın aytıp ótkenimdey, eger programmadaǵı islesetuǵın sanlar ápiwayı tiplerge sıymaytuǵın bolsa, onda qatarlardan yamasa massivlerden paydalanıń. Bunnan basqada BigInteger hám BigDecimal klasları bar bolıp, olar haqqında keyinrek toqtalıp ótemiz.

Uzun arifmetika

N soni berilgan. N sonining raqamlari yig’indisini xisoblovchi dastur tuzing (1<N<=10^5000)

Uzın arifmetika

N sanı berilgen. N sanınıń cifrlarınıń qosındısın anıqlawshı programma dúziń (1<N<=10^5000).