Vinnaren i pepparkakshustävlingen!
  • 1
  • 2
2022-08-10, 07:44
  #13
Medlem
Schmisss avatar
Följande fungerar:

Kod:
txt = input("Din text här:")
x = txt.split()
print(f"Du skrev {len(x)} ord")
print(f"Det första ordet var {x[0]}")
print(f"Det sista ordet var {x[-1]}")
Citera
2022-08-10, 07:54
  #14
Medlem
SvenHelsings avatar
Citat:
Ursprungligen postat av Methos
Det står explicit i uppgiften att programmet skall acceptera minst två ord med ett mellanslag. Då kan inte programmet acceptera ett ord. Alltså behöver du ha en kontroll där.
Om TS hade lämnat in en lösning med en sådan kontroll hade läraren garanterat sagt något i stil med "Jaha, oj. Det var inte så jag menade. Men stjärna i kanten." Det är helt uppenbart givet vilken nivå uppgiften är på.
Citera
2022-08-10, 09:49
  #15
Medlem
Citat:
Ursprungligen postat av Schmiss
Följande fungerar:

Kod:
txt = input("Din text här:")
x = txt.split()
print(f"Du skrev {len(x)} ord")
print(f"Det första ordet var {x[0]}")
print(f"Det sista ordet var {x[-1]}")

Den är exakt samma som ovan och den får indexError. Varför får du nog fundera på.

Jag kan acceptera:

Kod:
txt = input("Din text här:")
x = txt.split()
if len(x) >= 2:
      print(f"Du skrev {len(x)} ord")
      print(f"Det första ordet var {x[0]}")
      print(f"Det sista ordet var {x[-1]}")
else:
     print("För få ord! Skriv några ord till.")
__________________
Senast redigerad av Methos 2022-08-10 kl. 10:14.
Citera
2022-08-10, 09:50
  #16
Medlem
Citat:
Ursprungligen postat av SvenHelsing
Om TS hade lämnat in en lösning med en sådan kontroll hade läraren garanterat sagt något i stil med "Jaha, oj. Det var inte så jag menade. Men stjärna i kanten." Det är helt uppenbart givet vilken nivå uppgiften är på.

Det är bara en if-sats, inte markvärdigt alls.
Citera
2022-08-10, 09:55
  #17
Medlem
SvenHelsings avatar
Citat:
Ursprungligen postat av Methos
Det är bara en if-sats, inte markvärdigt alls.
Jag vet att det inte är märkvärdigt. Iaf inte för någon som är van att koda. Men för en nybörjare som TS uppenbarligen är så brukar man förbise saker som datavalidering och felhantering.

Det är helt uppenbart att det inte är ett krav för att lösa uppgiften.
Citera
2022-08-10, 10:10
  #18
Medlem
Citat:
Ursprungligen postat av SvenHelsing
Jag vet att det inte är märkvärdigt. Iaf inte för någon som är van att koda. Men för en nybörjare som TS uppenbarligen är så brukar man förbise saker som datavalidering och felhantering.

Det är helt uppenbart att det inte är ett krav för att lösa uppgiften.

Om det inte vore ett krav skulle uppgiften inte kräva minst två ord. Uppgiften skulle inte försätta studenten i att få nån typ av Error, vilket du får nu. Jag som didaktiker skulle inte heller tvinga eleven till att använda idexering eller slice i Python. Utan uppgfiten skulle då vara så enkel som att överhuvudtagen skriva ut det jag skriver in, eller med hjälp av for-loop göra saker.

Indexering är något som Pythonutvecklarna försöker komma ifrån.
Citera
2022-08-10, 10:15
  #19
Medlem
SvenHelsings avatar
Citat:
Ursprungligen postat av Methos
Om det inte vore ett krav skulle uppgiften inte kräva minst två ord. Uppgiften skulle inte försätta studenten i att få nån typ av Error, vilket du får nu.
Det är mycket vanligt i introkurser att man har preconditions på indata där man accepterar att det blir error ifall dessa preconditions inte uppfylls.
Citera
2022-08-10, 10:17
  #20
Medlem
Citat:
Ursprungligen postat av SvenHelsing
Det är mycket vanligt i introkurser att man har preconditions på indata där man accepterar att det blir error ifall dessa preconditions inte uppfylls.

Det är också vanligt i introkurser att man lär studenterna programmera Python som om det vore C#. Det betyder inte att det är en rätt didaktisk metod.
Citera
2022-08-10, 10:20
  #21
Medlem
SvenHelsings avatar
Citat:
Ursprungligen postat av Methos
Det är också vanligt i introkurser att man lär studenterna programmera Python som om det vore C#. Det betyder inte att det är en rätt didaktisk metod.
Oavsett så är det helt uppenbart att TS lärare inte förväntar sig indatavalidering. Vad du tycker om det skiter jag ärligt talat rätt duktigt i.
Citera
  • 1
  • 2

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback