4 svar
401 visningar
Sara.s0 behöver inte mer hjälp
Sara.s0 50
Postad: 13 nov 2022 18:00

Olika typer av fel

Hej.

Jag läser kursen programmering 1 och vi ska studera olika typer av fel som kan uppstå. 

Det finns körtidsfel, semantiska fel, lexikaliska fel och syntaxfel. 

Min fråga är om körtidsfel och semantiska fel är samma sak? 

Laguna Online 30440
Postad: 13 nov 2022 18:04

Studerar ni något särskilt prorgammeringsspråk?

Sara.s0 50
Postad: 13 nov 2022 18:32

ja, Python

Laguna Online 30440
Postad: 13 nov 2022 19:04

Semantiska fel brukar de fel kallas som man träffar på medan man förbereder programmet för exekvering (läser in och kompilerar) och som inte är rent syntaktiska. Jag vet inte om man kan säga att Python har sådana. I andra språk som C och Java kan de förekomma.

Om man refererar till en modul med t.ex. sys.stdin och inte har importerat modulen sys, så blir det fel redan när mn läser in koden, men det som händer då är också en exekvering, så jag vet inte.

Men det finns säkert en annan användbar uppdelning, som motsäger det jag sa.

CurtJ 1200
Postad: 13 nov 2022 21:04

Jag kompletterar lite:

Man brukar skilja på fel som kompilatorn fångar och fel som uppstår när programmet körs. Syntaxfel är fel som kompilatorn har möjlighet att fånga. Ett exempel kan vara att man stavat fel på en variabel.

Med ett semantiskt fel menas att innebörden av koden inte är den avsedda men att koden är korrekt syntaktiskt och därmed kan både kompileras och köras utan att fel uppstår. Ett enkelt semantiskt fel kan vara att man t ex beräknar ett medel värde av två tal som (a1-a2)/2 där värdet man får är korrekt beräknat men inte är det avsedda medelvärdet.

Körtidsfel innebär att koden är syntaktisk korrekt men när man exekverar den så uppkommer ett fel som inte kompilatorn kunnat förutse. Ett exempel kan vara ett program som dividerar två tal och det ena talet (dividenden) tilldelats värdet 0 av någon anledning som inte kompilatorn kunnat förutse och då smäller det. 

Svara
Close