Omvandla till binärt med Python: Skillnad mellan sidversioner

Från Wikiskola
Hoppa till navigering Hoppa till sök
(Skapade sidan med 'Kategori:Python Kategori:Ma1c Kategori:Aritmetik {{python|Python-hjälp och [https://wikiskola.se/index.php?title{{=}}Kategori:Python Fler uppgifter]}...')
 
Ingen redigeringssammanfattning
 
Rad 51: Rad 51:
</pre>
</pre>


Uppgiften är inspirerad av Malmö stads [https://sites.google.com/skola.malmo.se/programmeringsfortbildning/kursmaterial/tr%C3%A4ff-4?authuser=0 Matematisk programmering i Python]
Uppgiften är inspirerad av Malmö stads [https://sites.google.com/skola.malmo.se/programmeringsfortbildning/kursmaterial/tr%C3%A4ff-5?authuser=0 Matematisk programmering i Python]

Nuvarande version från 1 april 2018 kl. 18.01

Programmeringsuppgift

Python-hjälp och Fler uppgifter

Mål för undervisningen Kom igång med programmering i matematiken.

Målet är att du ska använda program för att utföra matematiska beräkningar. Du bör testa att modifiera algoritmen så att dina beräkningar blir mer effektiva.

Målet är inte att du ska lära dig programmering på matematiklektionen men det är oundvikligt att du ändå lär dig lite Python-kod.


Omvandla till binärt med ett Pythonprogram

Uppgift
Binäromvandling
  1. Testa programmet med några olika tal.
  2. Gå igenom koden och läs kommentarerna. Hur fungerar programmet?

Python-koden

tal = int(input("Ange heltal att omvandla till binärt: "))

bas2 = []
if tal != 0:
    bas2h = ''
    while tal > 0:
        #Bilda biten med den högsta bitvikten
        bit = int(tal % 2)
        #Dividera bort denna
        tal = tal // 2
        #Lägg in den beräknade biten i en lista
        bas2.append(bit)
    #Vänd på listan
    #Biten med den högsta vikten lades ju in först
    #Detta är inte nödvändigt om man väljer att skriva ut listan baklänges (nedan)
    bas2.reverse()


print("Talet blir ", end="")
for bit in bas2:

    #end="" gör så att raden inte bryts och att inget skrivs ut mellan tecknen.
    print(bit, end="")
print(" i bas 2.")

#Om du inte vänder på listan:
#for i in range(len(bas2) - 1, -1, -1):
    #print(bas2[i], end="")

Uppgiften är inspirerad av Malmö stads Matematisk programmering i Python