Join Peggy Fisher for an in-depth discussion in this video Recursive functions, part of Programming Foundations: Discrete Mathematics.
- [Voiceover] Recursive functions…are often used when dealing with strings.…Some strings can be various sizes.…This makes the process of working with strings…more efficient.…Let's write an example…of a function that capitalizes…all letters in a string.…To start a function, we type in f-u-n…to let sml know that we're writing a function.…I'm going to call it capitalize.…And this particular function takes in a string.…So I need to let the interpreter know that,…so I'm going to put…double quotes, double quotes.…
So now it knows to expect a string.…This function is going to take that value…and if it's empty, it'll just return a string.…Next, I tell it what to do…if it actually receives…something other than an empty string.…And what I'm going to do…is I'm going to call…the capitalize function again.…This time I'm going to give it the string s…and I'm going to say that that is equal to…the string s-t-r, parenthesis,…and I'm going to use that character dot toUpper method…char.toUpper…and I need to specify which letter…to change to capitals.…
This course relies on an open-source SML (standard machine language) library to demo the concepts behind discrete math. Peggy Fisher shows you how to manipulate sets of data, write proofs and truth tables, analyze data sequences, and visualize data using graph theory. Challenges at the end of every chapter allow you to test your knowledge. By the end of the course, you should be able to make the leap from theory to using discrete math in practice: saving time and resulting in code that's cleaner and easier to maintain in the long run.
- Real-world discrete math
- Objects as sets
- Set notation and operations
- Standard machine language (SML) setup
- Working with data types, strings, and functions in SML
- Analyzing data sequences
- Writing truth tables
- Identifying and evaluating predicates
- Validating arguments
- Writing proofs: subset, conditional, and biconditional proofs
- Visualizing data with graphs
- Advanced discrete math techniques
Skill Level Intermediate
1. Discrete Math Uses
3. Setting Up SML
4. Analyzing Data Sequences
5. Effective Arguments and Defensible Decisions
6. Proofs Made Easy
7. Advanced Discrete Math Topics
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.