Skillnad mellan versioner av "Övningar 20 (Progr 3)"

Från Mathonline
Hoppa till: navigering, sök
(Skapade sidan med '__NOTOC__ {| border="0" cellspacing="0" cellpadding="0" height="30" width="100%" | style="border-bottom:1px solid #797979" width="5px" |   {{Not selected tab|Lektion 20...')
(Ingen skillnad)

Versionen från 27 oktober 2021 kl. 09.35

        <<  Lektion 20          Genomgång          Dagens övningar          Nästa lektion  >>      


Dagens övningar

  •   Mata in Klassen EncryptStr. Kompilera.
  •   Mata in Programmet EncryptStrTest. Kompilera och kör.
  •   Läs om Kryptering av strängar i kursboken, sid 84-86.
  •   Läs om Referens som parameter och returvärde i kursboken, sid 84.
  •   I metoden Encrypt(), klassen EncryptStr, finns satsen: ch = (char)(ch + n); Undersök följande fråga:

        Varför måste (ch + n) explicit konverteras till char, när variabeln ch redan är deklarerad till char?

  •   Lös uppgiften nedan:


Vidareutveckla krypteringsalgoritmen i Klassen EncryptStr.

  •   Modifiera klassen EncryptStr till en ny klass EncryptStr_Fkt så här:
  •   Modifiera metoden Encrypt(String t, int n) till Encrypt(String t, int k, int m).
  •   Definiera krypteringen av tecknen med en linjär funktion y = k x + m, dvs:
  •   Ersätt satsen ch = (char)(ch + n); med ch = (char)(k*ch + m);
  •   Lägg till en ny metod Decrypt(String t, int k, int m) som dekrypterar tecknen med

        den inversa funktionen y = (x - m) / k dvs: ch = (char)((ch - m)/k);

  •   Anropa båda metoderna från Main() genom att skicka värdena 2 till k och -5 till m.

        Dvs krypteringsfunktionen blir y = 2 x - 5 och dekrypteringsfunktionen y = (x + 5) / 2







Copyright © 2021 TechPages AB. All Rights Reserved.