KTurtle/C3/Common-Errors-in-KTurtle/English

From Script | Spoken-Tutorial
Revision as of 17:56, 10 January 2013 by Madhurig (Talk | contribs)

Jump to: navigation, search
Visual Cue Narration
Slide Number 1 Hello everybody.

Welcome to this tutorial on Common Errors in KTurtle.

Slide Number 2

Learning Objectives

In this tutorial, we will learn about
  • Syntax errors and
  • Runtime errors
Slide Number 3

System Requirement

To record this tutorial I am using,

Ubuntu Linux OS v. 12.04. KTurtle v. 0.8.1 beta.

Slide Number 4

Pre-requisites

We assume that you have basic working knowledge of KTurtle

If not, for relevant tutorials, please visit our website. http://spoken-tutorial.org

First I will explain about "Types of errors".
Slide Number 5

Syntax Errors

A syntax error is a violation of grammatical rules, of a programming language.

Compilation fails when a program has syntax errors.

Syntax errors are easy to find and fix.

For Example:

  • Unmatched parentheses, square brackets and curly braces.
  • Use of variable that has not been declared.
  • Missing quotes in strings.
Switch to KTurtle Application

Dash home >>Search bar appears>> In the Search bar type KTurtle Click on the KTurtle icon.

Let's open a new KTurtle Application.

Click on Dash home. The Search bar appears.

In the Search bar, type KTurtle.

Click on the KTurtle icon.

Let's begin the tutorial with some types of syntax errors.
I already have a program in a text editor.
reset

$a=ask "enter any number and click Ok"

$r = ask "enter any number and click ok"

$n = ask "enter any number and click ok"

$T = $a*($r^$n)*($r^-1)

print $T

Let copy the program into Kturtle Editor.

Please pause the tutorial and type the program into KTurtle editor


Resume the tutorial after typing the program.

Zoom text Let me zoom into the program text.

It may possibly be a little blurred.

To explain error in the program, I will delete part of the code.
Highlight

$a=ask "enter any number and click Ok"

Here, I will delete the line $a=ask "enter any number and click Ok"
Run the program Let's Click on Run button to run the program

Complier shows the following error,

The variable "$a" was used without first being assigned to a value.

Replace the deleted line I will replace the deleted line $a=ask "enter any number and click Ok"
Run the program Let's run again

press F5 key to run the program

We see that the program runs without errors.

Next let's look at another type of error.
I already have a program in a text editor.
reset

$degree=ask "enter any angle value and click OK"

$radian=(pi/180)*$degree

go 50,50

print "Value in radians is"+ " " +$radian

spritehide

Let me copy the program into Kturtle Editor

Please pause the tutorial and type the program into KTurtle editor


Resume the tutorial after typing the program.

Zoom text Let me zoom into the program text.

It may possibly be a little blurred.

Highlight $ Let's delete $ signs in the program.

Run the program

Let's Click on Run button to run the program.

Complier shows the following error,

you cannot put “=” here

Replace $ signs Let's replace the $ signs and run again.

Program runs properly

Highlight "Value in radians is" Let's remove one of the quotes of the string.
Run the program Let's click on Run button to run the program

Complier shows the following error,

text string was not properly closed, expected a double quote “ ” to close the string.

Replace the quotes Let's replace the quotes and run again.

press F5 key run the program.

program runs without errors.

Slide Number 6

Runtime errors

Run-time error occurs during the execution of a program.

It may crash the program when you run it.

Runtime errors are commonly due to wrong input from the user.

Compiler cannnot find these errors.

For example:
  • Trying to multiply or divide by a variable that contains no value.
  • Run a loop without a condition or increment.
Next we will look at errors related to print command
I already have a program in a text editor.
reset

$C= ask "enter any number in celsius scale and click OK"

message "$F is Fahrenheit"

$F=(9/5*$C)+32

go 40,40

print "Value in Fahrenheit =" +" "+ $F+"F"

Let me copy the program into Kturtle Editor

Please pause the tutorial and type the program into KTurtle editor


Resume the tutorial after typing the program.

Zoom text Let me zoom into the program text.

It may possibly be a little blurred.

Highlight "Value in Kelvin ="+ $K + "K" and delete Let's delete line after the keyword print "Value in Kelvin ="+ $K + "K"
Run the program Let's click on Run button to run the program.

Complier does not shows any error.

Here we get an error as the program runs.

The print command was called with 0 but it needs 1 parameter.

It is a runtime error.

Replace the deleted line Let's replace the deleted line and Run again

program runs without runtime errors.

Next let's look at run time errors in loops.
I already have a program in a text editor.
#program to find multiples of 2

reset

$x=0

message"In while loop, code inside the loop repeats till boolean evaluates false"

while $x<20 {

$x=$x+2

$x=$x*1

fontsize 15

forward 20

print $x }

Let copy the program into Kturtle Editor

Please pause the tutorial and type the program into KTurtle editor


Resume the tutorial after typing the program.

Zoom text Let me zoom into the program text.

It may possibly be a little blurred.

Highlight $x=$x+2 and $x=$x*1 Let's delete the lines $x=$x+2 and $x=$x*1
Run the program Let's click on the Run button to run the program.

Complier does not show any error.

We get a runtime error.

Loop become an infinite loop of zeros.

Abort the process I will click on Abort button to abort the process.
Undo the deleted line Let's undo the deleted line and Run again

program runs properly as expected.

Let's now try another example for runtime error.
I already have a program in a text editor.
reset

$x=8

$r = 1

for $i = 1 to $x {

$r = $r * $i

forward 20

print $r }

Let copy the program into KTurtle Editor.

Please pause the tutorial and type the program into KTurtle editor


Resume the tutorial after typing the program.

Zoom text Let me zoom into the program text.

It may possibly be a little blurred.

Highlight $r = $r * $i and print $r Let's delete the lines $r = $r * $i and print $r
Run the program Let's click on the Run button to run the program.

Complier does not show any error.

We get a runtime error.

We see that only the Turtle has moved forward.

“for” loop is not executed.

Undo the deleted line Let's undo the deleted lines and Run again.

Program runs properly as expected.

With this we come to the end of this tutorial.

let us summarise.

Slide Number 9

Summary

In this tutorial we have learnt, errors such as
  • Use of variable that has not been declared.
  • Missing quotes in strings.
  • Errors related to print command
  • Runtime errors
Slide Number 10

Assignment

As an assignment I would like you to find errors in the given programs-
Assignment 1 reset

$x=3

$y=3

if $x==$y

print"they are equal"

else {

print "they are not equal"}

Assignment 2 program to find the nth term and sum of n terms in GP

reset

$x=ask "enter value for x and click Ok"

$y = ask "enter value for y and click Ok"

$g =sqrt ($x*$y)

print "Geometric mean is ="+

Assignment 3 reset

learn sum $x {

{$r=0

for $i= 1 to $x{

return $r} } print

Slide number 11

Acknowledgement

Watch the video available at

http://spoken-tutorial.org/What is a Spoken Tutorial It summarises the Spoken Tutorial project If you do not have good bandwidth, you can download and watch it

Slide Number 12

The Spoken Tutorial Project Team :

Conducts workshops using spoken tutorials Gives certificates to those who pass an online test For more details, please write to contact@spoken-tutorial.org

Slide number 13 Spoken Tutorial Project is a part of the Talk to a Teacher project

It is supported by the National Mission on Education through ICT, MHRD, Government of India More information on this Mission is available at http://spoken-tutorial.org/NMEICT-Intro ]

This is Madhuri Ganpathi from IIT Bombay Thank you for joining

Contributors and Content Editors

Arya Ratish, Madhurig