Difference between revisions of "KTurtle/C3/Common-Errors-in-KTurtle/English"

From Script | Spoken-Tutorial
Jump to: navigation, search
 
(36 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
Title of the tutorial:
 +
 +
Author: Madhuri Ganapathi
 +
 +
Key words:  Errors, syntax errors, run time errors, logical errors, compilation, clear command, Video tutorial.
 +
 +
 +
 
{|border =1
 
{|border =1
 
!Visual Cue
 
!Visual Cue
Line 9: Line 17:
 
|-
 
|-
 
||Slide  Number 2
 
||Slide  Number 2
 +
 
'''Learning Objectives'''
 
'''Learning Objectives'''
 
||In this tutorial, we will learn about
 
||In this tutorial, we will learn about
* Syntax errors  and
+
* '''Syntax errors'''  
  
* Runtime errors
+
* '''Runtime errors'''  and
 +
 
 +
* '''Logical errors'''
 
|-
 
|-
 
|| Slide Number 3
 
|| Slide Number 3
Line 19: Line 30:
 
'''System Requirement'''
 
'''System Requirement'''
 
||To record this tutorial I am using,
 
||To record this tutorial I am using,
Ubuntu Linux OS v. 12.04.  
+
 
KTurtle v. 0.8.1 beta.
+
'''Ubuntu''' '''Linux''' OS version 12.04.  
 +
 
 +
'''KTurtle''' version. 0.8.1 beta.
 
|-
 
|-
 
||Slide  Number 4
 
||Slide  Number 4
  
 
'''Pre-requisites'''
 
'''Pre-requisites'''
||We assume that you have basic working knowledge of KTurtle   
+
||We assume that you have basic working knowledge of '''KTurtle'''  
  
 
If not,  
 
If not,  
 +
 
for relevant tutorials, please visit our website.  
 
for relevant tutorials, please visit our website.  
http://spoken-tutorial.org
+
 
 +
'''http://spoken-tutorial.org'''
 +
|-
 +
||Slide Number 5
 +
 
 +
'''Definition of Error'''
 +
||Let's first define,  What is an error ?
 +
 
 +
'''Error''' is a mistake in a program that produces an '''incorrect''' or '''unexpected''' result.
 
|-
 
|-
 
||
 
||
||First I will explain about "Types of errors".
+
||First I will explain about '''"Types of errors".'''
 
|-
 
|-
 
||Slide  Number 5
 
||Slide  Number 5
 +
 
'''Syntax Errors'''
 
'''Syntax Errors'''
  
||A syntax error is a violation of  grammatical rules, of a programming language.
+
||A '''syntax error''' is a '''violation of  grammatical rules''', of a '''programming language'''.
  
Compilation fails when a program has syntax errors.
+
'''Compilation''' fails when a program has '''syntax errors'''.
  
Syntax errors are easy to find and fix.
+
'''Syntax errors''' are easy to find and fix.
  
 
For Example:   
 
For Example:   
  
* Unmatched parentheses, square brackets and curly braces.  
+
* '''Unmatched parentheses''', '''square brackets''' and '''curly braces'''.  
  
* Use of variable that has not been declared.
+
* Use of ''' variable''' that has not been '''declared'''.
  
* Missing quotes in strings.
+
* Missing '''quotes''' in '''strings.'''
 
|-
 
|-
 
||Switch to KTurtle Application
 
||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.
+
Dash  home >>In the Search bar type KTurtle
  
 
Click on the  KTurtle icon.
 
Click on the  KTurtle icon.
 +
||Let's open a new '''KTurtle''' Application.
 +
 +
Click on  '''Dash  home'''. In the Search bar, type '''KTurtle.'''
 +
 +
Click on the  '''KTurtle''' icon.
 
|-
 
|-
 
||
 
||
||Let's begin the tutorial with some types of syntax errors.
+
||Let's begin the tutorial with some types of''' syntax errors'''.
 
|-
 
|-
 
||
 
||
 
||I already have a program in a text editor.  
 
||I already have a program in a text editor.  
 +
|-
 +
||'''Comment code'''
 +
||To explain the '''error''' in the program, I will comment part of the code.
 +
|-
 +
||Highlight
 +
 +
'''$a=ask "enter any number and click Ok"'''
 +
||Here, I will comment the line
 +
 +
'''$a=ask within double quotes "enter any number and click Ok"'''
 +
|-
 +
||Type #
 +
||I will use '''hash(#)''' sign to comment the line.
 
|-
 
|-
 
||'''reset'''  
 
||'''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
+
'''#$a=ask "enter any number and click ok"'''  
  
 +
'''print $a^3''''
 +
 +
'''spritehide'''
 +
||I will copy the program from text editor and paste it into '''Kturtle's''' Editor.
 +
 +
Pause the tutorial here and type the program your into '''KTurtle''' editor
  
 
Resume the tutorial after typing the program.
 
Resume the tutorial after typing the program.
 
|-
 
|-
||Zoom text
+
||'''Run the program'''
||Let me zoom into the program text.
+
||Let's click on '''Run''' button to run the program  
It may possibly be a little blurred.
+
 
 +
'''Complier''' shows the following error,
 +
 
 +
''' variable "$a" was used without first being assigned  to a value.'''
 
|-
 
|-
||
+
||Highlight '''Line number 4'''
||To explain error in the program, I will delete part of the code.
+
||Here the error is in line number 4.
 +
 
 
|-
 
|-
||Highlight
+
||'''Syntax error'''
'''$a=ask "enter any number and click Ok"'''  
+
||This is a '''syntax error'''. It occured, as the variable  'a' was not declared.
||Here, I  will delete the line '''$a=ask "enter any number and click Ok"'''  
+
 
|-
 
|-
||Run the program
+
||Highlight '''$a=ask "enter any number and click Ok"'''  
||Let's Click on Run button to run the program
+
  
Complier shows the following error,
+
'''Remove the comment'''
 
+
||So I will go to line number 2 remove the comment.
'''The variable "$a" was used without first being assigned  to a value.'''
+
 
|-
 
|-
||Replace the deleted line
+
||'''reset'''
||I will replace the deleted line  '''$a=ask "enter any number and click Ok"'''  
+
 
 +
'''$a=ask "enter a number and click ok" '''
 +
 
 +
'''print $a^3 '''
 +
 
 +
'''spritehide'''
 +
|| I will copy the program from text Editor and paste it into''' KTurtle's editor'''.
 
|-
 
|-
||Run the program
+
||'''Run the program'''
||Let's run again
+
||Let's click on '''Run''' button to run the program
  
press '''F5''' key to run the program
+
Enter '''6''' for '''a''' value and click OK
  
We see that the program runs without errors.  
+
Program runs without errors.
 +
|-
 +
||'''clear command'''
 +
||I will clear the current program from '''KTurtle''' editor.
 +
 
 +
Type '''clear''' command and '''Run''' to clean the canvas.
 
|-
 
|-
 
||
 
||
||Next let's look at another type of error.
+
|| let's next look about another error.
 
|-
 
|-
 
||
 
||
 
||I already have a program in a text editor.  
 
||I already have a program in a text editor.  
 +
|-
 +
|| Highlight
 +
 +
'''$radian=(pi/180)*$degree'''
 +
||Here the value of "'''pi'''" is '''predefined''' in KTurtle.
 +
|-
 +
||Highlight $
 +
||Let's delete the "'''$'''" sign in the program.
 
|-
 
|-
 
||'''reset'''  
 
||'''reset'''  
'''$degree=ask "enter any angle value and click OK"'''  
+
 
 +
'''degree=ask "enter an angle value and click OK"'''  
 +
 
 
'''$radian=(pi/180)*$degree'''  
 
'''$radian=(pi/180)*$degree'''  
 +
 
'''go 50,50'''  
 
'''go 50,50'''  
 +
 
'''print  "Value in radians is"+ "  " +$radian'''  
 
'''print  "Value in radians is"+ "  " +$radian'''  
 +
 
'''spritehide'''
 
'''spritehide'''
||Let me copy the program into ''' Kturtle''' Editor
+
||I will copy the program from text editor and paste it into ''' Kturtle's Editor'''  
  
Please pause the tutorial and type the program into '''KTurtle''' editor
+
Pause the tutorial and type the program your into '''KTurtle editor'''  
  
  
 
Resume the tutorial after typing the program.
 
Resume the tutorial after typing the program.
 
|-
 
|-
||Zoom text
+
||'''Run the program'''
||Let me zoom into the program text.
+
||Let's Click on '''Run''' button to run the program.  
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,
+
'''Complier''' shows the following error,
  
 
'''you cannot put “=” here'''
 
'''you cannot put “=” here'''
 
|-
 
|-
||Replace '''$''' signs
+
||Highlight '''Line number 2'''
||Let's replace the '''$''' signs and run again.
+
||This error is in line number 2.  
 
+
Program runs properly
+
 
|-
 
|-
||Highlight '''"Value in radians is"'''
+
||'''Show error'''
||Let's remove one of the quotes of the string.
+
||This is a '''syntax error''' it occured, as there is no '''container  of variable.'''
 
|-
 
|-
||Run the program
+
||'''Replace $ sign'''
||Let's click on  '''Run''' button to run the program
+
||Let's go back to the program replace the $ sign.
Complier shows the following error,
+
|-
 +
||'''reset'''  
  
'''text string was not properly closed, expected a double quote “ ” to close the string.'''
+
'''$degree=ask "enter an angle value and click OK" '''
 +
 
 +
'''$radian=(pi/180)*$degree '''
 +
 
 +
'''go 50,50'''
 +
 
 +
'''print "Value in radians is"+ " " +$radian'''
 +
 
 +
'''spritehide'''
 +
||I will copy the program from text editor and paste it into '''KTurtle's''' Editor
 
|-
 
|-
||Repalce the quotes
+
||'''Run the program'''
||Let's replace the quotes and run again.
+
||let's click on '''Run''' button to run the program.
  
press '''F5''' key run the program.
+
Enter '''45''' for angle value and click '''OK'''
  
program runs without errors.
+
Program runs without errors.
 
|-
 
|-
||Slide Number 6
+
||Highlight '''"enter an angle value and click OK" '''
Runtime errors
+
||Let's remove one of the quotes of the string.  
||Run-time error occurs during the execution of a program.  
+
|-
 +
||'''reset'''
  
It may crash the program when you run it.
+
'''$degree=ask "enter an angle value and click OK'''
  
Runtime errors are commonly due to wrong input from the user.
+
'''$radian=(pi/180)*$degree'''
  
Compiler cannnot find these errors.
+
'''go 50,50'''
  
For example:
+
'''print "Value in radians is"+ " " +$radian'''
* Trying to multiply or divide by a variable that contains no value.
+
  
*  Run a loop without a condition or increment.
+
'''spritehide'''
 +
|| I will Copy the program from text editor and paste it into '''KTurtle's ''' Editor
 
|-
 
|-
||
+
||'''Run the program'''
||Next we will look at errors related to '''print''' command
+
||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.'''
 
|-
 
|-
||
+
||Highlight '''Line number 2'''
||I already have a program in a text editor.  
+
||Here the error is in line number 2.  
 
|-
 
|-
||'''reset'''
+
||'''Replace the quotes'''
 +
|| I will  go to line number 2 and replace the quotes.
 +
|-
 +
||'''reset'''  
  
'''$C= ask "enter any number in celsius scale and click OK"'''
+
'''$degree=ask "enter an angle value and click OK" '''
  
'''message "$F is Fahrenheit"'''
+
'''$radian=(pi/180)*$degree'''  
  
'''$F=(9/5*$C)+32'''
+
'''go 50,50'''  
  
'''go 40,40'''
+
'''print "Value in radians is"+ " " +$radian'''  
  
'''print "Value in Fahrenheit =" +" "+ $F+"F"'''
+
'''spritehide'''  
||Let me copy the program into Kturtle Editor
+
||
 +
I will copy the program from text editor and paste it into''' Kturtle's''' Editor  
 +
|-
 +
||'''Run the program'''
 +
||Click on '''Run''' button to run the program
  
Please pause the tutorial and type the program into '''KTurtle''' editor
+
Enter '''45''' for angle value and click OK.
  
 +
Program runs without errors.
  
Resume the tutorial after typing the program.
+
This way you can find the line at which error has occured, and also correct it.  
 
|-
 
|-
||Zoom text
+
||
Let me zoom into the program text.
+
||Let's now learn about runtime errors.
It may possibly be a little blurred.
+
 
|-
 
|-
||Highlight '''"Value in Kelvin ="+ $K + "K"'''  and delete
+
||Slide Number 6
||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.
+
'''Runtime errors'''
 +
||'''Run-time error''' occurs during the '''execution''' of a program.  
  
Here we get an error as the program runs.  
+
It may '''crash''' the program when you run it.  
  
'''The print command was called with 0 but it needs  1 parameter.'''
+
'''Runtime errors''' are commonly due to wrong input from the user.
  
It is a runtime error.
+
'''Compiler''' cannnot find these '''errors'''.
|-
+
||Replace the deleted line
+
  
Let's replace the deleted line and Run again
+
For example:
 +
* Trying to divide by a '''variable''' that contains no value.
  
program runs without runtime errors.
+
* Run a loop without a '''terminating condition''' or '''increment value'''.
 
|-
 
|-
||
+
||'''“clear” command''''
||Next let's look at run time errors in '''loops.'''
+
||I will clear the current program from the KTurtle editor.
 +
 
 +
Type '''clear''' command and '''Run''' to clean the canvas.
 
|-
 
|-
||
+
||Highlight the program
 
||I already have a program in a text editor.  
 
||I already have a program in a text editor.  
 +
 +
This program '''divides''' two numbers.
 +
 +
'a' is''' dividend''' and 'r' is '''divisor'''.
 
|-
 
|-
||'''#program to find multiples of 2'''  
+
||'''reset'''  
  
'''reset'''  
+
'''$a=ask "enter a number for 'a' and click Ok"''''  
  
'''$x=0'''  
+
'''$r = ask "enter a number for 'r' and click OK"'''  
  
'''message"In while loop, code inside the loop repeats till boolean evaluates false"'''  
+
'''$d=$a/$r'''
  
'''while $x<20 {'''  
+
'''print $d'''
 +
||
 +
I will copy the program from text editor and paste it into '''KTurtle's''' Editor.
  
'''$x=$x+2'''  
+
Pause the tutorial and type the program into your '''KTurtle''' editor
  
'''$x=$x*1'''  
+
Resume the tutorial after typing the program.
 +
|-
 +
||'''Run the program'''  
 +
||Let's click on  '''Run''' button to run the program.
  
'''fontsize 15'''  
+
le'ts enter '''5''' for 'a' and click OK
  
'''forward 20'''  
+
enter '''0''' for 'r' and click OK
  
'''print $x
+
Here we get a ''' runtime error''' ,
}'''  
+
||Let copy the program into '''Kturtle''' Editor
+
  
Please pause the tutorial and type the program into '''KTurtle''' editor
+
'''you tried to divide by zero'''
 +
|-
 +
||Highlight '''Line number 4'''
 +
||This error is in line number 4.
 +
|-
 +
||'''Run time error'''
 +
||This error occurs as we cannot '''divide''' a number with''' zero'''.
 +
|-
 +
||Run the program
 +
||Let's run the program again.
  
 +
Enter '''5''' for number and click OK
  
Resume the tutorial after typing the program.
+
enter '''2''' for 'r' and click OK
  
 +
Program without errors.
 
|-
 
|-
||Zoom text
+
||'''“clear” command'''
||Let me zoom into the program text.  
+
||I will clear the current program from '''KTurtle''' editor.
  
It may possibly be a little blurred.
+
Type '''clear''' command and '''Run''' to clean the canvas.
 
|-
 
|-
||Highlight  '''$x=$x+2''' and '''$x=$x*1'''
+
||
||Let's delete the lines '''$x=$x+2'''  and ''' $x=$x*1'''  
+
||Next we will learn about ''' logical errors'''.
 
|-
 
|-
||Run the program
+
||'''Logical errors'''  
||Let's click on the '''Run''' button to run the program.
+
  
Complier does not show any error.
+
||'''Logical error''' is a mistake in a program's '''source code''' that results in '''incorrect''' or '''unexpected''' behavior.
  
We get a runtime error.
+
For example,
  
Loop become an infinite loop of zeros.
+
'''Assigning''' a value to the wrong variable.
|-
+
||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.
+
'''Multiplying''' two numbers instead of '''adding'''.
|-
+
||
+
||Let's now try another example for runtime error.
+
 
|-
 
|-
 
||
 
||
 
||I already have a program in a text editor.  
 
||I already have a program in a text editor.  
 
|-
 
|-
'''reset'''
+
||'''reset'''  
  
'''$x=8'''
+
'''$x=30
  
'''$r = 1'''
+
'''message"In while loop, code inside the loop repeats till boolean
  
'''for $i = 1 to $x {'''
+
'''evaluates false"
  
'''$r = $r * $i'''
+
'''while $x>20''' {
  
'''forward 20'''
+
'''$x=$x+1'''  
  
'''print $r
+
'''fontsize 15'''  
}'''
+
||Let copy the program into '''KTurtle''' Editor.
+
  
Please pause the tutorial and type the program into '''KTurtle''' editor
+
'''forward 20'''  
  
 +
'''print $x''' }
 +
||I will copy the program from text editor and paste it into '''Kturtle's''' Editor
  
Resume the tutorial after typing the program.
+
Pause the tutorial here and type the program into your '''KTurtle''' editor
 +
 
 +
Resume the tutorial after typing the program.  
 
|-
 
|-
||Zoom text
+
 
||Let me zoom into the program text.  
+
||'''Run the program'''
It may possibly be a little blurred.
+
||Now click on the '''Run''' button to run the program.  
 +
 
 +
A dialog box pops-up, let's click OK.
 +
 
 +
Loop goes into an '''infinite loop'''.  
 
|-
 
|-
Highlight '''$r = $r * $i'''   and  print $r
+
||Highlight '''“ while”  loop condition'''
||Let's delete the lines  ''' $r = $r * $i''and '''print $r'''
+
||We see that '''“while”''' loop prints numbers from 31 and it is still printing.
|-
+
||Run the program
+
||Let's click on the Run button to run the program.
+
  
Complier does not show any error.
+
This is a '''logical error'''.
  
We get a runtime error.
+
In the “while” condition x is greater than 20,
  
We see that only the Turtle has moved forward.
+
but the '''variable''' x is always greater than 20
  
'''“for”''' loop is not executed.
+
So, the loop never '''terminates.'''
 
|-
 
|-
||Undo the deleted line
+
||'''Abort the process'''
||Let's undo the deleted lines and Run again.
+
||I will click on '''Abort''' button to abort the process.
 +
|-
 +
||Change '''$x=$x+1''' to '''$x=$x-1'''
 +
||Let's change $x=$x+1 to $x=$x-1.  
 +
|-
 +
||'''reset'''
  
Program runs properly as expected.
+
'''$x=30'''
 +
 
 +
'''message"In while loop, code inside the loop repeats till boolean
 +
evaluates false" '''
 +
 
 +
'''while $x>20 { '''
 +
 
 +
''''$x=$x-1''''
 +
 
 +
'''fontsize 15'''
 +
 
 +
'''forward 20'''
 +
 
 +
'''print $x } '''
 +
|| I will copy the program from text editor and paste it into '''KTurtle's''' editor.
 +
|-
 +
||'''Run the program'''
 +
||Let's click on '''Run''' button to run the program.
 +
 
 +
A dialog box pop-up let's click OK.
 +
 
 +
Loop '''terminates''' after printing values from''' 29 to 20.'''
 
|-
 
|-
 
||
 
||
||With this we come to the end of this tutorial.
+
||With this we have come to the end of this tutorial.
let us summarise.
+
 
 +
Let us summarise.
 
|-
 
|-
 
||Slide Number 9
 
||Slide Number 9
Summary
 
||In this tutorial we have learnt,  errors such as
 
  
* Use of variable that has not been declared.
+
'''Summary'''
 +
||In this tutorial we have learnt, errors and types of errors such as
 +
 
 +
* Use of '''variable''' that has not been declared.
  
* Missing quotes in strings.
+
* Missing '''quotes''' in strings.
  
* Errors related to print command
+
*''' Runtime errors''' and
  
* Runtime errors
+
* '''Logical errors'''
 
|-
 
|-
 
||Slide Number 10
 
||Slide Number 10
 
'''Assignment'''
 
'''Assignment'''
||As an assignment I would like you to find errors in the given programs-
+
||As an assignment I would like you to find errors in the given programs
 
|-
 
|-
 
||'''Assignment 1'''
 
||'''Assignment 1'''
Line 387: Line 497:
 
||'''Assignment 3'''
 
||'''Assignment 3'''
 
||'''reset'''  
 
||'''reset'''  
 +
 
'''learn sum $x {'''  
 
'''learn sum $x {'''  
 +
 
'''{$r=0'''  
 
'''{$r=0'''  
 +
 
'''for $i= 1 to $x{'''  
 
'''for $i= 1 to $x{'''  
 +
 
'''return $r}'''  
 
'''return $r}'''  
}  
+
 
 +
'''}'''
 +
 
 
'''print'''   
 
'''print'''   
 
|-
 
|-
 
||Slide number 11
 
||Slide number 11
Acknowledgement
+
 
||Watch the video available at  
+
'''Acknowledgement'''
 +
||Watch the video available at this URL
 
http://spoken-tutorial.org/What is a Spoken Tutorial  
 
http://spoken-tutorial.org/What is a Spoken Tutorial  
 
It summarises the Spoken Tutorial project  
 
It summarises the Spoken Tutorial project  
Line 415: Line 532:
  
 
It is supported by the National Mission on Education through ICT, MHRD, Government of India  
 
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 ]
+
More information on this Mission is available at this link
 +
http://spoken-tutorial.org/NMEICT-Intro ]
  
This is Madhuri Ganpathi from IIT Bombay
+
This is Madhuri Ganpathi from IIT Bombay signing off.
 
Thank you  for joining
 
Thank you  for joining
 
|-
 
|-
}
 

Latest revision as of 15:57, 18 December 2013

Title of the tutorial:

Author: Madhuri Ganapathi

Key words: Errors, syntax errors, run time errors, logical errors, compilation, clear command, Video tutorial.


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
  • Runtime errors and
  • Logical errors
Slide Number 3

System Requirement

To record this tutorial I am using,

Ubuntu Linux OS version 12.04.

KTurtle version. 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

Slide Number 5

Definition of Error

Let's first define, What is an error ?

Error is a mistake in a program that produces an incorrect or unexpected result.

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 >>In the Search bar type KTurtle

Click on the KTurtle icon.

Let's open a new KTurtle Application.

Click on Dash home. 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.
Comment code To explain the error in the program, I will comment part of the code.
Highlight

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

Here, I will comment the line

$a=ask within double quotes "enter any number and click Ok"

Type # I will use hash(#) sign to comment the line.
reset

#$a=ask "enter any number and click ok"

print $a^3'

spritehide

I will copy the program from text editor and paste it into Kturtle's Editor.

Pause the tutorial here and type the program your into KTurtle editor

Resume the tutorial after typing the program.

Run the program Let's click on Run button to run the program

Complier shows the following error,

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

Highlight Line number 4 Here the error is in line number 4.
Syntax error This is a syntax error. It occured, as the variable 'a' was not declared.
Highlight $a=ask "enter any number and click Ok"

Remove the comment

So I will go to line number 2 remove the comment.
reset

$a=ask "enter a number and click ok"

print $a^3

spritehide

I will copy the program from text Editor and paste it into KTurtle's editor.
Run the program Let's click on Run button to run the program

Enter 6 for a value and click OK

Program runs without errors.

clear command I will clear the current program from KTurtle editor.

Type clear command and Run to clean the canvas.

let's next look about another error.
I already have a program in a text editor.
Highlight

$radian=(pi/180)*$degree

Here the value of "pi" is predefined in KTurtle.
Highlight $ Let's delete the "$" sign in the program.
reset

degree=ask "enter an angle value and click OK"

$radian=(pi/180)*$degree

go 50,50

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

spritehide

I will copy the program from text editor and paste it into Kturtle's Editor

Pause the tutorial and type the program your into KTurtle editor


Resume the tutorial after typing the program.

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

Complier shows the following error,

you cannot put “=” here

Highlight Line number 2 This error is in line number 2.
Show error This is a syntax error it occured, as there is no container of variable.
Replace $ sign Let's go back to the program replace the $ sign.
reset

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

$radian=(pi/180)*$degree

go 50,50

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

spritehide

I will copy the program from text editor and paste it into KTurtle's Editor
Run the program let's click on Run button to run the program.

Enter 45 for angle value and click OK

Program runs without errors.

Highlight "enter an angle value and click OK" Let's remove one of the quotes of the string.
reset

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

$radian=(pi/180)*$degree

go 50,50

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

spritehide

I will Copy the program from text editor and paste it into KTurtle's Editor
Run the program 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.

Highlight Line number 2 Here the error is in line number 2.
Replace the quotes I will go to line number 2 and replace the quotes.
reset

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

$radian=(pi/180)*$degree

go 50,50

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

spritehide

I will copy the program from text editor and paste it into Kturtle's Editor

Run the program Click on Run button to run the program

Enter 45 for angle value and click OK.

Program runs without errors.

This way you can find the line at which error has occured, and also correct it.

Let's now learn about runtime 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 divide by a variable that contains no value.
  • Run a loop without a terminating condition or increment value.
“clear” command' I will clear the current program from the KTurtle editor.

Type clear command and Run to clean the canvas.

Highlight the program I already have a program in a text editor.

This program divides two numbers.

'a' is dividend and 'r' is divisor.

reset

$a=ask "enter a number for 'a' and click Ok"'

$r = ask "enter a number for 'r' and click OK"

$d=$a/$r

print $d

I will copy the program from text editor and paste it into KTurtle's Editor.

Pause the tutorial and type the program into your KTurtle editor

Resume the tutorial after typing the program.

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

le'ts enter 5 for 'a' and click OK

enter 0 for 'r' and click OK

Here we get a runtime error ,

you tried to divide by zero

Highlight Line number 4 This error is in line number 4.
Run time error This error occurs as we cannot divide a number with zero.
Run the program Let's run the program again.

Enter 5 for number and click OK

enter 2 for 'r' and click OK

Program without errors.

“clear” command I will clear the current program from KTurtle editor.

Type clear command and Run to clean the canvas.

Next we will learn about logical errors.
Logical errors Logical error is a mistake in a program's source code that results in incorrect or unexpected behavior.

For example,

Assigning a value to the wrong variable.

Multiplying two numbers instead of adding.

I already have a program in a text editor.
reset

$x=30

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

evaluates false"

while $x>20 {

$x=$x+1

fontsize 15

forward 20

print $x }

I will copy the program from text editor and paste it into Kturtle's Editor

Pause the tutorial here and type the program into your KTurtle editor

Resume the tutorial after typing the program.

Run the program Now click on the Run button to run the program.

A dialog box pops-up, let's click OK.

Loop goes into an infinite loop.

Highlight “ while” loop condition We see that “while” loop prints numbers from 31 and it is still printing.

This is a logical error.

In the “while” condition x is greater than 20,

but the variable x is always greater than 20

So, the loop never terminates.

Abort the process I will click on Abort button to abort the process.
Change $x=$x+1 to $x=$x-1 Let's change $x=$x+1 to $x=$x-1.
reset

$x=30

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

while $x>20 {

'$x=$x-1'

fontsize 15

forward 20

print $x }

I will copy the program from text editor and paste it into KTurtle's editor.
Run the program Let's click on Run button to run the program.

A dialog box pop-up let's click OK.

Loop terminates after printing values from 29 to 20.

With this we have come to the end of this tutorial.

Let us summarise.

Slide Number 9

Summary

In this tutorial we have learnt, errors and types of errors such as
  • Use of variable that has not been declared.
  • Missing quotes in strings.
  • Runtime errors and
  • Logical 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 this URL

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 this link http://spoken-tutorial.org/NMEICT-Intro ]

This is Madhuri Ganpathi from IIT Bombay signing off. Thank you for joining

Contributors and Content Editors

Arya Ratish, Madhurig