Project

Chuck Norris Cipher Encoder (Kotlin)

Medium
549 completions
~ 14 hours
4.1

This project will allow us to deal with string and character variables and work with loops and conditional statements. Get familiar with the binary notation and data type conversion. Create an application for the unary representation and decoding of any text.

Provided by

JetBrains Academy JetBrains Academy

About

Secret agents use encryption all the time. You know that everything can be encrypted as different characters. What about encryption that uses only one character and space? This method has a name — the Chuck Norris cipher. In this project, you will create a program that can encrypt any text into a sequence of zeros and spaces and decrypt this sequence into text.

Training project icon

Training project

This project allows you to practice and strengthen your coding skills, helping you get ready for more advanced tasks ahead.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Learn how to convert characters into their binary representation.
Learn how to encrypt any text with zeros and spaces.
Create a program that can decrypt any text using only zeros and spaces.
Create a program that can encrypt or decrypt text using only zeros and spaces.

Reviews

Szymon Harabasz avatar
Szymon Harabasz
3 months ago
Reverse engineering test cases that are not provided and understanding ambiguous specifications of program outputs.
Mateusz Piotrowski avatar
Mateusz Piotrowski
4 months ago
During this project, I learned how to implement the Chuck Norris cipher in Kotlin by converting text to 7-bit binary, grouping repeated bits, and building the encoded block format. I gained practice with Kotlin basics like `while` loops, `StringBuilder`, string trimming, case handling, and parsing i ...
Yannick Mortier avatar
Yannick Mortier
7 months ago
It was a great little project with a fun challenge to encode strings and decode them again. Helped to think about catching error cases and handling them while previous projects often assumed all input is perfect. That was nice.

4.1

Learners who completed this project within the Kotlin Core course rated it as follows:
Usefulness
4.3
Fun
4.1
Clarity
4.0