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

Från Mathonline
Hoppa till: navigering, sök
m
m
Rad 25: Rad 25:
 
<div class="ovnC">
 
<div class="ovnC">
 
<big>
 
<big>
−
Modularisera  [[Bubbelsortering#Klassen_Bubble|<b><span style="color:blue">klassen Bubble:</span></b>]]  
+
Vidareutveckla krypteringsalgoritmen i [[3.4_Kryptering_av_strängar#Klassen EncryptStr|<b><span style="color:blue">Klassen EncryptStr</span></b>]].
−
* &nbsp; Flytta algoritmen för platsbyte av två element från metoden Sort() till en ny metod Swap().
+
* &nbsp; Modifiera klassen EncryptStr till en ny klass EncryptStr_Fkt så här:
−
&nbsp; &nbsp; &nbsp; &nbsp; Metoden Swap() ska byta plats på två element om de står i fel ordning.
+
* &nbsp; Döp om metoden Encrypt(String t, int n) till Encrypt(String t, int k, int m).
−
* &nbsp; Placera metoden Swap() i en ny klass Swapping i en extern fil.
+
* &nbsp; Definiera krypteringen av tecknen med en linjär funktion y = k x + m, dvs:
−
* &nbsp; Anropa metoden Swap() i metoden Sort().
+
* &nbsp; Ersätt satsen som krypterar tecknen med ch = (char)(k*ch + m);
−
* &nbsp; Hur borde du överföra parametrarna mellan metoderna Sort() och Swap()?
+
* &nbsp; Lägg till en ny metod Decrypt(String t, int k, int m) som dekrypterar tecknen med den
−
* &nbsp; Om du har glömt hur man gör repetera [[Lektion_7_(Progr_3)|<b><span style="color:blue">Lektion 7</span></b>]] som behandlar referensanrop.
+
&nbsp; &nbsp; &nbsp; &nbsp; inversa funktionen y = (x - m) / k dvs: ch = (char)((ch - m)/k);
−
* &nbsp; Testa modulariseringen.
+
* &nbsp; Anropa båda metoderna från Main() genom att skicka värdena 2 till k och -5 till m.
 
</big>
 
</big>
 
</div>
 
</div>

Versionen från 24 oktober 2021 kl. 17.00

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


Dagens övningar

  •   Lös uppgiften nedan:


Vidareutveckla krypteringsalgoritmen i Klassen EncryptStr.

  •   Modifiera klassen EncryptStr till en ny klass EncryptStr_Fkt så här:
  •   Döp om 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 som krypterar tecknen 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.







Copyright © 2021 TechPages AB. All Rights Reserved.