Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

View orjanv's full-sized avatar

Ørjan Hoyd H. Vøllestad orjanv

View GitHub Profile
@orjanv
orjanv / palindromnavn.py
Created April 6, 2024 09:33
Et lite Python program som tar for seg ett og ett navn fra SSB, og sjekker om det gir et palindrom etter omgjøring fra a=1, b=2, c=3, osv.
alfabet = "abcdefghijklmnopqrstuvxyzæøå"
filnavn = "2023-jentenavn.txt"
def is_palindrome(num):
"""Return True if num is a palindrome."""
return str(num) == str(num)[::-1]
def is_prime(num):
"""Return True if num is prime."""
if int(num) < 2:
@orjanv
orjanv / bokstaver_til_tall.py
Last active April 3, 2024 19:46
Et lite python program for å gjøre om ord eller setninger til tall, basert på alfabetiske posisjoner for hver bokstav.
import sys
alfabet = "abcdefghijklmnopqrstuvxyzæøå"
tallrekke = []
try:
setning = sys.argv[1]
except:
setning = input("Skriv noe du vil konvertere til alfabetisk posisjon: ")
setning = setning.lower()
@orjanv
orjanv / find_perfect_numbers_multicpu.py
Created April 1, 2024 18:57
Find perfect numbers using multiprocessing
import multiprocessing
def get_divisors_sum(n):
divisors_sum = 0
for i in range(1, int(n / 2) + 1):
if n % i == 0:
divisors_sum += i
return divisors_sum
def parallel_perfect_numbers(numbers):
@orjanv
orjanv / firkantby.py
Last active February 8, 2024 20:58
Tegne en by med firkanter
# Geometri, hva kan gjøres med bare firkanter? La oss bygge en by
from turtle import *
from random import *
# Litt oppsett av vindu, farger og størrelser
skjerm_bredde = 1700
skjerm_hoyde = 1000
setup(skjerm_bredde, skjerm_hoyde)
tracer(2) # sett til 0 for å tegne umiddelbart, da betyr speed() ingenting
@orjanv
orjanv / easy_123.py
Created January 23, 2024 20:09
Start med et hvilket som helst tall og end opp med 123 ved å kombinere antall partall, antall oddetall og totalt antall siffer.
from time import sleep
def finn_tall(n):
partall = []
oddetall = []
for siffer in n:
if int(siffer) % 2 == 0:
partall.append(int(siffer))
else:
@orjanv
orjanv / kaprekars_rutine.py
Last active January 18, 2024 18:34
Prøv ut Kaprekars rutine
from time import sleep
print("Vi prøver Kaprekar's rutine på vei mot konstanten 6174 og 495\n")
mitt_tall = input("Velg et tre eller firesifret tall, med minst to ulike siffer: ")
desc_a = "".join(sorted(mitt_tall, reverse=True))
asc_a = "".join(sorted(mitt_tall))
steg = 0
siffer = len(mitt_tall)
print(f"\nVi finner størst {desc_a} og minst tall {asc_a} fra sifrene og begynner rutinen...\n")
@orjanv
orjanv / palindrome_primtall_hentekoder.py
Created January 10, 2024 21:16
Kode for å telle femsifrede palindrome hentekoder og sjekke om noen av de er primtall
palindromer = []
palindromprimtall = []
for tall in range(00000,99999+1):
sjekk = f'{tall:05}'
if sjekk == ''.join(list(reversed(sjekk))):
palindromer.append(tall)
if all(int(sjekk) % i for i in range(2, int(sjekk))):
palindromprimtall.append(tall)
@orjanv
orjanv / palindrome_hentekoder.py
Created January 10, 2024 20:45
Kode for å telle femsifrede palindrome hentekoder
palindromer = []
for tall in range(00000,99999+1):
sjekk = f'{tall:05}'
if sjekk == ''.join(list(reversed(sjekk))):
palindromer.append(tall)
print(f'For et femsifret tall, er det {len(palindromer)} palindromer')
@orjanv
orjanv / reise_solsystem.py
Last active December 18, 2023 20:54
En reise ut i solsystemet
'''
Det kan gjøres automatiske oppslag mot JPL for å hente oppdatert informasjon
om avstand til planeter på https://ssd-api.jpl.nasa.gov/doc/horizons.html
'''
# Noen definisjoner først, bruker dictionary
reisemål = {'Månen': 384400, 'Mars': 368240000, 'Jupiter':643522000, 'Saturn':1512051000}
romfartøy = {'Apollo':39900,'Dragon':28000,'Chang':39900}
# Nå skal det velges reisemål
@orjanv
orjanv / date_in_pi.py
Created July 14, 2023 17:56
Find dates in Pi decimals and check if their positions are prime or palindromprime
#!/usr/bin/python
# coding: utf-8
def main():
# Get date from user
birthday = input('Enter birth date on the form DDMMYYYY: ')
print(f'You entered {birthday}, {len(birthday)} digits.\n')
num = len(birthday)
# Read in decimals of Pi