Læringsmål:
- Strenger
- I/O
- For-løkker
- PLACEHOLDER
Pensum:
- PLACEHOLDERKap 7
DEL 1
a)
Et palindrom er et ord som staves likt begge veier (f.eks. 'abba
' eller det finske ordet 'saippuakivikauppias
'). Lag en funksjon som returnerer true om en streng er et palindrom; false ellers.
...
Det ønskes å hente ut den lengste biten av et stykke DNA avgrenset av en bestemt start og stopp sekvens. Disse oppgis å være "ATG" (start) og "TAG" (stop). DNAet gis som en lang streng av bokstaverbokstavene: A, T, G og C. Funksjonen skal starte tellingen på nytt hver gang startstrengen gjentas , og tellingen skal avsluttes hver gang stopstrengen gjentas.
Lag en funksjon, sequenceFinder
som tar inn tre strenger: sequence, start og stop. Den skal returnere den lengste strengen mellom start og stopp sekvensene.
...
Skriv en funksjon som returnerer True om parameteren a er delelig med b. Hint: En modulo-operasjon (mod(a,b)) blir brukt i informatikk og i matematikk til å finne resten av et opprinnelig heltall etter en divisjon med et annet tall. Eks.: mod(5,2) = 1
b)
Lag funksjon med en for løkke som itererer fra b = 2,3,...,a-1 og bruker funksjonen fra forrige oppgave for å sjekke om a det er delelig med b. Om de er delelige avslutter du og returnerer 0. Ellers skal du returnere 1.
...
- Du skal nå bare iterere deg gjennom oddetall. Men du må fortsatt sjekke om a er delelig med 2. Hint: i = (2*k+1), da er i oddetall for all k.
- Isteden for å gå helt til i = a-1, skal du nå avslutte når
i > round(sqrt(
a
)+0.5)
d)
Det skal lages en ny primtallsfunksjon. Funksjonen begynner med en listen [2]. Den skal deretter iterere seg over oddetall fra 3 til N. Dersom tallet ikke er delelig med noen av tallene i listen skal det legges til listen.
...