• Learn When HTML/CSS Is Enough And Build An Expression Using E and Pi

Hello, checkiomates🐱‍👤!

From current digest you'll find out, that HTML and CSS have evolved a lot and can do some things pretty well so you don't need JS in Those cases. See an informative video talk about it. We are also releasing math mission about playing with e and pi constants and trying to compose them in a specific way to get a distinct float number.

💡TIP

At every mission page, under the editor window, there is a terminal window. If you want to discover all CheckiO features, visit our tutorial. It's a longread, but it's worth it!

🏁MISSION

e+pi by freeman_lex -

In this challenge, you will be given a result, and your task is to find an arithmetic expression that uses only the numbers pi and e to yield that result. You can use addition, subtraction, multiplication, division, and exponentiation operations, and each number (pi and e) can appear at most two times. Parentheses are not allowed. If there are multiple solutions, return the one that requires fewer operations. If there are still multiple solutions, return the one that comes first alphabetically (without spaces). The calculated result must be equal with an error smaller than 1 x 10-10. If there is no solution for the input, return null. Non negative/positive symbol at the beginning is allowed.

assert.strictEqual(checkio(5.85987448205), "e+pi");
assert.strictEqual(checkio(18.2958548951), "e**e+pi");
assert.strictEqual(checkio(47.6085189284), "e**e*pi");

📖ARTICLE

Don't Use JS for That: Moving Features to CSS and HTML by Kilian Valkhof -

If you've been building websites for a while you "know" that some things require JS and that's just the way it is. Turns out, spec writers and browser makers both are working hard to find common JS patterns and implementing them in CSS and HTML. In this video the author goes through common patterns, explain how they can be implemented in CSS and HTML, how that's better and what accessibility implications they have, both for features available today and feature available soon

👩‍💻CODE SHOT

How do you think, what the following code does?

function ????????(number: number, B: number): boolean {
    let ar = [];
    while (number > 0) {
        ar.unshift(number % B);
        number -= number % B;
        number /= B;
    }
    return ar.every((c, i) => c == ar[ar.length - i - 1]);
}

🙌 Thanks for your attention! Hope to meet you at CheckiO, as well as at our Instagram and Twitter! We are really interested in your thoughts! Please, leave a comment below! ⤵

Welcome to CheckiO - games for coders where you can improve your codings skills.

The main idea behind these games is to give you the opportunity to learn by exchanging experience with the rest of the community. Every day we are trying to find interesting solutions for you to help you become a better coder.

Join the Game