
Let't take a look what kind of challenges are waiting for us!
Introduce a Python program that solves quadratic equations using the general form a x^2 + b x + c = 0, showing how coefficients determine two, one, or no roots.
Review the general form of the quadratic equation ax^2 + bx + c = 0 and identify its coefficients, then examine what happens if a equals zero.
Introduce the discriminant and explain how to calculate it from a quadratic's coefficients to determine whether the equation has two roots, one root, or no roots.
Explore how to compute the discriminant for quadratic equations using coefficients a, b, and c, and determine whether solutions are two, one, or no roots.
Learn how to calculate quadratic roots using the discriminant, covering two roots, one root, or no real roots, with formulas x = (-b ± sqrt(D))/(2a).
Calculate the roots of a quadratic using the discriminant; compute d = b^2 − 4ac = 4, then apply (-b ± sqrt(d)) / (2a) to obtain two roots.
Describe how a Python app obtains coefficients a, b, and c from the user to solve a quadratic equation, then outputs the roots or informs the user when none exist.
Learn how to design a user-facing start message that greets the user and accepts input values, outputting initial results and guiding you to implement coefficient-based functionality.
Learn how to cast variables from string to float to perform calculations, ensuring the correct types for arithmetic operations in Python.
Explore test cases in Python by computing the discriminant and handling cases d > 0, d = 0, and d < 0, then print the outputs.
Explore building an algorithm that welcomes the user with print, collects inputs via raw_input, casts types, computes the discriminant, uses if statements for test cases, and outputs the roots.
Revise the "Tricky Question" lecture.
Students practice the python shell to use the math module's square root function, import it from a module, compute the square root, and fix a name error for square.
Import the square root function from math to compute roots. Use the discriminant to determine two roots, one root, or no real roots, then cast to strings and print.
Discover locating a point on a zero-based segment of length X by only slicing the segment into two equal parts, yielding X/2, X/4, and so on.
Learn how the bisectional search finds a target point by halving the interval between the lower bound and upper bound, using the midpoint and updating bounds.
Describe how to build a Python number-guessing game using a bisectional search, with interactivity guiding the search to let the computer guess a user's number between 0 and 100.
Introduce core variables for a binary search in a Python app: set guess, low bound, and upper bound, and print welcome and user prompts.
Build a bisectional search based number guessing game in Python, inside a loop starting with 0–100 and midpoint 50, updating bounds through user feedback—too high or too low.
Validate the user input by checking that the provided characters are h, l, or r, implemented with a top-of-loop while and conditional statements during a bisectional search.
Apply a bisectional search to guess a number by updating the lower and upper bounds and computing the middle point, handling h or l feedback and invalid inputs.
Explore how binary search narrows the interval by updating the upper bound and middle guess, and identify the bug causing an infinite loop when the lower bound doesn't change.
Identify the missing else branch to handle valid inputs, add a break to exit the while loop, and finish the application by testing the input-driven number guess flow.
Play a Python guessing game by running the module and watching the computer guess a number from 0 to 100 using the bisection method in the Python shell.
Explore the magic of cryptography and how it transforms input into meaningful expressions, with a self-study task to read information, finish the games, and implement the application.
Explore how ord and chr convert between characters and ASCII values in Python. See practical demonstrations in the shell and apply these conversions in for loops for real-world projects.
Demonstrate using two separate programs to encrypt and decrypt messages for secure internet communication, showing how a sender encrypts, the network transmits, and the receiver decrypts to read.
Learn to keep encrypted strings alphabetic by restricting the key to 0-25. Explore ascii behavior with an A example to avoid non-letter symbols through proper handling.
This is the part of the Final Project task. Use your knowledge to solve the next quiz!
Implement a key validation loop to ensure the user key is between 1 and 25, store it in key, and prepare for the encryption algorithm.
Read about the core encryption formula
Explore checking the cipher formula by transforming characters with a key, using modulo 26 to map letters and switch between uppercase and lowercase.
Finish the Python application by implementing a character-by-character encryption: loop through the message, handle lowercase and uppercase with ord arithmetic and modulo 26, and print the encrypted result.
Fix the bug by casting the symbol to its integer via ASCII and using a char variable to return the corresponding character, then test in the next lecture.
Decryption is very simple!
Add a conditional to treat spaces as valid characters, ensuring text stays readable, and ignore changes when the symbol is a space so the message remains unchanged.
Test the core cryptography application with an encrypted message and a known key, using the Python shell to determine what the message is.
Solve 5 equations using our math app
Use Cryptography App that we wrote to decrypt the message
What is this course about?
Feel the real power of Python and programming! The course offers you a unique approach of learning how to code by solving real world problems. Throughout the course we will be understanding how to identify and formulate the problems, what is the key to a great app, we will learn how to efficiently adopt the problem for the computer and the most important that you will be writing a lot of code! The course is structured in a way that lectures are like labs where we study the material, do the quizzes, write programs and test them! The most important that you will be involved into work a lot in order to get the best experience!
Technical background
You will understand how Python can be used to solve problems from different fields, including mathematics, cryptography, guess-n-check algorithms and more! You don't need to be familiar with concepts we will be solving, however the basic understanding of programming is needed, only the basics, like variables, if statements, loops and functions.