Vad är skillnaden mellan Runtime Error och logiskt fel

De huvudskillnad mellan runtime error och logiskt fel är det ett runtime-fel är ett fel som uppstår på grund av en olaglig operation i programmet medan ett logiskt fel är ett fel som uppstår på grund av ett fel i programmets algoritm.

Runtime fel och logiskt fel är två typer av fel. Ett fel är ett oväntat resultat av ett program. Fel kan påverka korrekt utförande av programmet. Därför är det viktigt att fixa fel. Bortsett från dessa två feltyper finns det en annan feltyp som heter syntaxfel, som uppstår på grund av fel i programsyntaxen.

Viktiga områden som omfattas

1. Vad är ett Runtime Error
     - Definition, Orsak, Detektion, Output
2. Vad är ett logiskt fel
     - Definition, Orsak, Detektion, Utmatning
3. Vad är skillnaden mellan Runtime Error och logiskt fel
     - Jämförelse av viktiga skillnader

Nyckelbegrepp

Logiskt fel, Runtime Error

Vad är ett Runtime Error

Ett runtime-fel är ett fel som uppstår vid körning. Med andra ord upptäcker datorn dessa fel när programmet körs. Det kommer att orsaka att programmet stannar eller kraschar. Det kommer att visa ett diagnostiskt meddelande på skärmen.

Vidare uppstår ett runtime-fel på grund av en olaglig operation i programmet. Om du till exempel delar ett tal med noll kommer det att uppstå ett fel vid körning. Dessutom är åtkomst till en minnesplats som inte är tillgänglig ett runtime-fel.

Vad är ett logiskt fel

En algoritm är en följd av steg att följa när du skriver ett program. Logiska fel uppstår på grund av ett problem i algoritmen. Dessa fel kommer inte att orsaka att programmet avslutar körningen. I stället kommer det att ge en felaktig utgång. Programmeraren måste läsa och kontrollera varje uttalande för att identifiera ett logiskt fel. Därför är det en svår uppgift. Om programmeraren exempelvis använder subtraktion (-) istället för summering (+), kommer det att ge en felaktig utgång. Denna typ av fel är ett logiskt fel.

Skillnad mellan Runtime Error och Logical Error

Definition

Ett runtime-fel är ett fel som uppstår under körning av ett datorprogram medan ett logiskt fel är ett fel i ett program som gör att det fungerar felaktigt men inte att avslutas onormalt. Detta är den största skillnaden mellan runtime error och logiskt fel.

Orsak

Om det beskrivs ovanstående uppträder runtime-felet på grund av en olaglig operation i programmet medan det logiska felet uppstår på grund av ett problem i algoritmen.

Upptäckt

Dessutom är en annan skillnad mellan runtimefel och logiskt fel att datorerna upptäcker runtimefel vid tidpunkten för att köra programmet. Å andra sidan måste programmeraren kontrollera varje uttalande i programmet för att bestämma det logiska felet.

Produktion

Ytterligare skillnad mellan runtimefel och logiskt fel är att runtimefel gör att programmet slutar att utföras eller att krascha. De logiska felen orsakar dock inte att programmet stoppar exekveringen, men det kommer att ge en felaktig utgång. 

exempel

Runtime-fel kan uppstå på grund av orsaker som att dividera ett tal med noll eller på grund av att du har tillgång till en minnesplats som inte är tillgänglig. Däremot kan logiska fel uppstå på grund av felaktig användning av operatörer och en olämplig instruktionsföljd. Detta är en annan skillnad mellan runtime error och logiskt fel. 

Slutsats

Huvudskillnaden mellan runtime-fel och logiskt fel är att ett runtime-fel är ett fel som uppstår på grund av en olaglig operation i programmet medan ett logiskt fel är ett fel som uppstår på grund av ett fel i programmets algoritm.

Referens:

1. PGC-föreläsningar: Programmeringsfel och -typer, Syntaxfel, Runtime Error, Logical Error, Online Learners, 8 Jan. 2017, Tillgänglig här.

Image Courtesy:

1. "Stio iks" Av Rehoerigjoigjrtioj - Egent arbete (CC BY-SA 3.0) via Wikimedia Commons