stanford-oval/wikipedia huggingface dataset:
Thiết bị bán hàng
Hệ thống POS

Là sự kết hợp sử dụng giữa phần cứng và phần mềm cho quầy tính tiền, và có thể đó là một vị trí lưu động, với các hệ thống không dây (wireless systems)
Hệ thống POS phát triển từ một loại máy tính tiền cơ khí sử dụng các thanh ghi dịch(mechanical cash registers) vào đầu thế kỷ 20. Những ví dụ của loại máy tính tiền này như là sử dụng thanh ghi NCR(crank) và loại cao hơn đó là thanh ghi Burrough.Các thanh ghi này ghi lại dữ liệu vào các cuộn băng từ(journal tapes) và đòi hỏi phải sao chép lại các thông tin này vào hệ thống của người quản lý bán lẻ. Bước tiếp theo trong quá trình phát triển là việc sử dụng điện cho các máy tính tiền. Một thí dụ cho loại này là thanh ghi NCR Class 5. Vào năm 1973 một loại máy mới ra đời được dẫn hướng bằng máy tính được giới thiệu, là IBM 3653 Store System và NCR 2150. Một số loại khác dựa trên sự cơ sở máy tính như là Regitel, TRW, và Datachecker. Vào năm 1973 lần đầu tiên giới tiệu máy đọc mã vạch UPC/EAN có trong hệ thống POS. Năm 1986, các hệ thống POS chủ yếu dựa trên kỹ thuật máy tính với sự ra đời của IBM 4683.
Suốt trong những năm 1980 đến 90 các thẻ tín dụng hoạt động độc lập được tích hợp phát triển xử lý các thẻ tín dụng có trong hệ thống POS có thể dễ dàng và an toàn Model được giới thiệu ở đay là VeriFone Tranz 330, Hypercom T7 Plus, hay Lipman Nurit 2085. Nó là các thiết bị đơn giản. Một số hệ thống POS không dây sử dụng cho các cửa hàng ăn không chỉ cho phép xử lý thanh toán di động, chúng còn cho phép server xử lý chính xác tất cả các món ăn.
Vào năm 2005, hệ thống POS dùng cho bán lẻ không những phục vụ muc đích bán lẻ mà cho khả năng kết nối mạng sử dụng trong thương mại. Trên thực tế, rất nhiều hệ thống bán lẻ POS hoạt động hơn là một "point of sale". Khi chỉ phục vụ cho 4&5 nhà bán lẻ, có nhiều hệ thống POS tích hợp nhiều account, quản lý thông minh, mở dự báo bán hàng, quản lý quan hệ khách hàng (customer relation management CRM), quản lý dịch vụ, số tiền thuê, và số tiền phải trả cho nhân viên.
Với những tuỳ chọn phong phù, một điều trở nên phổ biến mà dễ dàng ta sẽ phải nghe tới đó là các sản phẩm phần mềm cho POS như: retail management software, business management software, POS system, and point of sale software.
Một phần mềm POS đơn giản

Một ECR đầu tiên được chương trình hoá bằng phần mềm và giới hạn về chức năng và khả năng kết nối được giới thiệu vào năm 1973 bởi IBM, IBM 3650 và 3660 Store, điều khiển128 IBM 3653/3663 Point of Sale Registers. Hệ thống này là bản thương mại đầu tiên sử dụng kỹ thuât client-server technology, peer to peer communications, Local Area Network (LAN) đồng thời backup, and remote initialization. Vào giữa nhưng năm 1974, nó được sử dụng trong Pathmark Stores tại New Jersey và Dillards Department Stores.
Khả năng lập chương trình cho phép các nhà bán lẻ rất linh hoạt. Vào năm 1979 Gene Mosher's Old Canal Cafe tại Syracuse, New York sử dụng phần mềm POS viết bởi Mosher chạy trên máy Apple II giúp cho khách hàng tiện lợi trong quán ăn, và nó còn cho phép gửi thông báo tới nhà bếp
Năm 1985 Mosher giới thiệu loại có màn hình cảm ứng (touchscreen-driven), màu, giao diện POS. Phần mềm này chạy trên Atari ST, là sản phẩm máy tính đồ hoạ đầu tiên trên thế giới. Cuối thế kỷ 20 Mosher phát triển phàn mềm này cho các nhà sản xuất máy tính tiền và phần mềm phát triển POS, và nó được coi như là chuẩn của hệ thống phần mềm POS.
Các chuẩn phần cứng POS

Có 2 chuẩn dành cho thiết bị phần cứng của POS là OPOS và JavaPOS, cả hai đều tương thích với UnifiedPOS, chuẩn bởi tổ chức bán lẻ quốc tế (The National Retail Foundation). OPOS (OLE for POS) là chuẩn phổ biến đầu tiên được giới thiệu bởi Microsoft, NCR Corporation, Epson, và Fujisu-ICL. OPOS dựa trên chuẩn giao tiếp cổng COM, cho phép sử dụng các chương trình ngôn ngữ của Microsoft. OPOS phát hành năm 1996, JavaPOS được giới thiệu bởi Sun Microsoftsystem, IBM và NCR Corporation năm 1997.
Về sau, cùng với sự phát triển ồ ạt của mô hình "chuỗi POS", nhu cầu quản lý tập trung được đặt ra. Một số hãng sản xuất phần mềm đã đưa ra giải pháp thay thế các POS chuyên dụng bằng các phần mềm "POS" chạy trên máy PC. Với một PC, người dùng có thể gắn thêm các thiết bị có liên quan (thông thường là Barcode Reader - thiết bị đọc mã vạch - và Bill Printer - máy in Bill chuyên dụng) - cùng với việc cài đặt một POS software - người dùng có thể sở hữu một máy POS hoàn chỉnh với độ tùy biến cao; đồng thời, có thể tận dụng ưu điểm của các giao thức truyền thông trên PC để giải quyết tốt vấn đề tích hợp dữ liệu bán lẻ từ các POS về cơ sở dữ liệu trung tâm, cũng như tiếp nhận các dữ liệu mang tính "chính sách" được phân phối từ trung tâm đến các POS.
Giao thức truyền thông POS

Có nhiều giao thức truyền thông trong các hệ thống POS sử dụng để điều khiển thiết bị ngoại vi. Ta có thể nói tới
EPSON Esc/POS
UTC Standard
UTC Enhanced
AEDEX
ICD 2002
Ultimate
CD 5220
DSP-800
IBM dumb terminal
ADM 787/788.
Chúng được tạo ra bởi những công ty chế tạo các thiết bị ngoại vi khác nhau. EMAX, sử dụng EMAX international, kết hợp giữa thiết bị của AEDEX và IBM.
Rất nhiều thiết bị, như hiển thị và máy in, hỗ trợ giao thức để hoạt động với các thương hiệu khác nhau của thiết bị POS và máy tính.
Coussapoa trinervia

| Coussapoa trinervia> Phân loại khoa học |
| --- | --- |
Giới (regnum): Plantae
(không phân hạng): Angiospermae
(không phân hạng): Eudicots
Bộ (ordo): Rosales
Họ (familia): Urticaceae
Chi (genus): Coussapoa
Loài (species): C. trinervia
Danh pháp hai phần
Coussapoa trinervia Spruce ex Mildbr., 1928 
Coussapoa trinervia là loài thực vật có hoa trong họ Tầm ma. Loài này được Spruce ex Mildbr. mô tả khoa học đầu tiên năm 1928.
Chú thích

↑  The Plant List (2010). “Coussapoa trinervia”. Truy cập ngày 13 tháng 6 năm 2013.
Yanagawa Heisuke

Đây là một tên người Nhật; trong tiếng Nhật họ và tên được viết theo thứ tự Á Đông (họ trước tên sau) họ là .
| Yanagawa Heisuke |
| --- | --- |
Yanagawa Heisuke
Sinh: 2 tháng 10 năm 1879 Nagasaki, Nhật Bản
Mất: 22 tháng 1, 1945(1945-01-22) (65 tuổi)
Thuộc:  Lục quân Đế quốc Nhật Bản
Quân chủng: Đế quốc Nhật Bản
Năm tại ngũ: 1900 - 1945
Cấp bậc: Trung tướng lục quân
Đơn vị: Sư đoàn 1 (Lục quân Đế quốc Nhật Bản) Đài Loan quân (Lục quân Đế quốc Nhật Bản) Tập đoàn quân 10 (Lục quân Đế quốc Nhật Bản)
Tham chiến: Chiến tranh Nga-Nhật Chiến tranh Trung-Nhật Thế chiến thứ II
Công việc khác: Bộ trưởng Bộ Tư pháp
Yanagawa Heisuke (柳川 平助, Yanagawa Heisuke?, Liễu Xuyên Bình Trợ) (2/10/1879 - 22/1/1945) là một trung tướng lục quân của Lục quân Đế quốc Nhật Bản.
Tiểu sử

Yanagawa sinh tại thành phố Nagasaki nhưng lớn lên tại tỉnh Oita trong một gia đình nhận ông làm con nuôi. Năm 1900, Yanagawa tốt nghiệp Trường Sĩ quan Lục quân (陸軍士官学校,). Năm 1912, tốt nghiệp Đại học Lục quân (陸軍大学校).
Yanagawa từng tham gia Chiến tranh Nga-Nhật, từng là tùy viên quân sự tại Trung Quốc, giảng viên trường võ bị ở Bắc Kinh, thành viên phái đoàn Nhật Bản đàm phán Hiệp định Hòa bình Versailles, thành viên phái đoàn Nhật Bản ở Hội Quốc Liên từ năm 1920 đến năm 1923.
Khoảng thời gian đó, Yanagawa tham gia vào cuộc tranh chấp nội bộ của Lục quân Nhật Bản và đứng về phe Kodaha - phe của các sĩ quan trẻ muốn thành lập một chính phủ quân phiệt và độc tài ở Nhật Bản.
Tiến thân bằng con đường sĩ quan kỵ binh, Yanagawa được phong hàm tướng vào tháng 12 năm 1931. Từ năm 1932 đến 1934, Yanagawa giữ cương vị Thứ trưởng Bộ Chiến tranh. Ông đồng thời là Sư đoàn trưởng Sư đoàn số 1 khét tiếng của Lục quân Nhật Bản. Từ năm 1935 đến 1936, Yanagawa là Tư lệnh Quân đoàn Đài Loan.
Trong Chiến tranh Trung-Nhật, Yanagawa là Tư lệnh Quân đoàn số 10. Trong trận Thượng Hải, Yanagawa đã chỉ huy đơn vị của mình truy kích quân Trung Quốc đang tháo chạy. Sau đó, ông tiếp tục chỉ huy một cánh quân Nhật trong trận Nam Kinh. Đơn vị của Yanagawa đã gây ra thảm sát Nam Kinh.
Năm 1938, Yanagawa thôi phục vụ trong quân đội và trở thành quan chức chính phủ và có lúc là Bộ trưởng Bộ Tư pháp, Cảnh sát trưởng Tokyo.
Thliptoceras fimbriata

| Thliptoceras fimbriata> Phân loại khoa học |
| --- | --- |
Giới (regnum): Animalia
Ngành (phylum): Arthropoda
Lớp (class): Insecta
Bộ (ordo): Lepidoptera
Họ (familia): Crambidae
Chi (genus): Thliptoceras
Loài (species): T. fimbriata
Danh pháp hai phần
Thliptoceras fimbriata
Thliptoceras fimbriata là một loài bướm đêm trong họ Crambidae.
Chú thích

↑  Bisby, F.A.; Roskov, Y.R.; Orrell, T.M.; Nicolson, D.; Paglinawan, L.E.; Bailly, N.; Kirk, P.M.; Bourgoin, T.; Baillargeon, G.; Ouvrard, D. (2011). “Species 2000 & ITIS Catalogue of Life: 2011 Annual Checklist”. Species 2000: Reading, UK. Truy cập ngày 19 tháng 6 năm 2014.
↑  Beccaloni, G. W., Scoble, M. J., Robinson, G. S. & Pitkin, B. (Editors). (2003) The Global Lepidoptera Names Index (LepIndex). (Geraadpleegd maart 2013).
Bari peroxide

Bari peroxide là một hợp chất vô cơ với công thức hóa học BaO2. Chất rắn màu trắng này (màu xám khi không nguyên chất) là một trong những peroxide vô cơ phổ biến nhất, và nó là hợp chất peroxide đầu tiên được phát hiện. Là một chất oxy hóa và tạo ra một màu xanh lá cây sống động khi bắt lửa (cũng như tất cả các hợp chất bari), chất này được sử dụng trong pháo hoa; về mặt lịch sử, nó cũng được sử dụng làm tiền chất để điều chế hydro peroxide.
Cấu trúc

Bari peroxide là một peroxide, có chứa nhóm O2−2 . Chất rắn có cấu trúc kết tinh giống calci carbide, CaC2.
Điều chế và ứng dụng

Bari peroxide phát sinh bởi phản ứng đảo ngược của O2 với bari oxit. Peroxide hình thành ở khoảng 500 °C và oxy được đưa vào ở khoảng 820 °C.
Phản ứng này là cơ sở cho quá trình Brin đã lỗi thời hiện nay để tách oxy từ khí quyển. Các oxit khác, ví dụ: Na2O và SrO, có các phản ứng tương tự.
Trong một ứng dụng lỗi thời khác, bari peroxide đã từng được sử dụng để tạo ra hydro peroxide qua phản ứng của nó với axit sulfuric:
Bari sulfat kết tủa được lọc ra hỗn hợp trên.
Pseudoleskeella

| Pseudoleskeella> Phân loại khoa học |
| --- | --- |
Giới (regnum): Plantae
Ngành (divisio): Bryophyta
Lớp (class): Bryopsida
Bộ (ordo): Bryales
Họ (familia): Leskeaceae
Chi (genus): Pseudoleskeella
Pseudoleskeella là một chi rêu trong họ Leskeaceae.
Chú thích

↑  The Plant List (2010). “Pseudoleskeella”. Truy cập ngày 10 tháng 6 năm 2014.
Żabie Doły

Khu vực bảo vệ "Żabie Doły" ở Bytom
Toàn cảnh abie Doły
Abie Doły là một khu vực thiên nhiên và cảnh quan được bảo vệ ở Silesia, Ba Lan. Khu phức hợp Żabie Doły nằm hoàn toàn trong Đô thị Silesian và bao gồm một vùng đất bị thay đổi nặng nề bởi hoạt động của con người. Khu vực được bảo vệ có diện tích 2.262 km². Tại Żabie Doły, 129 loài chim đã được xác định, bao gồm 70 loài làm tổ và 17 loài quý hiếm trong khu vực. Động vật và thực vật khác cũng cư trú ở đây.
Tên ""Żabie Doły "có thể được tạm dịch là" Mương ếch ".
Địa điểm và lịch sử

Khu bảo tồn Żabie Doły có vị trí nằm hoàn toàn trong khu vực giới hạn của các thành phố Bytom, Chorzów và Piekary Slaskie ở trung tâm khu vực đô thị hóa cao Upper Silesia.
Nhiều thế kỷ hoạt động của con người, đặc biệt là các hoạt động khai thác ngầm và luyện kim loại, đã để lại khu vực được bao phủ bởi các hồ giữ nước chưa sử dụng là các hố sụt sau khai thác, chất thải và đống xỉ. Hoạt động khai thác tại địa phương bao gồm kẽm, chì và than cứng. Phần lớn sự biến đổi đất đai của con người xảy ra vào những năm 1950. Việc phát hiện ra sự phong phú sinh học hiện tại của nó là một bất ngờ.
Khu vực này đã nhận được tình trạng là khu vực được bảo vệ hợp pháp vào năm 1997, một phần là do sự quan tâm của các học sinh trung học (từ các trường trung học ở Bytom và Louisenlund, Đức).
Tình trạng pháp lý

Khu vực Żabie Doły hiện có tình trạng là một "khu phức hợp thiên nhiên và cảnh quan" trong khuôn khổ pháp lý của các khu vực bảo vệ thiên nhiên của Ba Lan. Hiện tại, những nỗ lực đang được tiến hành để nâng cấp nơi đây trở thành trạng thái là một khu bảo tồn thiên nhiên.
Zbyslavice

| Zbyslavice |
| --- | --- |
—  Làng  —
 

  Hiệu kỳ
Zbyslavice
Quốc gia:  Cộng hòa Séc
Vùng: Moravskoslezský
Huyện: Ostrava-město
Múi giờ: CET (UTC+1)
 • Mùa hè (DST): CEST (UTC+2)
NUTS 5: CZ0806 568449
Zbyslavice là một làng thuộc huyện Ostrava-město, vùng Moravskoslezský, Cộng hòa Séc.
Barzanò

Barzanò là một đô thị trong tỉnh Lecco, trong vùng Lombardia của Ý, cự ly khoảng 30 km về phía đông bắc của Milan và khoảng 14 km về phía tây nam của Lecco. Tại thời điểm ngày 31 tháng 12 năm 2004, đô thị này có dân số 4.898 người và diện tích là 3,6 km².
Đô thị Barzanò có các frazioni (các đơn vị dân cư trực thuộc, chủ yếu là các làng) Torricella, San Feriolo, Dagò, và Villanova.
Barzanò giáp các đô thị: Barzago, Cassago Brianza, Cremella, Monticello Brianza, Sirtori, Viganò.
Chionachne gigantea

| Chionachne gigantea> Phân loại khoa học |
| --- | --- |
Giới (regnum): Plantae
(không phân hạng): Angiospermae
(không phân hạng): Monocots
Bộ (ordo): Poales
Họ (familia): Poaceae
Chi (genus): Chionachne
Loài (species): C. gigantea
Danh pháp hai phần
Chionachne gigantea (J.Koenig) Veldkamp 
Chionachne gigantea là một loài thực vật có hoa trong họ Hòa thảo. Loài này được (J.Koenig) Veldkamp mô tả khoa học đầu tiên năm 2002.
Chú thích

↑  The Plant List (2010). “Chionachne gigantea”. Truy cập ngày 6 tháng 6 năm 2013.
Cosmopterix teligera

| Cosmopterix teligera |
| --- | --- |

Phân loại khoa học
Giới (regnum): Animalia
Ngành (phylum): Arthropoda
Lớp (class): Insecta
Bộ (ordo): Lepidoptera
Họ (familia): Cosmopterigidae
Chi (genus): Cosmopterix
Loài (species): C. teligera
Danh pháp hai phần
Cosmopterix teligera Meyrick, 1915 
Danh pháp đồng nghĩa
 Cosmopterix abdita Hodges, 1962 
Cosmopterix teligera là một loài bướm đêm thuộc họ Cosmopterigidae. Loài này có ở Hoa Kỳ (Florida, về phía nam tới Key Largo, và từ Louisiana tới tây bắc Arkansas), Brasil (Distrito Federal), Colombia, Costa Rica, Cuba, Jamaica và México (Tamaulipas).
Con trưởng thành được ghi nhận từ tháng 3 đến tháng 10 ở Hoa Kỳ. Ở Jamaica, con trưởng thành được tìm thấy vào tháng 1 và tháng 2. Có lẽ có các thế hệ chồng lấn ở xứ nhiệt đới.
Chenillé-Changé

| --- | --- |
 Chenillé-Changé
Chenillé-Changé

Hành chính
Quốc gia:  Pháp
Vùng: Pays de la Loire
Tỉnh: Maine-et-Loire
Quận: Segré
Tổng: Châteauneuf-sur-Sarthe
Xã (thị) trưởng: René Bouin
Thống kê
Độ cao: 17–72 m (56–236 ft) (bình quân 23 m (75 ft)[chuyển đổi: tùy chọn không hợp lệ])
Diện tích đất1: 5,3 km2 (2,0 dặm vuông Anh)
Nhân khẩu2: 130  (2006)
 - Mật độ: 25/km2 (65/sq mi)
INSEE/Mã bưu chính: 49095/ 49220
1 Dữ liệu địa chính Pháp loại trừ các hồ và ao lớn hơn 1 km² (0.386 dặm vuông hoặc 247 acre) cũng như các cửa sông.
2 Dân số không tính hai lần: cư dân của nhiều xã (ví dụ, các sinh viên và quân nhân) chỉ tính một lần.
Chenillé-Changé là một xã thuộc tỉnh Maine-et-Loire trong vùng Pays de la Loire phía tây nước Pháp. Xã này nằm ở khu vực có độ cao trung bình 23 mét trên mực nước biển.
Bachanahalli, Alur

| Bachanahalli |
| --- | --- |
—  Làng  —
 
Quốc gia:  Ấn Độ
Bang: Karnataka
Huyện: Hassan
Thành phố/thị trấn: Alur
Múi giờ: IST (UTC+5:30)
Bachanahalli là một làng thuộc tehsil Alur, huyện Hassan, bang Karnataka, Ấn Độ.
Thliptoceras epicrocalis

| Thliptoceras epicrocalis> Phân loại khoa học |
| --- | --- |
Giới (regnum): Animalia
Ngành (phylum): Arthropoda
Lớp (class): Insecta
Bộ (ordo): Lepidoptera
Họ (familia): Crambidae
Chi (genus): Thliptoceras
Loài (species): T. epicrocalis
Danh pháp hai phần
Thliptoceras epicrocalis
Thliptoceras epicrocalis là một loài bướm đêm trong họ Crambidae.
Chú thích

↑  Bisby, F.A.; Roskov, Y.R.; Orrell, T.M.; Nicolson, D.; Paglinawan, L.E.; Bailly, N.; Kirk, P.M.; Bourgoin, T.; Baillargeon, G.; Ouvrard, D. (2011). “Species 2000 & ITIS Catalogue of Life: 2011 Annual Checklist”. Species 2000: Reading, UK. Truy cập ngày 19 tháng 6 năm 2014.
↑  Beccaloni, G. W., Scoble, M. J., Robinson, G. S. & Pitkin, B. (Editors). (2003) The Global Lepidoptera Names Index (LepIndex). (Geraadpleegd maart 2013).
Cheba Zahouania

| Cheba Zahouaniaالشابة الزهوانية‎> Thông tin cá nhân |
| --- | --- |
Sinh: 
Ngày sinh: 15 tháng 5, 1959
Nơi sinh: Oran
 
Giới tính: nữ
Quốc tịch: Algérie
Nghề nghiệp: ca sĩ

Sự nghiệp nghệ thuật
Năm hoạt động: 1981 – nay
Thể loại: raï
Nhạc cụ: giọng hát
Hãng đĩa: Island Records
 
 
Website
Cheba Zahouania trên IMDb
x • t • 
Cheba Zahouania (tiếng Ả Rập: الشابة الزهوانية‎) (Cũng đánh vần Chaba), sinh Halima MAZZI (tiếng Ả Rập: حليمة مازي‎) (sinh ngày 15 tháng 5 năm 1959) là một ca sĩ người Algérie/ Ma-rốc nổi tiếng với âm nhạc raï. Cô đã sống ở Pháp kể từ khi bạn nhảy của cô, Cheb Hasni, bị sát hại vào năm 1994.
Tiểu sử

Halima Mazzi sinh ra ở Oran, Algérie, vào năm 1959. Dưới cái tên Chaba Zahouania, cô đã trở thành một ca sĩ nổi tiếng của raï, một phong cách âm nhạc dân gian lai. Năm 1986, năm năm sau khi bắt đầu sự nghiệp, cô đã được công nhận với màn trình diễn "Khâli ya khâli" (My uncle, oh, my uncle) với Cheb Hamid.
Trong mùa hè năm 1987, Zahouania đã ghi lại "Beraka" ("The Shack"), với Cheb Hasni, được coi là khiêu khích theo tiêu chuẩn Algérie, khiến họ chú ý. Thành công của bài hát đã khiến Hasni trở nên nổi tiếng và thêm vào danh tiếng của Zahouania, mặc dù bài hát vẫn còn gây tranh cãi với các nhà phê bình và các nhà cơ bản Hồi giáo, những người đã lo ngại về sự phổ biến của thể loại raï.
Hasni bị sát hại ở Oran vào ngày 29 tháng 9 năm 1994. Zahouania rời Algérie và đến sống ở Pháp. Cô đã có thể trở lại vào năm 1999 và thu âm ở Algérie, bao gồm một bản song ca với Cheb Abdou. Năm 2006, cô bắt đầu hát về các chủ đề tôn giáo sau khi được mời đến Mecca trong chuyến hành hương đầu tiên của mình bởi Tổng thống Abdelaziz Bouteflika. Mặc dù cô không thích chính trị, cô đã tham gia với các ca sĩ nổi tiếng khác để thành lập một ủy ban hỗ trợ cho Abdelaziz Bouteflika vào năm 2009.
Đĩa hát chọn lọc

H Bibi Darha Biya (2003)
El baraka (2002)
Zahouania (2001)
Samahni ya zine (2000)
Rhythm n Raï (1997)
Formule Raï (1995)
Đêm không ngủ (1988)
Rachid System với. Rim'K
Wourini Win Rak Tergoud
Mazelt
Ya Lala Torkia
Amitiés Sacrée kết hợp với TLF
La Route du Soleil kết hợp với Rim'K
Thuật toán Luhn

Thuật toán Luhn hoặc công thức Luhn, cũng được biết là thuật toán "modulus 10" hay "mod 10", nó được đặt theo tên người sáng tạo ra nó, nhà khoa học của IBM Hans Peter Luhn, là một công thức tổng kiểm đơn giản được sử dụng để xác thực nhiều loại số nhận dạng, chẳng hạn như số thẻ tín dụng, IMEI, National Provider Identifier tại Mỹ, mã Social Insurance Numbers tại Canada, Số ID tại Israel, Nam Phi, Số an sinh xã hội Hy Lạp (ΑΜΚΑ), và các mã khảo sát xuất hiện trên biên lai của McDonald's, Taco Bell, và Tractor Supply Co. Nó được mô tả trong bằng sáng chế tại Mỹ số 2,950,048, nộp vào ngày 6 tháng 1 năm 1954 và được cấp vào ngày 23 tháng 8 năm 1960..
Thuật toán này thuộc phạm vi công cộng và được sử dụng rộng rãi ngày nay. Nó được quy định trong ISO/IEC 7812-1. Nó không có ý định là một hàm băm bảo mật bằng mật mã; nó được thiết kế để bảo vệ chống lại các lỗi vô ý, không phải các cuộc tấn công độc hại. Hầu hết các thẻ tín dụng và nhiều số nhận dạng chính phủ sử dụng thuật toán như một phương pháp đơn giản để phân biệt các số hợp lệ với các số bị nhầm hoặc không chính xác.
Mô tả

Thuật toán dùng để tính toán số này như sau:
Bước 1: Nhân đôi giá trị của những số ở vị trí chẵn tính từ phải sang bao gồm cả số Check Digit (là các số ở vị trí 2, 4, 6... 14), trong đó số thứ 1 là số ngoài cùng phía bên phải của chuỗi số IMEI.
Bước 2: Cộng dồn tất cả các chữ số riêng lẻ của các số thu được ở bước 1, cùng với các số ở vị trí lẻ (là các số ở vị trí 1, 3, 5,...,13) trong chuỗi số IMEI.
Bước 3: Nếu kết quả ở bước 2 là một số chia hết cho 10 thì số A sẽ bằng 0. Nếu kết quả ở bước 2 không chia hết cho 10 thì A sẽ bằng số chia hết cho 10 lớn hơn gần nhất trừ đi chính kết quả đó, tức là tổng các số kể cả A phải chia hết cho 10.
Ví dụ: số IMEI là 350880-10-195032-A, trong đó A là số kiểm tra cần phải tính để tổng 3+5*+0+8*+8+0*+1+0*+1+9*+5+0*+3+2*+A chia hết cho 10
Bước 1: 4, 0, 18, 0, 0, 16, 10
Bước 2: (4 + 0 + (1 + 8) + 0 + 0 + (1 + 6) + (1 + 0)) + (3 + 0 + 8 + 1 + 1 + 5 + 3) = 42
Bước 3: A = 50 – 42 = 8
Như vậy số IMEI hợp lệ phải là 350880-10-195032-8.
Điểm mạnh và điểm yếu

Thuật toán Luhn sẽ phát hiện bất kỳ lỗi một chữ số nào, cũng như gần như tất cả các chuyển vị của các chữ số liền kề.Tuy nhiên, nó sẽ không phát hiện chuyển vị của dãy hai chữ số 09 thành 90 (hoặc ngược lại). Nó sẽ phát hiện 7 trong số 10 lỗi số kép có thể xảy ra (nó sẽ không phát hiện ra 22 ↔ 55, 33 ↔ 66 hay 44 ↔ 77).
Các thuật toán kiểm tra số phức tạp khác (giống như thuật toán Verhoeff và thuật toán Damm) có thể phát hiện thêm các lỗi sao chép. Thuật toán Luhn mod N là một phần mở rộng hỗ trợ các chuỗi không có số.
Bởi vì thuật toán hoạt động trên các chữ số theo cách từ phải sang trái và các chữ số 0 chỉ ảnh hưởng đến kết quả nếu chúng gây ra dịch chuyển vị trí, việc đệm số 0 bắt đầu một chuỗi số không ảnh hưởng đến phép tính. Do đó, các hệ thống đệm đến một số chữ số cụ thể (ví dụ bằng cách chuyển đổi 1234 thành 0001234) có thể thực hiện xác thực Luhn trước hoặc sau khi đệm và đạt được kết quả tương tự.
Chuẩn bị một số có độ dài từ 0 đến vị trí lẻ khiến nó xử lý số từ trái sang phải thay vì phải sang trái, nhân đôi các chữ số ở vị trí lẻ.
Thuật toán xuất hiện trong United States Patent cho một thiết bị cơ khí cầm tay để tính toán checksum. Do đó, nó được yêu cầu khá đơn giản. Thiết bị lấy mod 10 tổng bằng phương tiện cơ học. Các chữ số thay thế, nghĩa là, kết quả của thủ tục nhân đôi và giảm, không được tạo ra một cách cơ học. Thay vào đó, các chữ số được đánh dấu theo thứ tự hoán vị trên thân máy.
Triển khai giả mã

function luhnAlgorithm(cardNumber) {
  const digits = cardNumber.toString().split('').map(Number);

  let sum = 0;
  let isAlternate = false;

  for (let i = digits.length - 1; i >= 0; i--) {
    let digit = digits[i];

    if (isAlternate) {
      digit *= 2;
      if (digit > 9) {
        digit -= 9;
      }
    }

    sum += digit;
    isAlternate = !isAlternate;
  }

  return sum % 10 === 0;
}
// Ví dụ sử dụng
const cardNumber = '4242424242424242';
const isValid = luhnAlgorithm(cardNumber);

console.log(`Số thẻ ${cardNumber} có hợp lệ: ${isValid}`);
Nơi sử dụng

Ngoài số thẻ tín dụng, thuật toán này cũng được sử dụng để tính toán số kiểm tra trên số thẻ SIM.
Ví dụ. Lấy số sê-ri SIM (còn được gọi là ICCID) 89610195012344000018
Số được in trên thẻ SIM thường là một tập hợp con của chuỗi này.
Hai chữ số cuối cùng là chữ số kiểm tra.
checkLuhn("896101950123440000") sẽ trả về 1 - số kiểm đầu tiên
checkLuhn("950123440000") sẽ trả về 8 - số kiểm thứ hai. Số rút ngắn này, theo sau là số kiểm của nó được in trên chính thẻ SIM.
Psylliodes yalvacensis

| Psylliodes yalvacensis> Phân loại khoa học |
| --- | --- |
Giới (regnum): Animalia
Ngành (phylum): Arthropoda
Lớp (class): Insecta
Bộ (ordo): Coleoptera
Họ (familia): Chrysomelidae
Chi (genus): Psylliodes
Loài (species): P. yalvacensis
Danh pháp hai phần
Psylliodes yalvacensis Gok, 2005 
Psylliodes yalvacensis là một loài bọ cánh cứng trong họ Chrysomelidae. Loài này được Gok miêu tả khoa học năm 2005.
Chú thích

↑  Chrysomelidae in Synopsis of the described Coleoptera of the World ngày 13 tháng 12 năm 2008
Zby

| Phân loại khoa học |
| --- | --- |
Giới (regnum): Animalia
Ngành (phylum): Chordata 
Nhánh: Craniata
 
Phân ngành (subphylum): Vertebrata
Phân thứ ngành (infraphylum): Gnathostomata
Liên lớp (superclass): Tetrapoda
Nhánh (clade): Dinosauria
Chi (genus): Zby Mateus Mannion & Upchurch, 2014
Zby là một chi khủng long, được Mateus Mannion & Upchurch mô tả khoa học năm 2014.
Chú thích

↑  “Dinosaur Genera List”. Bản gốc lưu trữ ngày 15 tháng 7 năm 2011. Truy cập ngày 3 tháng 7 năm 2015.
Crossoglossa elliptica

| Crossoglossa elliptica> Phân loại khoa học |
| --- | --- |
Giới (regnum): Plantae
(không phân hạng): Angiospermae
(không phân hạng): Monocots
Bộ (ordo): Asparagales
Họ (familia): Orchidaceae
Chi (genus): Crossoglossa
Loài (species): C. elliptica
Danh pháp hai phần
Crossoglossa elliptica Dressler 
Crossoglossa elliptica là một loài thực vật có hoa trong họ Lan. Loài này được Dressler mô tả khoa học đầu tiên năm 1997.