Код по алгоритму. Расчет контрольной суммы - C#

Узнай цену своей работы

Формулировка задачи:

Помогите написать код по этому алгоритму. 1) Пользователь может выбрать ввод 8-ми или на 13-ти чисел.(вводит их сам) 2) Сложить цифры стоят на чётных местах. 3) Результат сложения УМНОЖИТЬ на три. 4) Сложить цифры стоящие на нечётных местах кроме контрольных цифр. 5) Сложите 2 и 3 действие. 6) От полученной суммы в 5 действии отбросите десятки. 7) Из 10 вычесть число которое получилось в 6 пункте. 8) Сравнить 7 пункт с контрольной цифрой.

Решение задачи: «Код по алгоритму. Расчет контрольной суммы»

textual
Листинг программы
  1. using System;
  2.  
  3. namespace EAN13
  4. {
  5.     class Program
  6.     {
  7.         static void Main(string[] args)
  8.         {
  9.             Console.WriteLine(EAN13("9785845905635"));
  10.             Console.WriteLine(EAN13("0882224925006"));
  11.             Console.ReadKey();
  12.         }
  13.  
  14.         public static bool EAN13(string barcode)
  15.         {
  16.             int cnt = 0;
  17.             int sum = 0;
  18.             if (barcode.Length != 13 & barcode.Length != 8)
  19.                 throw new Exception("Bad barcode legth");
  20.             for (int j = barcode.Length - 2; j > -1; j--)
  21.             {
  22.                 cnt += 1;
  23.                 if (cnt % 2 == 0)
  24.                 {
  25.                     sum += int.Parse(barcode[j].ToString());
  26.                 }
  27.                 else
  28.                 {
  29.                     sum += int.Parse(barcode[j].ToString()) * 3;
  30.                 }
  31.             }
  32.             sum = (10 - (sum % 10)) % 10;
  33.             if (barcode.Substring(barcode.Length - 1, 1) == sum.ToString())
  34.                 return true;
  35.             return false;
  36.         }
  37.     }
  38. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.571 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы