Skillnad mellan versioner av "Övningar 20 (Progr 3)"
Från Mathonline
Taifun (Diskussion | bidrag) (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...') |
Taifun (Diskussion | bidrag) m |
||
| Rad 13: | Rad 13: | ||
<div class="ovnE"> | <div class="ovnE"> | ||
<big> | <big> | ||
| − | * Mata in [[3. | + | * Mata in [[3.5_Kryptering_av_text,_teckenvis#Klassen EncryptChar|<b><span style="color:blue">Klassen EncryptChar</span></b>]]. Kompilera. |
| − | * Mata in [[3. | + | * Mata in [[3.5_Kryptering_av_text,_teckenvis#Programmet EncryptCharTest|<b><span style="color:blue">Programmet EncryptCharTest</span></b>]]. Kompilera och kör. |
| − | * Läs om <b><span style="color:red">Kryptering av | + | * Läs om <b><span style="color:red">Kryptering av text, teckenvis</span></b> i [http://www.mathonline.se/Progr_3/2%20Boken%20Progr_3_Cs.pdf <b><span style="color:blue">kursboken</span></b>], sid 87-89. |
| − | + | ||
| − | + | ||
| − | + | ||
* Lös uppgiften nedan: | * Lös uppgiften nedan: | ||
</big> | </big> | ||
| Rad 26: | Rad 23: | ||
<div class="ovnC"> | <div class="ovnC"> | ||
<big> | <big> | ||
| − | Vidareutveckla krypteringsalgoritmen i [[3. | + | Vidareutveckla krypteringsalgoritmen i [[3.5_Kryptering_av_text,_teckenvis#Klassen EncryptChar|<b><span style="color:blue">Klassen EncryptChar</span></b>]]. |
| − | * Modifiera klassen <b> | + | * Modifiera klassen <b>EncryptChar</b> till en ny klass <b>EncryptChar_Fkt</b> så här: |
* Modifiera metoden <b>Encrypt(String t, int n)</b> till <b>Encrypt(String t, int k, int m)</b>. | * Modifiera metoden <b>Encrypt(String t, int n)</b> till <b>Encrypt(String t, int k, int m)</b>. | ||
* Definiera krypteringen av tecknen med en linjär funktion y = k x + m, dvs: | * Definiera krypteringen av tecknen med en linjär funktion y = k x + m, dvs: | ||
| Rad 33: | Rad 30: | ||
* Lägg till en ny metod <b>Decrypt(String t, int k, int m)</b> som dekrypterar tecknen med | * Lägg till en ny metod <b>Decrypt(String t, int k, int m)</b> som dekrypterar tecknen med | ||
den inversa funktionen y = (x - m) / k dvs: <b>ch = (char)((ch - m)/k);</b> | den inversa funktionen y = (x - m) / k dvs: <b>ch = (char)((ch - m)/k);</b> | ||
| − | * Anropa båda metoderna från Main() genom att skicka värdena | + | * Anropa båda metoderna från Main() genom att skicka värdena 3 till k och -40 till m. |
| − | Dvs krypteringsfunktionen blir y = | + | Dvs krypteringsfunktionen blir y = 3 x - 40 och dekrypteringsfunktionen y = (x + 40) / 3 |
</big> | </big> | ||
</div> | </div> | ||
Versionen från 27 oktober 2021 kl. 09.41
| << Lektion 20 | Genomgång | Dagens övningar | Nästa lektion >> |
Dagens övningar
- Mata in Klassen EncryptChar. Kompilera.
- Mata in Programmet EncryptCharTest. Kompilera och kör.
- Läs om Kryptering av text, teckenvis i kursboken, sid 87-89.
- Lös uppgiften nedan:
Vidareutveckla krypteringsalgoritmen i Klassen EncryptChar.
- Modifiera klassen EncryptChar till en ny klass EncryptChar_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 3 till k och -40 till m.
Dvs krypteringsfunktionen blir y = 3 x - 40 och dekrypteringsfunktionen y = (x + 40) / 3
Copyright © 2021 TechPages AB. All Rights Reserved.