คำถามติดแท็ก checksum

30
อัลกอริทึม Luhn สำหรับตรวจสอบหมายเลขบัตรเครดิต ฯลฯ
ท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นที่สั้นที่สุดเพื่อคำนวณหาอัลกอรึทึม Luhnสำหรับการตรวจสอบหมายเลข (บัตรเครดิต) อัลกอริทึม Luhn อธิบาย จาก RosettaCodeอัลกอริทึมนี้สำหรับวัตถุประสงค์ของการท้าทายนี้จะถูกระบุเช่นนี้โดยมีตัวอย่างอินพุต49927398716: Reverse the digits, make an array: 6, 1, 7, 8, 9, 3, 7, 2, 9, 9, 4 Double the numbers in odd indexes: 6, 2, 7, 16, 9, 6, 7, 4, 9, 18, 4 Sum the digits in each number: 6, …

30
บาร์โค้ดของฉันถูกต้องหรือไม่?
EAN-8บาร์โค้ดรวมถึง 7 หลักของข้อมูลและการตรวจสอบหลักที่ 8 การตรวจสอบจะคำนวณโดยการคูณตัวเลขด้วย 3 และ 1 สลับกันเพิ่มผลลัพธ์และลบออกจากผลคูณถัดไปของ 10 ตัวอย่างเช่นกำหนดตัวเลข2103498: Digit: 2 1 0 3 4 9 8 Multiplier: 3 1 3 1 3 1 3 Result: 6 1 0 3 12 9 24 ผลรวมของตัวเลขที่ได้คือ55ดังนั้นหลักของการตรวจสอบคือ60 - 55 = 5 ความท้าทาย งานของคุณคือกำหนดบาร์โค้ด 8 หลักให้ตรวจสอบว่ามันถูกต้องหรือไม่ - คืนค่าความจริงหากการตรวจสอบถูกต้องและเป็นเท็จ คุณสามารถป้อนข้อมูลในแบบฟอร์มใด ๆ ต่อไปนี้: สตริงที่มีความยาว …

30
คำนวณการตรวจสอบ Adler-32
พื้นหลัง Adler-32เป็นเช็คซัม 32 บิตที่คิดค้นโดย Mark Adler ในปี 1995 ซึ่งเป็นส่วนหนึ่งของ zlib library ที่ใช้กันอย่างแพร่หลาย (พัฒนาโดย Adler) Adler-32 ไม่น่าเชื่อถือเท่ากับการตรวจสอบความซ้ำซ้อนแบบ 32 บิตแต่อย่างน้อยในซอฟต์แวร์ - มันเร็วกว่าและง่ายกว่าในการนำไปใช้ คำนิยาม ให้B = [b 1 , ⋯, b n ]เป็นอาร์เรย์ไบต์ การตรวจสอบ Adler-32 ของBหมายถึงผลลัพธ์ของ+ 65536 ×สูงต่ำโดยที่: ต่ำ: = ((1 + b 1 + ⋯ + b n ) mod 65521) สูง: …

30
คำนวณเลขเช็คไอ -13
เขียนฟังก์ชั่นซึ่งให้รหัส 12 หลักแรกของรหัสISBN-13จะคำนวณ ISBN ทั้งหมดผ่านการคำนวณและต่อท้ายตัวเลขการตรวจสอบที่เหมาะสม การป้อนข้อมูลของฟังก์ชันของคุณคือสตริงที่มี 12 หลักแรกของ ISBN เอาท์พุทมันเป็นสตริงที่มีทั้งหมด 13 หลัก ข้อกำหนดอย่างเป็นทางการ เขียนฟังก์ชั่นซึ่งเมื่อได้รับสตริงsประกอบด้วยทศนิยมทั้งหมด 12 หลัก (และไม่มีอักขระอื่น ๆ ) ส่งคืนสตริงtด้วยคุณสมบัติดังต่อไปนี้: tประกอบด้วยตัวเลขทศนิยม 13 หลัก (และไม่มีอักขระอื่น ๆ ); sเป็นคำนำหน้าของt ; ผลรวมของตัวเลขทั้งหมดในตำแหน่งคี่ในt (เช่นที่หนึ่งที่สามที่สาม ฯลฯ ) บวกสามครั้งรวมของตัวเลขทั้งหมดที่อยู่ในตำแหน่งที่เท่ากันในt (เช่นที่สองที่สี่หกและอื่น ๆ ) เป็น หลาย 10 ตัวอย่าง / กรณีทดสอบ อินพุต 978030640615 เอาท์พุต 9780306406157 เงื่อนไขชัยชนะ ในฐานะที่เป็นความท้าทายของรหัสกอล์ฟคำตอบที่สั้นที่สุดชนะ

3
ใช้การจัดช่องไฟแบบง่าย
บทนำ การจัดช่องไฟหมายถึงการปรับระยะห่างระหว่างตัวอักษรของข้อความ ยกตัวอย่างพิจารณาคำที่Topเขียนด้วยร่ายมนตร์ต่อไปนี้สามอัน: ##### ..... ..... ..#.. ..... ..... ..#.. ..##. .###. ..#.. .#..# .#..# ..#.. .#..# .#..# ..#.. ..##. .###. ..... ..... .#... ..... ..... .#... เราสามารถเติมช่องว่างระหว่างร่ายมนตร์ด้วยจุดแล้วเติมลงไปได้ แต่ช่องว่างก็ดูกว้างเกินไป แต่เราเลื่อนร่ายมนตร์ไปทางซ้ายเพื่อให้พวกมันสัมผัสเกือบ: #####........ ..#.......... ..#..##..###. ..#.#..#.#..# ..#.#..#.#..# ..#..##..###. .........#... .........#... มันดูดีขึ้นมาก! หมายเหตุวิธีบาร์ของด้านบนของเส้นขอบด้านซ้ายของT oในการท้าทายนี้งานของคุณคือการใช้โปรแกรมการจัดช่องไฟอย่างง่ายสำหรับร่ายมนตร์รูปสี่เหลี่ยมผืนผ้าดังกล่าว กระบวนการจัดช่องไฟ พิจารณาสองสี่เหลี่ยม 2D อาร์เรย์ของตัวอักษร.และ#รูปทรงเดียวกัน ในขั้นตอนการจัดช่องไฟอย่างง่ายของเราอันดับแรกเราวางอาร์เรย์แบบเรียงต่อกันโดยมีคอลัมน์หนึ่งคอลัมน์.อยู่ระหว่างกัน จากนั้นเราย้ายแต่ละรายการ#ในอาเรย์ขวาหนึ่งก้าวไปทางซ้ายจนกระทั่ง#อาเรย์ซ้ายและขวาบางอันอยู่ติดกันแบบมุมฉากหรือแนวทแยงมุม ผลลัพธ์ของการจัดช่องไฟเป็นขั้นตอนก่อนที่เราจะแนะนำ#s ที่อยู่ติดกัน งานของคุณคือการใช้กระบวนการนี้ …
24 code-golf  grid  code-challenge  atomic-code-golf  code-golf  combinatorics  probability-theory  card-games  code-golf  number  geometry  code-golf  decision-problem  chess  code-golf  math  number  sequence  code-golf  string  regular-expression  code-golf  arithmetic  integer  code-golf  math  array-manipulation  code-golf  number  decision-problem  integer  code-golf  string  ascii-art  kolmogorov-complexity  code-golf  decision-problem  graph-theory  binary-matrix  code-golf  string  parsing  code-golf  string  code-golf  morse  code-golf  code-golf  string  code-golf  ascii-art  cellular-automata  code-golf  binary  base-conversion  code-golf  arithmetic  decision-problem  integer  checksum  code-golf  matrix  linear-algebra  code-golf  code-golf  game  code-golf  sequence  binary  code-golf  combinatorics  optimization  code-golf  decision-problem  quine  code-golf  rational-numbers  bitwise  code-golf  string  permutations  code-golf  kolmogorov-complexity  unicode  code-golf  ascii-art  number  code-golf  number  integer  binary  base-conversion  code-golf  array-manipulation  code-golf  chemistry  code-golf  number  sequence  fibonacci  code-golf  matrix  optimization  code-golf  number  code-golf  math  number  sequence  code-golf  math  array-manipulation  matrix  linear-algebra  code-golf  kolmogorov-complexity  cops-and-robbers  cops-and-robbers  code-golf  tips  basic  code-golf  decision-problem  binary  tiling  game  king-of-the-hill  python  code-golf  c  code-golf  ascii-art  code-golf  string  kolmogorov-complexity  alphabet  code-golf  number  code-golf  string  code-golf  number  sequence  integer  code-golf  number  permutations  restricted-complexity  restricted-time 

22
การแปลง ISBN-13 เป็น ISBN-10
บทนำ ในการท้าทายนี้งานของคุณคือการสร้างรหัส ISBN-10 สำหรับหนังสือที่ระบุรหัส ISBN-13 โดยสมมติว่ามีรหัสดังกล่าวอยู่ รหัส ISBN-13 ดังกล่าวประกอบด้วยหลายส่วนโดยคั่นด้วย-: 978-GG-PPPP-TTT-C ตัวอักษรG(กลุ่ม), P(ผู้เผยแพร่), T(ชื่อเรื่อง) และC(เช็คซัม) ทั้งหมดล้วนเป็นเลขตัวเดียว สำหรับจุดประสงค์ของการท้าทายนี้การจัดกลุ่มและการคำนวณC(ดูความท้าทายนี้ ) ไม่น่าสนใจและเราจะใส่เครื่องหมายยัติภังค์ทั้งหมดเพื่อให้งานนี้ง่ายขึ้น หมายเลข ISBN-10 มีเค้าโครงคล้ายกันมาก: GG-PPPP-TTT-c ตัวอักษรG, PและTเป็นเช่นเดียวสำหรับ 13 หลักเลข ISBN แต่cจะแตกต่างกัน (และคำนวณโดยใช้ขั้นตอนวิธีการที่แตกต่างกัน) หลักcที่ถูกเลือกในลักษณะดังกล่าวที่เท่าเทียมกันต่อไปนี้ถือ (ตัวเลขในการสั่งซื้อ) A: 10*G + 9*G + 8*P + … + 3*T + 2*T + 1*c = 0 (mod 11) ตัวอย่าง …

23
สร้างบิตพาริตี
บิตพาริตีเป็นหนึ่งในรูปแบบที่ง่ายที่สุดของการตรวจสอบ ขั้นแรกคุณต้องเลือกพาริตี้แม้กระทั่งหรือคี่ สมมติว่าเราเลือกได้ ตอนนี้เราต้องการข้อความที่จะส่ง สมมติว่าข้อความของเราคือ "Foo" สิ่งนี้เขียนในรูปแบบไบนารี่เป็น: 01000110 01101111 01101111 ตอนนี้เรานับจำนวนทั้งหมดของ1ที่นั่นนั่นคือ 15 เนื่องจาก 15 เป็นเลขคี่เราจะต้องบวกหนึ่งบิตเพิ่มเข้าไปที่ส่วนท้ายของข้อความของเราและตอนนี้เราจะมีจำนวนบิต 'บน' . บิตที่เพิ่มล่าสุดนี้เรียกว่า "บิตพาริตี" หากเราเลือกพาริตี้คี่สำหรับเช็คซัมของเราเราจะต้องเพิ่มพิเศษ '0' เพื่อให้จำนวนบิตบนยังคงแปลก ความท้าทาย: คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่กำหนดบิตพาริตี้ที่ถูกต้องสำหรับสตริง โปรแกรมของคุณจะต้องมีสองอินพุต: sสตริง, นี่คือข้อความที่จะทำการคำนวณการตรวจสอบ สิ่งนี้จะถูก จำกัด ไว้ที่ 95 อักขระ ASCII ที่พิมพ์ได้ อักขระหรือสตริงอักขระเดี่ยวpที่จะเป็นแบบeพาริตีคู่หรือoสำหรับพาริตีคี่ และสร้างค่าความจริงที่เป็นเท็จซึ่งแสดงถึงบิตพาริตีที่ถูกต้อง Truthy ถ้าเป็น1และ falsey 0ถ้ามันเป็น ไม่อนุญาตให้ใช้บิวด์อินที่นับจำนวนบิต "บน" ในสตริงหรืออักขระ ตัวอย่างเช่นฟังก์ชั่นfที่ทำสิ่งนี้: f('a') == 3หรือf('foo') == 16ถูกแบน สิ่งอื่นใดเช่นการแปลงฐานเป็นเกมที่ยุติธรรม …

20
สลายจำนวน!
งานของคุณคือการแยกตัวเลขโดยใช้รูปแบบด้านล่าง นี้จะคล้ายกับการแปลงฐานยกเว้นที่แทนของรายชื่อdigitsในฐานคุณรายการvaluesเช่นว่ารายการเพิ่มขึ้นเพื่อป้อนข้อมูล หากฐานที่กำหนดคือnแต่ละหมายเลขในรายการจะต้องอยู่ในรูปแบบของk*(n**m)ที่ไหน0<=k<nและmไม่ซ้ำกันทั่วทั้งรายการ รายละเอียด รูปแบบอินพุต / เอาท์พุตที่สมเหตุสมผล โปรแกรม / ฟังก์ชั่นของคุณใช้ 2 อินพุทและเอาท์พุทรายการ รายการเอาท์พุทสามารถอยู่ในลำดับใด ๆ 0 สามารถยกเว้นหรือรวมไว้ได้ 0อนุญาตให้นำหน้า Built-in จะได้รับอนุญาต Testcases number base converted list input1 input2 output 123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000] 11 2 [8,2,1] or [0,0,0,0,8,0,2,1] 727 20 [400,320,7] 101 10 [100,1] or [100,0,1] เกณฑ์การให้คะแนน นี่คือรหัสกอล์ฟ ทางออกที่สั้นที่สุดในหน่วยไบต์ชนะ
16 code-golf  number  sequence  number-theory  base-conversion  code-golf  bitwise  hashing  code-golf  string  ascii-art  whitespace  code-golf  math  code-golf  code-golf  image-processing  counting  code-golf  math  arithmetic  checksum  code-golf  code-golf  math  arithmetic  number-theory  code-golf  array-manipulation  random  code-golf  string  code-golf  math  ascii-art  base-conversion  code-golf  graphical-output  geometry  3d  code-golf  math  linear-algebra  matrix  code-golf  math  number  sequence  code-golf  array-manipulation  code-golf  math  matrix  linear-algebra  code-golf  number  sequence  counting  code-golf  string  code-golf  string  restricted-source  quine  sorting  code-golf  string  geometry  code-golf  string  code-golf  networking  code-golf  base-conversion  code-golf  math  matrix  code-golf  arithmetic  linear-algebra  matrix  code-golf  number  arithmetic  grid  code-golf  number  source-layout  code-golf  string  bitwise  checksum  code-golf  array-manipulation  code-golf  string  probability-theory  code-golf  tips  code-golf  sequence  code-golf  string  math  sequence  calculus  code-golf  string  palindrome  bioinformatics  code-golf  math  combinatorics  counting  permutations  code-golf  parsing  logic-gates  code-golf  arithmetic  number-theory  combinatorics  code-golf  math  sequence  polynomials  integer  code-golf  string  ascii-art  chess  code-golf  string  code-golf  number  code-golf  string  ascii-art  parsing  code-golf  code-golf  number  natural-language  conversion  code-golf  arithmetic  code-golf  string  code-golf  ascii-art  decision-problem 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.