Göm menyn

Laboration 1 - Datatyper och kontrollstrukturer

Syftet med denna laboration är att ni ska lära er arbeta med de vanligaste datatyperna i Python samt hur ni gör för att snabbt och enkelt arbeta er igenom listor och talföljder utan att veta resultatet i förväg. Ni kommer även lära er hur Python hanterar olika typer av villkor, i vilken ordning och till vilken grad de utvärderas och vad detta har för betydelse för er kod.

Inlämningsuppgifter

Uppgift 1a - Summera tal

Uppgift 1a - Summera alla naturliga tal upp till och med 512

Ofta när ni utför beräkningar kommer ni i förväg att kunna räkna ut vilket intervall ni måste gå igenom för att komma fram till svaret. Då är en iteration att föredra eftersom ni med säkerhet kan säga att inga yttre faktorer kommer att påverka resultatet.

Naturliga tal är de heltal som inte är negativa, det vill säga alla tal från 0 och uppåt. Om ni summerar alla naturliga tal upp till och med 128 får ni summan 8256. Er uppgift är att ta reda på vad summan för alla naturliga tal upp till och med 512 är för något.

Uppgift 1b - Multiplicera tal

Uppgift 1b - Produkten av alla positiva heltal upp till och med 512

I denna uppgift ska ni använda er av samma kod som ni skrev i föregående uppgift men nu ska ni göra små ändringar så att ni räknar ut produkten istället för summan.

Produkten för alla positiva heltal upp till och med 12 är 479001600, produkten för alla positiva heltal upp till och med 512 kommer således bli ett fruktansvärt stort tal.

Uppgift 1c - Delbarhet

Uppgift 1c - Minsta positiva heltalet som är jämt delbart med siffrorna 1 till och med 13

Ibland är det inte lika lätt att hitta ett intervall att iterera igenom. Istället får ni bestämma er för ett villkor som bara är sant när ni hittat rätt svar och sedan söka igenom ett mycket stort (ibland oändligt) intervall efter rätt svar.

Det minsta positiva heltalet som är jämt delbart med siffrorna 1 till och med 10 är talet 2520. Er uppgift är att ta reda på vilket det minsta talet är som är jämt delbart med alla siffror från 1 till och med 13.

Tips: För att kontrollera ifall ett tal är jämt delbart med ett annat använder ni er av operatorn modulo (%). Ifall resultatet av operationen är noll är talen jämt delbara med varandra.

Uppgift 1d - Summera primtal

Uppgift 1d - Summera alla primtal under 1000

Ett primtal är ett naturligt tal som är större än 1 och jämt delbart endast med sig själv och med 1. Att avgöra ifall ett tal är ett primtal eller inte är väldigt kostsamt så ni bör därför tänka efter extra noga när ni formulerar er lösning så att ni inte kontrollerar tal som omöjligt kan vara primtal.

Summan av alla primtal under 100 är 1060. Er uppgift är att ta reda på summan för samtliga primtal under 1000.

Krav
Nedan följer de krav som finns på hur ni löser denna laboration som är utöver det som framgår i själva instruktionen:
  • Alla lösningar på denna laboration skall göras med vanliga loopar (for och/eller while). Ni få inte använda "färdiga" lösningar som går att importera.

Sidansvarig: Pontus Haglund
Senast uppdaterad: 2024-08-14