.. raw:: html

   <script>ODSA.SETTINGS.MODULE_SECTIONS = ['introduction', 'recursion-programming-exercise:-largest', 'recursion-programming-exercise:-multiply', 'recursion-programming-exercise:-gcd', 'recursion-programming-exercise:-log', 'recursion-programming-exercise:-cummulative-sum', 'recursion-programming-exercise:-add-odd-values', 'recursion-programming-exercise:-sum-of-the-digits', 'recursion-programming-exercise:-count-characters'];</script>

.. _CodeCompletionEx:


.. raw:: html

   <script>ODSA.SETTINGS.DISP_MOD_COMP = true;ODSA.SETTINGS.MODULE_NAME = "CodeCompletionEx";ODSA.SETTINGS.MODULE_LONG_NAME = "Code Completion Practice Exercises";ODSA.SETTINGS.MODULE_CHAPTER = "modules"; ODSA.SETTINGS.BUILD_DATE = "2022-11-29 16:52:11"; ODSA.SETTINGS.BUILD_CMAP = false;JSAV_OPTIONS['lang']='en';JSAV_EXERCISE_OPTIONS['code']='java';</script>


.. |--| unicode:: U+2013   .. en dash
.. |---| unicode:: U+2014  .. em dash, trimming surrounding whitespace
   :trim:


.. This file is part of the OpenDSA eTextbook project. See
.. http://opendsa.org for more details.
.. Copyright (c) 2012-2020 by the OpenDSA Project Contributors, and
.. distributed under an MIT open source license.

.. avmetadata::
   :author: Sally Hamouda and Cliff Shaffer
   :topic: Recursion

Code Completion Practice Exercises
==================================

Introduction
------------

The most important step to learning recursion is doing a lot of
practice.
The rest of this tutorial will take you through the process with a
series of practice exercises that will lead you to master recursion.


Recursion Programming Exercise: Largest
---------------------------------------

.. extrtoolembed:: 'Recursion Programming Exercise: Largest'
   :module: CodeCompletionEx
   :long_name: Recursion Programming Exercise: Largest
   :enable_scrolling: False
   :frame_width: 1000
   :frame_height: 900
   :learning_tool: code-workout
   :workout_id: 46

Recursion Programming Exercise: Multiply
----------------------------------------

.. extrtoolembed:: 'Recursion Programming Exercise: Multiply'
   :module: CodeCompletionEx
   :long_name: Recursion Programming Exercise: Multiply
   :enable_scrolling: False
   :frame_width: 1000
   :frame_height: 900
   :learning_tool: code-workout
   :workout_id: 47

Recursion Programming Exercise: GCD
-----------------------------------

.. extrtoolembed:: 'Recursion Programming Exercise: GCD'
   :module: CodeCompletionEx
   :long_name: Recursion Programming Exercise: GCD
   :enable_scrolling: False
   :frame_width: 1000
   :frame_height: 900
   :learning_tool: code-workout
   :workout_id: 48

Recursion Programming Exercise: log
-----------------------------------

.. extrtoolembed:: 'Recursion Programming Exercise: log'
   :module: CodeCompletionEx
   :long_name: Recursion Programming Exercise: log
   :enable_scrolling: False
   :frame_width: 1000
   :frame_height: 900
   :learning_tool: code-workout
   :workout_id: 49

Recursion Programming Exercise: Cummulative Sum
-----------------------------------------------

.. extrtoolembed:: 'Recursion Programming Exercise: Cummulative Sum'
   :module: CodeCompletionEx
   :long_name: Recursion Programming Exercise: Cummulative Sum
   :enable_scrolling: False
   :frame_width: 1000
   :frame_height: 900
   :learning_tool: code-workout
   :workout_id: 51

Recursion Programming Exercise: Add odd values
----------------------------------------------

.. extrtoolembed:: 'Recursion Programming Exercise: Add odd values'
   :module: CodeCompletionEx
   :long_name: Recursion Programming Exercise: Add odd values
   :enable_scrolling: False
   :frame_width: 1000
   :frame_height: 900
   :learning_tool: code-workout
   :workout_id: 52

Recursion Programming Exercise: Sum Of the Digits
-------------------------------------------------

.. extrtoolembed:: 'Recursion Programming Exercise: Sum Of the Digits'
   :module: CodeCompletionEx
   :long_name: Recursion Programming Exercise: Sum Of the Digits
   :enable_scrolling: False
   :frame_width: 1000
   :frame_height: 900
   :learning_tool: code-workout
   :workout_id: 53

Recursion Programming Exercise: Count Characters
------------------------------------------------

.. extrtoolembed:: 'Recursion Programming Exercise: Count Characters'
   :module: CodeCompletionEx
   :long_name: Recursion Programming Exercise: Count Characters
   :enable_scrolling: False
   :frame_width: 1000
   :frame_height: 900
   :learning_tool: code-workout
   :workout_id: 54
