3
Falkenbergs Gymnasium Programmering A Lärare:Vesat Ademi ÖVNING: CEASAR – KRYPTO Ceasar – krypto är en av de allra äldsta krypteringsmetoderna som finns. Den går ut på att man förskjuter varje bokstav i sitt meddelande ett bestämt antal steg. Förskjuter man exempelvis strängen ”Basic” ett steg blir det ”Cbtjd ”. Skriv ett program där man matar in ett meddelande och antalet steg (nyckel) meddelandet ska förskjutas och som sedan skriver ut det krypterade meddelandet. Utöka Ceasar-krypteringen så att den även kan dechiffrera ett meddelande. Man ska kunna ange om man vill chiffrera eller dechiffrera. Använd programmet till att dechiffrera följande text som förskjutits +6 steg: ”hxgyorokt rgjk yom o lotgrsgzinkt suz lxgtqxoqk” . Programmets gränssnitt består av två formulär. Det första formuläret ser ut så här: Om man klickar på knappen ”Chiffrera text” så visas det andra formuläret (se bilden nedan): Här matar man in texten som ska chiffreras samt nyckeln. Klickar man på ”Chiffrera” knappen så visas den chiffrerade texten. Klickar man på ”Tillbaka” knappen så går man tillbaka till den första formuläret där man kan välja att fortsätta med chiffrering/dechiffrering eller att avsluta programmet. Om man klickar på knappen ”Dechifrera text” som finns på den första formuläret så får man samma formulär som ovan men knappen ”Chiffrera” döljs medan knappen ”Visa klar text” visas. Observera att även etiketternas innehåll förändras: Sida 1

Programmeringsuppgift

Embed Size (px)

DESCRIPTION

Att skapa ett enkelt krypteringsprogram i Visual Basic

Citation preview

Page 1: Programmeringsuppgift

Falkenbergs Gymnasium Programmering A Lärare:Vesat Ademi

ÖVNING: CEASAR – KRYPTO

Ceasar – krypto är en av de allra äldsta krypteringsmetoderna som finns. Den går ut på att man förskjuter varje bokstav i sitt meddelande ett bestämt antal steg. Förskjuter man exempelvis strängen ”Basic” ett steg blir det ”Cbtjd ”. Skriv ett program där man matar in ett meddelande och antalet steg (nyckel) meddelandet ska förskjutas och som sedan skriver ut det krypterade meddelandet. Utöka Ceasar-krypteringen så att den även kan dechiffrera ett meddelande. Man ska kunna ange om man vill chiffrera eller dechiffrera. Använd programmet till att dechiffrera följande text som förskjutits +6 steg: ”hxgyorokt rgjk yom o lotgrsgzinkt suz lxgtqxoqk” .

Programmets gränssnitt består av två formulär. Det första formuläret ser ut så här:

Om man klickar på knappen ”Chiffrera text” så visas det andra formuläret (se bilden nedan):

Här matar man in texten som ska chiffreras samt nyckeln. Klickar man på ”Chiffrera” knappen så visas den chiffrerade texten. Klickar man på ”Tillbaka” knappen så går man tillbaka till den första formuläret där man kan välja att fortsätta med chiffrering/dechiffrering eller att avsluta programmet. Om man klickar på knappen ”Dechifrera text” som finns på den första formuläret så får man samma formulär som ovan men knappen ”Chiffrera” döljs medan knappen ”Visa klar text” visas. Observera att även etiketternas innehåll förändras:

Sida 1

Page 2: Programmeringsuppgift

Falkenbergs Gymnasium Programmering A Lärare:Vesat Ademi

Koden tilldet andra formuläret ser ut så här :

Dim kryptoText As StringDim textLängd As IntegerDim temp As StringDim tal As IntegerDim nyckel As IntegerDim klarText As String

Private Sub cmdAvsluta_Click()EndEnd Sub

Private Sub cmdChiffrera_Click()klarText = txtOriginal.TexttextLängd = Len(klarText)kryptoText = ""nyckel = Val(txtNyckel.Text)For i = 1 To textLängd temp = Mid(klarText, i, i + 1) tal = Asc(temp) tal = tal + nyckel kryptoText = kryptoText & Chr(tal)Next itxtOriginal.Text = kryptoTextEnd Sub

Private Sub cmdKlarText_Click()klarText = txtOriginal.TexttextLängd = Len(klarText)kryptoText = ""nyckel = Val(txtNyckel.Text)nyckel = nyckel * (-1)For i = 1 To textLängd temp = Mid(klarText, i, i + 1) tal = Asc(temp) tal = tal + nyckel kryptoText = kryptoText & Chr(tal)Next itxtOriginal.Text = kryptoTextEnd Sub

Private Sub cmdTillbaka_Click()Form2.ShowForm1.HideEnd Sub

Sida 2

Page 3: Programmeringsuppgift

Falkenbergs Gymnasium Programmering A Lärare:Vesat Ademi

Koden till det första formuläret ser ut så här:

Private Sub cmdChiffrera_Click()Form1.ShowForm2.HideForm1.cmdChiffrera.Visible = TrueForm1.cmdKlarText.Visible = FalseForm1.lbl1.Caption = "Mata in texten som ska chiffreras!"Form1.txtOriginal.Text = ""Form1.txtNyckel.Text = ""End Sub

Private Sub cmdDechiffrera_Click()Form1.ShowForm2.HideForm1.cmdChiffrera.Visible = FalseForm1.cmdKlarText.Visible = TrueForm1.lbl1.Caption = "Mata in texten som ska dechiffreras!"Form1.txtOriginal.Text = ""Form1.txtNyckel.Text = ""End Sub

Private Sub cmdAvsluta_Click()EndEnd Sub

Sida 3