সংখ্যাটি 3 এর গুণক হলে অ্যালগরিদমস কম্পিউটিং


13

মানসিক ক্যালকুলাস করার সময় যে কেউ এটি করতে পারে:

  • একটি পূর্ণসংখ্যা কে দেওয়া, সমস্ত অঙ্কের যোগফল (বেস 10 এ), এবং যদি ফলাফলটি 3 এর একাধিক হয়, তবে কে 3 এর একাধিক।

আপনি কি জানেন যে কোনও অ্যালগরিদম একইভাবে কাজ করছে কিন্তু বাইনারি সংখ্যা অঙ্কগুলিতে (বিট) অপারেটিং করছে?

  • প্রথমদিকে, আমি আমার ভাষার তৈরি তৈরি ফাংশনগুলি বেস 2 থেকে বেস 10 এ রূপান্তর সম্পাদন করতে ascii তে রূপান্তর করতে ব্যবহার করার কথা ভাবছিলাম, তারপরে মানসিক ক্যালকুলাস ট্রিকটি প্রয়োগ করব। তবে অবশ্যই আমি নিজে থেকে 2 থেকে 10 বেস রূপান্তরটি এনকোড করতে পারি। আমি এখনও এটি করিনি, তবে আমি এটি দিয়ে চেষ্টা করব।

  • তারপরে আমি বেস 2 তে ইউক্যালিডিয়ান বিভাগ সম্পর্কে চিন্তা করেছি ...

তবে আমি ভাবছি অন্য উপায় আছে কি না, অ্যালগোরিদম।


উত্তর:


22

নিম্নলিখিত দুটি পর্যবেক্ষণ বিবেচনা করুন (পাঠকের কাছে অনুশীলন হিসাবে ছেড়ে দেওয়া):

  1. এমনকি দুটির সমান শক্তিগুলি 1 টি মডুলো 3।
  2. দুটি বিজোড় শক্তি হ'ল -1 মডুলো 3।

আমরা উপসংহারে পৌঁছেছি যে একটি সংখ্যা (বাইনারিতে) তিনটি দ্বারা বিভাজ্য যদি কেবলমাত্র এবং এমনকি যদি পজিশনে বিটের যোগফল বিজোড় অবস্থানগুলি মডিউল 3-তে বিটের যোগফলের সমান হয়।


7
এটি দশমিক 11 দ্বারা বিভাজ্য হওয়ার নিয়মের মতো।
যুবাল ফিল্মাস

1
@ ইউভালফিল্মাস: অবিকল। আমি পাঠকের জন্য আরও একটি অনুশীলন যুক্ত করতে যাচ্ছিলাম তবে এর বিপরীতে সিদ্ধান্ত নিয়েছি।
মুহম্মু

3
ঠিক আছে, হেক্সাডেসিমালে লিখিত একটি সংখ্যা 17 (দশমিক) দ্বারা বিভাজ্য কিনা তা কীভাবে সন্ধান করবেন? বা 15 (দশমিক) এই বিষয়ে? ;-)
ভোনব্র্যান্ড

33

কাজের জন্য সসীম স্টেট অটোমেটনের কী হবে?

এখানে চিত্র বর্ণনা লিখুন

অবশ্যই জাদু মাত্র গণনার মডিউল 3. প্রতীক যোগ করা হয় পিছনে স্ট্রিং মানে স্ট্রিং এর "বাইনারি মান" থেকে যায় জন্য থেকে জন্য । এর ফলে রাষ্ট্র থেকে এবং প্রতীক আমরা রাষ্ট্র থেকে সরানো , জন্য এবং । নোট একটি স্ট্রিং, whe বাইনারি স্ট্রিং হিসাবে এর মান।axval(x)x2val(x)+axapa2p+amod3p{0,1,2}a{0,1}x{0,1}val(x)N


1
আমি ধারণাটি পছন্দ করি, 9 দিয়ে চেষ্টা করি try আমি বাইনারি 1001 খাওয়ান। প্রথম বিট আমাকে স্টেট 1, তারপরে স্টেট 2, তারপরে স্টেট 1 এবং আবার স্টেট 0 এ প্রেরণ করুন। সুতরাং state0 3 3 এর একাধিক এবং অ্যালগরিদমের জটিলতা হ'ল ব্যবহৃত বিটের সংখ্যা, এর চেয়ে বেশি কিছুই নয়। এটা অসাধারণ !
স্টিফেন রোল্যান্ড

এই ধারণাটি কি লিঙ্কে সম্পর্কিত? আমি মনে করি এটি আরও সহজ। geomathry.wordpress.com/2017/02/13/0-1-and-a-new-number

1
@ ওয়াকারআহমাদ হ্যাঁ, সম্পর্কিত, সহজ নয়। একটি সীমাবদ্ধ অটোমেটনে রূপান্তরগুলিও আপনার ব্যাখ্যার মতো একটি এল 2 আর মূল্যায়ন বর্ণনা করতে ব্যবহার করা যেতে পারে। রূপান্তরগুলি , , , , , । এখানে আমাদের তিনটি রাজ্য রয়েছে, সুতরাং রাজ্যের জন্য তিনটি প্রতীক প্রয়োজন। আপনার চিহ্নগুলি যথাক্রমে সংখ্যার মূল্যায়ন এবং আপনার 2 আর মূল্যায়নের প্রথম প্রতীকটি "রাষ্ট্র"। আপনি যদি আলোচনা চান তবে সাইটে একটি নতুন প্রশ্ন শুরু করা ভাল! 0¯0=0¯0¯1=1¯1¯0=2¯1¯1=0¯2¯0=1¯2¯1=2¯Θ,1,01,2,0
হেনড্রিক জান

প্রোগ্রামিং সম্পর্কে না। এই জিনিসটি কোনও টের্নারি কম্পিউটারে আরও দক্ষ হবে?

4

বাইনারিতে, সংখ্যা 1, 100, 10000 (= 100 × 100), 1000000 (= 100 × 100 × 100) ইত্যাদি সমস্ত 11 (তিন) দ্বারা বিভাজনের পরে একই অবশিষ্টাংশ দেয় give সুতরাং আমরা যদি বাইনারি সংখ্যাকে এমনকি দৈর্ঘ্যের অংশগুলিতে বিভক্ত করি তবে অংশগুলির যোগফলটি মূল সংখ্যার মতোই অবশিষ্ট অংশ দেয়।

(সংখ্যাটি বিভক্ত করার সময়, আমরা শুরুতে প্রয়োজনীয় যতগুলি শূণ্য যুক্ত করি example উদাহরণস্বরূপ আমরা ১০,১১১ টি গ্রুপে ভাগ করব 01,01,11 বা 0001,0111))

গাণিতিকভাবে, কেবল দুটি অঙ্কের গ্রুপগুলিতে সংখ্যাটি বিভক্ত করুন , তারপরে গ্রুপগুলি যুক্ত করুন; এবং এটির পুনরাবৃত্তি করুন যতক্ষণ না আপনার ফলাফলটি 00 বা 11 হয় = আসল সংখ্যাটি তিনটির একাধিক; বা 01 বা 10 = মূল সংখ্যাটি তিনটির একাধিক ছিল না

একটি কম্পিউটার প্রোগ্রামের জন্য, আট বা ছয়টি বা বত্রিশ বিটের গ্রুপ ব্যবহার করা আপনার সিপিইউর পক্ষে দ্রুত হতে পারে । উদাহরণস্বরূপ, আট-বিট সংযোজন যদি দ্রুত হয় তবে কেবল সমস্ত বাইটের যোগফল তৈরি করুন এবং আবারও, যতক্ষণ না ফলাফল এক বাইটে ফিট না হয়। তারপরে তিনটি দ্বারা ভাগ করার পরে অবশিষ্টটি নির্ধারণ করার জন্য একটি নির্দেশ ব্যবহার করুন।

(দ্রষ্টব্য: আমরা এখানে স্বাক্ষরবিহীন পূর্ণসংখ্যাগুলি ধরে নিচ্ছি a স্বাক্ষরিত সংখ্যার সাথে এটির জন্য আরও কিছুটা মনোযোগ দেওয়া দরকার For উদাহরণস্বরূপ 129 3 এর গুণক, তবে -127 নয়, যদিও বিটস 10000001 মানে স্বাক্ষরবিহীন বাইট হিসাবে প্রাক্তন এবং পরে স্বাক্ষরিত বাইট হিসাবে।)


0

বাইনারি-নির্দিষ্ট না হলেও, যখন সন্দেহ হয়, পুনরাবৃত্তি বিয়োগ সর্বদা অবশিষ্টের সাথে বিভাগ গণনা করার একটি নিশ্চিত উপায় (এবং এভাবে যদি সংখ্যাটি 3 এর একাধিক হয়)।


2
বারবার বিয়োগফল একটি খারাপ ধারণা। বাকিগুলির সাথে বিভাগটি আরও দ্রুত।
যুবাল ফিল্মাস

3
সিপিইউতে সম্ভবত সত্যিই ব্যয়বহুল, তবে এটি একটি আলাদা অ্যালগরিদম :-) যা প্রাপ্য নয় -১ :-(
স্টিফেন রোল্যান্ড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.