Სარჩევი:
- მარაგები
- ნაბიჯი 1: ცვლადების გამოცხადება და შეყვანის მიღება
- ნაბიჯი 2: ახალი ანბანის შექმნა
- ნაბიჯი 3: შეტყობინების გადატანა
- ნაბიჯი 4: დამატებითი
ვიდეო: Caesar Cipher პროგრამა პითონში: 4 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:15
კეისრის შიფრი არის უძველესი და ფართოდ გავრცელებული შიფრი, რომლის დაშიფვრა და გაშიფვრა ადვილია. იგი მუშაობს ანბანის ასოების გადატანით, რათა შეიქმნას სრულიად ახალი ანბანი (ABCDEF- ს შეეძლო 4 ასოზე გადაეტანა და გახდებოდა EFGHIJ).
Caesar Ciphers არ არის ყველაზე უსაფრთხო შიფრები, მაგრამ კარგია მცირე ამოცანებისთვის, როგორიცაა საიდუმლო ჩანაწერების გადაცემა ან პაროლების ოდნავ გაძლიერება. კოდის გაშიფვრა მართლაც ადვილია, მაგრამ დამღლელი შეიძლება იყოს მისი დაშიფვრა, თუ არ გაქვთ დამახსოვრებული სპეციალური ანბანი.
ამ პროცესის გასაადვილებლად ჩვენ შეგვიძლია გამოვიყენოთ კომპიუტერების ძალა, უფრო კონკრეტულად კი პროგრამირების ენა Python.
ეს ინსტრუქცია გაჩვენებთ თუ როგორ უნდა შექმნათ პროგრამა, რომელიც შეტყობინებებს გადააქცევს შიფრად თქვენი ბრძანებით.
მარაგები
ყველაფერი რაც თქვენ გჭირდებათ არის პითონის თარჯიმანი: IDLE, Pycharm და Thonny არის რამდენიმე კარგი, უფასო ვარიანტი (მე გამოვიყენე Pycharm)
პითონის ძირითადი ცოდნა
ნაბიჯი 1: ცვლადების გამოცხადება და შეყვანის მიღება
ანბანის, შეტყობინების, ცვლის და ა.შ. სიმებიანი (ტექსტური) მნიშვნელობების რეალურად შესანახად ჩვენ უნდა გამოვიყენოთ ცვლადები. ჩვენ ვიწყებთ ცვლადების "ანბანის", "partialOne", "partialTwo" და "newAlphabet" გამოცხადებით. მე დავწერე ცვლადების სახელები Camel Case- ში ჩემს კოდში (პირველი სიტყვა არის მცირე და მეორე დიდი), მაგრამ თქვენ შეგიძლიათ დაწეროთ ის როგორც გინდათ, რამდენადაც გახსოვთ მისი შეცვლა დანარჩენ კოდშიც რა ანბანის ცვლადს აქვს მნიშვნელობა "abcdefghijklmnopqrstuvwxyz". ყველა სხვა ცვლადი დაყენებულია "" - ზე, რაც არის ცარიელი სტრიქონი, რადგან ჩვენ ჯერ არ გვაქვს მათი მნიშვნელობები.
რას აკეთებს ეს არის ნაწილობრივი სისტემის შექმნა, რასაც ჩვენ ვიყენებთ იმისათვის, რომ რეალურად შევქმნათ ცვლა. ეს იქნება ახსნილი შემდგომ ეტაპზე.
ამის შემდეგ, ჩვენ უნდა მივიღოთ შეტყობინება და გადავიტანოთ მნიშვნელობა მომხმარებლისგან. ჩვენ ვიყენებთ შეყვანის ფუნქციას ამისათვის. კოდის ეს ნაწილი მომხმარებელს სთხოვს შეტყობინებას და რიცხვს ანბანის გადასატანად.
კოდი:
ანბანი = "abcdefghijklmnopqrstuvwxyz"
partialOne = ""
partialTwo = ""
newAlphabet = ""
message = input ("გთხოვთ შეიყვანოთ შეტყობინება, რომლის თარგმნაც გსურთ:"). ქვედა ()
გასაღები = int (შეყვანა ("გთხოვთ შეიყვანოთ ნომერი, რომლის გადანაცვლებაც გსურთ:"))
ნაბიჯი 2: ახალი ანბანის შექმნა
ახლა შევცვალოთ ანბანი. ამისათვის ჩვენ გამოვიყენებთ ნაწილობრივ სისტემას. ნაწილობრივი სისტემა არის ადგილი, სადაც კომპიუტერი ანბანს ორ ნაწილად ყოფს (ნაწილების თქმის მშვენიერი გზა). პირველი ნაწილი ნაწილობრივ დიდი ხანია გითხრათ, რომ პროგრამა გადაინაცვლებს, მეორე კი დანარჩენია. კომპიუტერი ცვლის ნაწილობრივ. ეს არის ზუსტად ის, რასაც კოდი აკეთებს, პირველ დებულებასთან ერთად, სადაც ნათქვამია, რომ თუ ცვლა არის 0, ახალი ანბანი და ძველი ანბანი იგივეა, რადგან თქვენ არაფერს ცვლით.
Მაგალითად:
მიმდევრობა - 123456789
ნაწილობრივი პირველი - 123; მეორე ნაწილი - 456789
ახალი მიმდევრობა - 456789123
კოდი:
თუ გასაღები == 0:
newAlphabet = ანბანი
elif გასაღები> 0:
partialOne = ანბანი [: გასაღები]
partialTwo = ანბანი [გასაღები:]
newAlphabet = ნაწილობრივი ორი + ნაწილობრივი ერთი
სხვა:
partialOne = ანბანი [:(26 + გასაღები)]
partialTwo = ანბანი [(26 + გასაღები):]
newAlphabet = ნაწილობრივი ორი + ნაწილობრივი ერთი
ნაბიჯი 3: შეტყობინების გადატანა
ახლა ჩვენ გვაქვს ჩვენი ანბანი და ახალი ანბანი. რჩება მხოლოდ შეტყობინების კოდში გადაყვანა.
პირველ რიგში, ჩვენ ვაყენებთ ახალ ცვლადს და ვუწოდებთ მას "დაშიფრულს" და ვაყენებთ მას "". შემდეგ ჩვენ ვწერთ მართლაც რთულ მარყუჟს, რომელიც ამოწმებს შეტყობინების თითოეულ ასოს და გადააქცევს მას ახალ ასოზე. ის გამოაქვს შედეგი და აქ არის ის, წარმატებით მოაქცია კოდი!
კოდი:
დაშიფრული = "" message_index დიაპაზონში (0, len (შეტყობინება)):
თუ შეტყობინება [message_index] == "":
დაშიფრული+= ""
alphabet_index დიაპაზონში (0, len (newAlphabet)):
თუ შეტყობინება [message_index] == ანბანი [alphabet_index]:
დაშიფრული+= ახალი ანბანი [alphabet_index]
ბეჭდვა (დაშიფრული)
ნაბიჯი 4: დამატებითი
თან ერთვის კოდის ფაილი.
გირჩევთ:
QR კოდების სკანერი OpenCV გამოყენებით პითონში: 7 ნაბიჯი
QR კოდების სკანერი OpenCV– ს გამოყენებით პითონში: დღევანდელ მსოფლიოში ჩვენ ვხედავთ, რომ QR კოდი და შტრიხ კოდი გამოიყენება თითქმის ყველგან, პროდუქტის შეფუთვიდან ონლაინ გადახდებამდე და დღესდღეობით ჩვენ ვხედავთ QR კოდებს რესტორანშიც კი მენიუს სანახავად. ასე რომ, არა ეჭვი მეპარება, რომ ახლა ეს დიდი აზრია. მაგრამ ოდესმე მოგენატრათ
ტენიანობისა და ტემპერატურის დამკვირვებელი ჟოლოს Pi გამოყენებით SHT25 პითონში: 6 ნაბიჯი
ტენიანობის და ტემპერატურის დამკვირვებელი ჟოლოს Pi გამოყენებით SHT25 პითონში: როგორც ჟოლოს პიის ენთუზიასტი, ჩვენ მოვიფიქრეთ მასზე უფრო სანახაობრივი ექსპერიმენტები. ამ კამპანიაში ჩვენ გავაკეთებთ ტენიანობისა და ტემპერატურის დამკვირვებელს, რომელიც ზომავს ტენიანობასა და ტემპერატურას ჟოლოს პი და SHT25, Humidi
კლიმატური ცვლილებებიდან პითონში ტემპერატურის ცვლილების გრაფიკული გამოსახვა: 6 ნაბიჯი
კლიმატის ცვლილებისგან პითონში ტემპერატურის ცვლილების გრაფიკული გამოსახულება: კლიმატის ცვლილება დიდი პრობლემაა. და ბევრს არ ესმის, რამდენად გაიზარდა. ამ სასწავლო ინსტრუქციაში ჩვენ განვიხილავთ კლიმატის ტემპერატურის ცვლილებას კლიმატის ცვლილების გამო. მოტყუების ფურცლისთვის შეგიძლიათ იხილოთ პითონის ფაილი ქვემოთ
გააკეთეთ მართლაც მაგარი მატრიცა პითონში!: 6 ნაბიჯი
შექმენით მართლაც მაგარი მატრიცა პითონში!: გამარჯობა ბიჭებო! ეს გაკვეთილი გასწავლით თუ როგორ უნდა შექმნათ მატრიცა პითონში! ჩვეულებრივ, ხალხი აკეთებს მატრიცას სურათებში, რადგან ეს ადვილია. მაგრამ ამჯერად მე გაჩვენებ თუ როგორ უნდა გააკეთო მატრიცა კომპიუტერის ერთ – ერთ მძლავრ ენაზე
როგორ გავაკეთოთ რიცხვითი ინტეგრაციის პროგრამა პითონში: 10 ნაბიჯი
როგორ შევქმნათ რიცხვითი ინტეგრაციის პროგრამა პითონში: ეს არის გაკვეთილი, თუ როგორ უნდა შექმნათ და გაუშვათ პროგრამა, რომელიც შეაფასებს განსაზღვრულ ინტეგრალებს რიცხვითი ინტეგრაციის ალგორითმის გამოყენებით. მე ნაბიჯები დავყავი 3 ნაწილად: ალგორითმის გაგება, რომელიც გამოყენებული იქნება პროგრამის შესაქმნელად, კოდირებისთვის