20TD02U Kabelkrøll - itnett/FTD02H-N GitHub Wiki
https://ndla.no/article-iframe/nb/article/23381
Skurdal, B. (2020, 26. april). Kabelkrøll. NDLA. https://ndla.no/article/23381 Trommel med kabel, av Skurdal, B. (https://ndla.no/image/49245). CC BY-SA 4.0.
Oppgave 2.5.30: Kabel på Trommelen
Vurdering av kabelmengde
For å finne ut om det er nok kabel på trommelen, må vi beregne lengden på kabelen basert på informasjonen om antall kveiler og diameterne til kveilene.
- Antall kveiler: 33
- Ytre diameter: 22 cm
- Indre diameter: 5 cm
For å forenkle utregningen kan vi anta at kveilene er jevnt fordelt fra den indre til den ytre diameteren. Vi bruker formelen for omkretsen av en sirkel for å finne lengden på kabelen.
Beregning
Diameteren til kveilene varierer fra 5 cm til 22 cm, så vi kan finne omkretsen for hver kveil ved å bruke middelverdien av de indre og ytre diameterene. Deretter ganger vi med antall kveiler for å få total lengde.
import math
# Antall kveiler
num_kveiler = 33
# Indre og ytre diameter
d_inner = 5 # cm
d_outer = 22 # cm
# Beregn middelverdien av diameterene
d_avg = (d_inner + d_outer) / 2 # cm
# Beregn omkretsen til en sirkel med gjennomsnittlig diameter
omkrets = math.pi * d_avg # cm
# Total lengde av kabelen
total_length_cm = omkrets * num_kveiler # cm
total_length_m = total_length_cm / 100 # m
print(f"Total lengde av kabelen på trommelen er ca. {total_length_m:.2f} meter.")
Oppgave 2.5.31: Festing av Lampeledning
a) Ideell avstand mellom stiftene
For å finne den ideelle avstanden mellom stiftene når veggen er 3 meter lang, følger vi algoritmen som beskrevet.
def calculate_stift_distance(length, end_distance, max_distance):
# Trekke fra avstanden fra endene
effective_length = length - 2 * end_distance # cm
# Finne antall lengder på maksavstanden
num_intervals = effective_length // max_distance
# Finne den ideelle avstanden
ideal_distance = effective_length / (num_intervals + 1)
return ideal_distance
length = 300 # cm
end_distance = 5 # cm
max_distance = 20 # cm
ideal_distance = calculate_stift_distance(length, end_distance, max_distance)
print(f"Den ideelle avstanden mellom stiftene er ca. {ideal_distance:.2f} cm.")
b) Antall stifter langs veggen
Vi beregner antall stifter basert på antall lengder vi fant i del a.
def calculate_num_stifter(length, end_distance, max_distance):
# Trekke fra avstanden fra endene
effective_length = length - 2 * end_distance # cm
# Finne antall lengder på maksavstanden
num_intervals = effective_length // max_distance
# Totalt antall stifter
num_stifter = num_intervals + 2
return num_stifter
num_stifter = calculate_num_stifter(length, end_distance, max_distance)
print(f"Antall stifter langs veggen er {num_stifter}.")
c) Algoritme for program
- Skriv til skjermen hva programmet gjør.
- Ta imot lengde, avstand til første stift og maksimal avstand mellom stiftene fra brukeren.
- Beregn effektiv lengde og antall intervaller.
- Beregn ideell avstand mellom stiftene.
- Beregn totalt antall stifter.
- Skriv resultatene til skjermen.
d) Koding
def calculate_stift_distance_and_count(length, end_distance, max_distance):
# Trekke fra avstanden fra endene
effective_length = length - 2 * end_distance # cm
# Finne antall lengder på maksavstanden
num_intervals = effective_length // max_distance
# Finne den ideelle avstanden
ideal_distance = effective_length / (num_intervals + 1)
# Totalt antall stifter
num_stifter = num_intervals + 2
return ideal_distance, num_stifter
def main():
print("Dette programmet regner ut den ideelle avstanden mellom stiftene og antallet stifter ut fra en gitt lengde.")
length = float(input("Skriv inn lengden på veggen (i cm): "))
end_distance = float(input("Skriv inn avstanden fra endene til første stift (i cm): "))
max_distance = float(input("Skriv inn maksimal avstand mellom stiftene (i cm): "))
ideal_distance, num_stifter = calculate_stift_distance_and_count(length, end_distance, max_distance)
print(f"Den ideelle avstanden mellom stiftene er ca. {ideal_distance:.2f} cm.")
print(f"Antall stifter langs veggen er {num_stifter}.")
main()
e) Algoritme for justering
- Skriv til skjermen hva programmet gjør.
- Ta imot lengde, avstand til første stift, maksimal avstand mellom stiftene og lengden fra brukeren.
- Beregn effektiv lengde og antall intervaller.
- Beregn ideell avstand mellom stiftene.
- Beregn totalt antall stifter.
- Skriv resultatene til skjermen.
f) Koding
def calculate_stift_distance_and_count_adjustable(length, end_distance, max_distance):
# Trekke fra avstanden fra endene
effective_length = length - 2 * end_distance # cm
# Finne antall lengder på maksavstanden
num_intervals = effective_length // max_distance
# Finne den ideelle avstanden
ideal_distance = effective_length / (num_intervals + 1)
# Totalt antall stifter
num_stifter = num_intervals + 2
return ideal_distance, num_stifter
def main():
print("Dette programmet regner ut den ideelle avstanden mellom stiftene og antallet stifter ut fra en gitt lengde.")
length = float(input("Skriv inn lengden på veggen (i cm): "))
end_distance = float(input("Skriv inn avstanden fra endene til første stift (i cm): "))
max_distance = float(input("Skriv inn maksimal avstand mellom stiftene (i cm): "))
ideal_distance, num_stifter = calculate_stift_distance_and_count_adjustable(length, end_distance, max_distance)
print(f"Den ideelle avstanden mellom stiftene er ca. {ideal_distance:.2f} cm.")
print(f"Antall stifter langs veggen er {num_stifter}.")
main()
Disse programmene dekker kompetansemålene for matematikk ved å bruke algoritmisk tenkning og problemløsing, samt praktiske anvendelser av matematikk for å løse konkrete problemer. La meg vite om du trenger ytterligere tilpasninger eller flere ressurser!
For å oppfylle kompetansemålene i matematikk, spesielt knyttet til å tolke og bruke formler i dagligliv og yrkesliv, vil vi lage et program som kan hjelpe med å løse praktiske problemer. I denne sammenhengen skal vi se på oppgaver relatert til å beregne kabelmengde og ideell avstand mellom stifter.
Kabelkrøll
Oppgave 2.5.30: Vurdering av kabelmengde
Vi skal beregne lengden på kabelen som er igjen på trommelen. Informasjonen vi har er at det er 33 kveiler med kabel, og diameterne til kveilene varierer fra 5 cm til 22 cm.
Beregning
Vi bruker middelverdien av diameterne for å beregne omkretsen og dermed lengden på kabelen.
import math
def beregn_kabelmengde(num_kveiler, d_inner, d_outer):
# Beregn middelverdien av diameterne
d_avg = (d_inner + d_outer) / 2 # cm
# Beregn omkretsen til en sirkel med gjennomsnittlig diameter
omkrets = math.pi * d_avg # cm
# Total lengde av kabelen
total_length_cm = omkrets * num_kveiler # cm
total_length_m = total_length_cm / 100 # m
return total_length_m
num_kveiler = 33
d_inner = 5 # cm
d_outer = 22 # cm
total_length_m = beregn_kabelmengde(num_kveiler, d_inner, d_outer)
print(f"Total lengde av kabelen på trommelen er ca. {total_length_m:.2f} meter.")
Oppgave 2.5.31: Festing av Lampeledning
a) Ideell avstand mellom stiftene
Vi skal finne den ideelle avstanden mellom stiftene når veggen er 3 meter lang, med stifter plassert 5 cm fra hver ende og maks 20 cm mellom stiftene.
def calculate_stift_distance(length, end_distance, max_distance):
# Trekke fra avstanden fra endene
effective_length = length - 2 * end_distance # cm
# Finne antall lengder på maksavstanden
num_intervals = effective_length // max_distance
# Finne den ideelle avstanden
ideal_distance = effective_length / (num_intervals + 1)
return ideal_distance
length = 300 # cm
end_distance = 5 # cm
max_distance = 20 # cm
ideal_distance = calculate_stift_distance(length, end_distance, max_distance)
print(f"Den ideelle avstanden mellom stiftene er ca. {ideal_distance:.2f} cm.")
b) Antall stifter langs veggen
Beregner antall stifter basert på antall lengder vi fant i del a.
def calculate_num_stifter(length, end_distance, max_distance):
# Trekke fra avstanden fra endene
effective_length = length - 2 * end_distance # cm
# Finne antall lengder på maksavstanden
num_intervals = effective_length // max_distance
# Totalt antall stifter
num_stifter = num_intervals + 2
return num_stifter
num_stifter = calculate_num_stifter(length, end_distance, max_distance)
print(f"Antall stifter langs veggen er {num_stifter}.")
c) Algoritme for program
- Skriv til skjermen hva programmet gjør.
- Ta imot lengde, avstand til første stift og maksimal avstand mellom stiftene fra brukeren.
- Beregn effektiv lengde og antall intervaller.
- Beregn ideell avstand mellom stiftene.
- Beregn totalt antall stifter.
- Skriv resultatene til skjermen.
d) Koding
def calculate_stift_distance_and_count(length, end_distance, max_distance):
# Trekke fra avstanden fra endene
effective_length = length - 2 * end_distance # cm
# Finne antall lengder på maksavstanden
num_intervals = effective_length // max_distance
# Finne den ideelle avstanden
ideal_distance = effective_length / (num_intervals + 1)
# Totalt antall stifter
num_stifter = num_intervals + 2
return ideal_distance, num_stifter
def main():
print("Dette programmet regner ut den ideelle avstanden mellom stiftene og antallet stifter ut fra en gitt lengde.")
length = float(input("Skriv inn lengden på veggen (i cm): "))
end_distance = float(input("Skriv inn avstanden fra endene til første stift (i cm): "))
max_distance = float(input("Skriv inn maksimal avstand mellom stiftene (i cm): "))
ideal_distance, num_stifter = calculate_stift_distance_and_count(length, end_distance, max_distance)
print(f"Den ideelle avstanden mellom stiftene er ca. {ideal_distance:.2f} cm.")
print(f"Antall stifter langs veggen er {num_stifter}.")
main()
e) Justerbar algoritme
Brukeren kan nå skrive inn ønsket avstand mellom stiftene.
def calculate_stift_distance_and_count_adjustable(length, end_distance, max_distance):
# Trekke fra avstanden fra endene
effective_length = length - 2 * end_distance # cm
# Finne antall lengder på maksavstanden
num_intervals = effective_length // max_distance
# Finne den ideelle avstanden
ideal_distance = effective_length / (num_intervals + 1)
# Totalt antall stifter
num_stifter = num_intervals + 2
return ideal_distance, num_stifter
def main():
print("Dette programmet regner ut den ideelle avstanden mellom stiftene og antallet stifter ut fra en gitt lengde.")
length = float(input("Skriv inn lengden på veggen (i cm): "))
end_distance = float(input("Skriv inn avstanden fra endene til første stift (i cm): "))
max_distance = float(input("Skriv inn maksimal avstand mellom stiftene (i cm): "))
ideal_distance, num_stifter = calculate_stift_distance_and_count_adjustable(length, end_distance, max_distance)
print(f"Den ideelle avstanden mellom stiftene er ca. {ideal_distance:.2f} cm.")
print(f"Antall stifter langs veggen er {num_stifter}.")
main()
Samlet Program
Dette programmet dekker både beregning av kabelmengde og ideell avstand mellom stiftene, samt tilpassing av brukerinput.
import math
def beregn_kabelmengde(num_kveiler, d_inner, d_outer):
d_avg = (d_inner + d_outer) / 2 # cm
omkrets = math.pi * d_avg # cm
total_length_cm = omkrets * num_kveiler # cm
total_length_m = total_length_cm / 100 # m
return total_length_m
def calculate_stift_distance_and_count_adjustable(length, end_distance, max_distance):
effective_length = length - 2 * end_distance # cm
num_intervals = effective_length // max_distance
ideal_distance = effective_length / (num_intervals + 1)
num_stifter = num_intervals + 2
return ideal_distance, num_stifter
def main():
print("Velkommen til det samlede programmet!")
print("Velg en av følgende funksjoner:")
print("1. Beregn kabelmengde")
print("2. Beregn avstand og antall stifter")
valg = input("Skriv inn nummeret på funksjonen du vil bruke: ")
if valg == '1':
num_kveiler = int(input("Skriv inn antall kveiler på trommelen: "))
d_inner = float(input("Skriv inn den indre diameteren (i cm): "))
d_outer = float(input("Skriv inn den ytre diameteren (i cm): "))
total_length_m = beregn_kabelmengde(num_kveiler, d_inner, d_outer)
print(f"Total lengde av kabelen på trommelen er ca. {total_length_m:.2f} meter.")
elif valg == '2':
length = float(input("Skriv inn lengden på veggen (i cm): "))
end_distance = float(input("Skriv inn avstanden fra endene til første stift (i cm): "))
max_distance = float(input("Skriv inn maksimal avstand mellom stiftene (i cm): "))
ideal_distance, num_stifter = calculate_stift_distance_and_count_adjustable(length, end_distance, max_distance)
print(f"Den ideelle avstanden mellom stiftene er ca. {ideal_distance:.2f} cm.")
print(f"Antall stifter langs veggen er {num_stifter}.")
else:
print("Ugyldig valg
. Vennligst prøv igjen.")
main()
Dette programmet hjelper elevene med å tolke og bruke formler som gjelder dagligliv og yrkesliv, samt anvende algoritmisk tenkning og problemløsing. La meg vite om du trenger ytterligere tilpasninger eller flere ressurser!