Skillnad mellan versioner av "Primtal"

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 17...')
 
m
Rad 12: Rad 12:
  
  
= <b><span style="color:#931136">Hantering av tecken i python</span></b> =
+
= <b><span style="color:#931136">Om primtal</span></b> =
<div class="border-divblue">  
+
<div class="ovnE">
<table>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: ord() Om_primtal.jpg]]</div>
<tr> <td>&nbsp;&nbsp;&nbsp;&nbsp;<td> <td><big><b>
+
I Python behandlas ett tecken som en <span style="color:red">sträng</span> bestående av ETT element.
+
----
+
Även datatypen av ett tecken är <span style="color:red">str</span> som står för string.
+
  
Datatypen char finns inte. Öppna <span style="color:#931136">Interactive mode</span> och testa<span>:</span> <math> \qquad </math> <big><span style="color:red">type ('a')</span></big> <math> \qquad </math>
 
</b></big>
 
</td> </tr>
 
</table>
 
</div>
 
  
 +
<big><big><b><span style="color:red">Vårt mål:
  
= <b><span style="color:#931136">Built-in function ord()</span></b> =
+
</span></b> Ett pythonprogram som åstadkommer faktoriseringen ovan: <b>svårt problem!</b>
<div class="ovnE">
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: ord() InteractMode.jpg]]</div>
+
  
 +
----
  
<big><big><b><span style="color:red">ord</span></b> står för <b><span style="color:red">ordinal number</span></b> och betyder ordningstal, dvs 1:a, 2:a, 3:e, ... .
+
<b><span style="color:red">Tre steg för att uppnå målet:</span></b>
  
Funktionen <b><span style="color:red">ord()</span></b> returnerar ordningstalet (platsen) av ett tecken i ASCII-tabellen:
+
<b><span style="color:red">Steg 1</span></b> &nbsp; När är ett tal primtal? Svar ges av:
  
Bokstaven a har ASCII-koden 97 och bokstaven z har ASCII-koden 122.</big></big>
+
::&nbsp;&nbsp;Programmet <b>PrimtalsTest</b>, modulariserat: <b>PrimFkt & PrimTest</b>.
</div>
+
  
 +
<b><span style="color:red">Steg 2</span></b> &nbsp; Att hitta alla primtal i ett givet intervall: Programmet <b>AllaPrimtal</b>.
  
= <b><span style="color:#931136">Built-in function chr()</span></b> =
+
<b><span style="color:red">Steg 3</span></b> &nbsp; Att faktorisera ett givet primtal: Programmet <b>PrimFaktorer</b>.
<div class="ovnA">
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: chra() InteractMode.jpg]]</div>
+
  
 +
----
  
<big><big><b><span style="color:red">chr</span></b> står för <b><span style="color:red">character</span></b> och betyder tecken (bokstav).
+
<b><span style="color:red">Steg 1</span></b> tar vi idag, <b><span style="color:red">steg 2 & 3</span></b> nästa lektion.
 +
</big></big>
 +
</div>
  
Funktionen <b><span style="color:red">chr()</span></b> returnerar tecknet (bokstaven) tillhörande ASCII-koden:
 
  
97 är ASCII-koden till bokstaven a och 122 är ASCII-koden till bokstaven z.</big></big>
+
= <b><span style="color:red">Steg 1</span></b> &nbsp; <b><span style="color:#931136">Programmet PrimtalsTest</span></b> =
</div>
+
<div class="ovnC">
 +
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: PrimtalsTest.jpg]]</div>
  
  
= <b><span style="color:#931136">Programmet Char2int</span></b> =
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: PrimtalsTestKorRes.jpg]]</div>
<div class="ovnA">
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Char2IntPython.jpg]]</div>
+
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Programmet Int2char</span></b> =
+
= <b><span style="color:#931136">PrimtalsTest som funktion</span></b> =
 
<div class="ovnA">
 
<div class="ovnA">
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Int2CharPython.jpg]]</div>
+
== <b><span style="color:#931136">Den externa funktionen primtest()</span></b> ==
</div>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: PrimFkt.jpg]]</div>
  
  
 +
<big><big>Kan användas som modul i <b>alla</b> program för att avgöra om ett tal är primtal.</big></big>
  
= <b><span style="color:#931136">Programmet EncryptText utan funktion</span></b> =
 
<div class="ovnA">
 
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Programmet Encrypt_utan_Fkta.jpg]]</div>
 
</div>
 
 
 
= <b><span style="color:#931136">Modularisering: Funktionen encrypt()</span></b> =
 
<div class="ovnA">
 
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: EncryptFkt.jpg]]</div>
 
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Programmet EncryptText</span></b> =
+
= <b><span style="color:#931136">Programmet PrimTest</span></b> =
 
<div class="ovnA">
 
<div class="ovnA">
=== <b><span style="color:#931136">Anropar samma funktion encrypt() för kryptering som för dekryptering</span></b> ===
+
== <b><span style="color:#931136">Använder modulen ovan och anropar funktionen primtest()</span></b> ==
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: EncryptTextb.jpg]]</div>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: PrimTest.jpg]]</div>
 
</div>
 
</div>
  
 
<br>
 
<br>
  
= <b><span style="color:#931136">Fortsätt med [[Övningar 17 (Inbyggd)|<span style="color:blue">Dagens övningar</span>]].</span></b> =
+
= <b><span style="color:#931136">Fortsätt med [[Övningar 18 (Inbyggd)|<span style="color:blue">Dagens övningar</span>]].</span></b> =
  
  

Versionen från 12 mars 2023 kl. 16.05

        <<  Agenda          Dagens genomgång          Genomgång Primtal          Dagens övningar          Nästa lektion  >>      


Om primtal

Ord() Om primtal.jpg


Vårt mål:

Ett pythonprogram som åstadkommer faktoriseringen ovan: svårt problem!


Tre steg för att uppnå målet:

Steg 1   När är ett tal primtal? Svar ges av:

  Programmet PrimtalsTest, modulariserat: PrimFkt & PrimTest.

Steg 2   Att hitta alla primtal i ett givet intervall: Programmet AllaPrimtal.

Steg 3   Att faktorisera ett givet primtal: Programmet PrimFaktorer.


Steg 1 tar vi idag, steg 2 & 3 nästa lektion.


Steg 1   Programmet PrimtalsTest

PrimtalsTest.jpg


PrimtalsTestKorRes.jpg


PrimtalsTest som funktion

Den externa funktionen primtest()

PrimFkt.jpg


Kan användas som modul i alla program för att avgöra om ett tal är primtal.


Programmet PrimTest

Använder modulen ovan och anropar funktionen primtest()

PrimTest.jpg


Fortsätt med Dagens övningar.








Copyright © 2023 TechPages AB. All Rights Reserved.