سؤال

أنا أقوم بتنفيذ خوارزمية Verhoeff للحصول على مخطط أرقام فحص ، ولكن يبدو أن هناك بعض الخلاف في مصادر الويب التي يجب أن تشكل دورة التقليب على أساس جدول التقليب.

ويكيبيديا الاستخدامات: (36) (01589427)

في حين فيما يبدو, ، يستخدم العدديون دورة مختلفة و هذا الكتاب الاستخدامات: (0) (14) (23) (56789) ، مقتبس من مقالة 1990 من قبل الشتاء. ويشير أيضًا إلى أن Verhoeff استخدم اقتباسات Wikipedia الواحدة.

الآن ، نظرية رقمي صدفة بعض الشيء ، لكن دورة ويكيبيديا ستكرر بوضوح بعد القوة الثامنة ، في حين أن الكتاب سيستغرق 10 ، على الرغم من أنه يقول أن^8 = s. يحتوي الجدول 2.14 (ب) على أخطاء أخرى في الدورتين ، لذلك هذا أمر مشكوك فيه على أي حال.

لسوء الحظ ، ليس لدي نسخ من المقالات الأصلية (وأنا ضيقة جدًا لأدفع/بالاشمئزاز من أن المعرفة التي يبلغ عمرها 40 عامًا لا تزال محتجزة على الفدية من قبل الناشرين) ، ولا نسخة من الوصفات العددية للتحقق (وأنا أكره قم بتثبيت المكون الإضافي لحماية النسخ الناجم عن جنون العظمة لعرضه عبر الإنترنت).

فهل يعرف أي شخص ما هو الصحيح؟ هل كلاهما صحيح؟

هل كانت مفيدة؟

المحلول

هناك طبعة قديمة من الوصفات العددية المتاحة هنا كما PDFs. تم وصف خوارزمية Verhoeff في القسم 20.3. ويستخدم نفس التقليب مثل مقالة ويكيبيديا.

نصائح أخرى

التقليب (0) (14) (23) (56789) أفضل من التقليب (36) (01589427). هذا لأنه ، (36) (01589427) يمكنه فقط اكتشاف 88.89 ٪ من أخطاء النقل المفردة بينما (0) (14) (23) (56789) يمكنها اكتشافها جميعًا. ضع في اعتبارك أن الكود الرقمي 716 يتم إعطاؤه 0 كرقم فحص إذا تم استخدام (36) (01589427). أي أن الكود سيكون 7160. ولكن ، إذا تم نقل الأرقام 1 و 6 ، فإن مخطط أرقام الفحص هذا لا يعطي خطأ لأن مجموع الفحص هو صفر. ليس هذا هو الحال مع (0) (14) (23) (56789).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top