One of the best ways to improve your programming and writing skills is to regularly solve puzzles or programming problems. Especially if you are learning a new programming language, you can master the language faster by solving common problems and issues. To make your job a little easier, in this article, we share programming practice solution sites that provide many puzzles and problems, and you can improve your skills by solving these problems in any language you know. Please note that not all features on these websites are free; Also, some of these websites hold organized competitions regularly, and if you have good skills, you can even win cash prizes.
Site 1 – Programming Praxis
Programming Praxis is a blog that contains several interesting problems and solutions. Problems related to these different areas can be solved first with your method and then with the help of the solutions provided and check the result of your work. Issues on this site are usually posted in different languages.
Site 2 – CodeKata
Written by Dave Thomas (author of Pragmatic Programmer ), this blog covers many issues directly related to real-world programming, so this website is a good opportunity to improve your coding skills.
Site 3 – TopCoder
TopCoder is one of the main platforms for competitive programming. This site provides a list of algorithmic challenges (from the past to the present) that You can use to write code online and continue working directly using the editor. Topcoder is an active community of programmers who like to solve various problems. Many new and active challenges can be considered, and some of them have cash prizes.
Top users in TopCoder are highly competitive programmers and regularly participate in programming competitions. Also, one of the top users who is always at the top of the rankings (currently first) is Petr Mitrichev. This user has a personal blog called Algorithms Weekly, in which he writes weekly about coding competitions, algorithms, math, and more.
Site 4 – Coderbyte
Coderbyte is also a programming site. This website offers a lot of coding challenges that you can do directly with one of the 12 programming languages such as Java, JavaScript, Python, C #, C ++, and more. Solve it. These challenges range from easy (like finding the largest word in a string) to hard (printing the maximum logical relation in a graph). The website also provides a collection of training programs, introductory videos, preparation courses, and interviews. Unlike HackerRank and other similar websites, you can check out sample Java programming questions, Python issues, and other languages and see solutions written by other users for each challenge and official solutions submitted by Coderbyte. Do.
Site 5 – Project Euler
This website presents a large set of challenges in computer science and mathematics. These challenges usually involve solving programming problems and writing a small program to turn a solution into a clever mathematical formula or equation, such as finding the sum of digits before a number in a sequence. In Project Euler, too, issues range from simple to very complex.
Of course, it should be noted that the code can not be written directly in the online editor of this website, so you must write and run the solution on your computer and then upload the solution on the website.
Site 6 – HackerRank
HackerRank is one of the most popular websites that offers many challenges in several areas such as algorithms, math, SQL, functional programming, AI, and more. By registering, you can solve all the challenges directly and online. The website provides a discussion and leaderboard for each challenge, and most of the challenges come with the headline of the article, which explains more about the challenge and how to deal with it through a solution. But you should know that except for the editorial, you can not see other users’ solutions on the website. HackerRank also allows users to submit their applications, and each user can get a new job according to their scores.
Site 7 – CodinGame
CodinGame is one of the most attractive websites suggested in this article. It is slightly different from other websites because it participates in writing the game code online instead of solving the coding challenges in an editor. To participate in writing game code, a problem (such as binary search) is first described, followed by test samples. And an editor in which you can write your code in one of the suggested programming languages. The result is displayed in the form of a game.
Although this website is different from the usual competitive programming websites and is not like the ones mentioned above, it is still popular among programmers who enjoy solving challenges and competing.
Site 8 – CodeChef
CodeChef is a competitive programming website in India that offers hundreds of challenges, and you can write code in your online website editor. The set of challenges is divided into different categories depending on your skill level. There is also a large community of coders on the website. Who help individuals in the form of forums, write training programs, and participate in CodeChef coding competitions.
Site 9 – Exercism
Exercism is a programming challenge website that offers over 3100 challenges in 52 different programming languages. Once you choose the language you want to become a professional, you will face coding challenges. However, this website is slightly different from other competing websites because you work with a coach after completing each challenge. The trainer will review your answers online and help you. The website will open up more challenges once your answers are submitted and approved.
Site 10 – Codewars
Codewars offers a large set of coding challenges to its developer community. You can solve these challenges directly and online with one of the programming languages in the editor of this website. It is also possible to discuss each challenge and view solutions for different users, such as examples of solved Python problems.
Site 11 – LeetCode
LeetCode is a popular online website that offers a list of 190 challenges that can help you prepare for technical and job interviews. You can solve these challenges directly with one of the nine programming languages in your web editor. Of course, you should not be able to see other users ‘solutions, but there are features to compare the speed of your solutions with other users’ code.
The website also has a pilot interview section specifically for preparing for a job interview. Holding coding competitions and educational articles will help you get acquainted with the errors and problems related to this field and better understand the solutions.
Site 12 – SPOJ
Another competitive website in the field offers more than 20 coding challenges. You can submit your code under the online editor of your website. In addition, SPOJ has a dedicated section for users to discuss coding challenges, although they do not currently offer any formal solution to their questions, unlike other competing websites.
Site 13 – Python Challenge
Python Challenge is a Python programming practice solution site that is great for learning and practicing Python programming. You will be asked to solve Python programming exercises or specific programming problems. These problems are categorized from simple to difficult, and you can use them to improve your skills. This website is very useful for those looking to practice Python with answers and sample Python questions with answers.
Site 14 – Al Zimmermann’s
Al Zimmermann’s is a site that launches a programming competition every six months, and you can participate and receive prizes and test your problem-solving power.
Site 15 – Ruby Quiz
Ruby Quiz is a collection of several issues or competitions related to the Ruby language that you can solve. Although these are for Ruby, it is possible to also solve and test problems for other languages.
Site 16 – C Puzzles
The C Puzzles site has several puzzles or problems related to the C programming language that you can solve. There is also a guide or hint for each issue that can be used to get help.
Site 17 – Prolog Problems
The Prolog Problems site lists issues related to the Prolog language, but solutions are also acceptable in other languages such as Python, Ruby, Haskell, Scala, etc. By working with these items, you can easily learn a new language.
Conclusion:
The ability to solve a problem is one of the most fundamental things to start and master in programming. Therefore, in this article, we have introduced websites to help you test and improve the solution of programming problems and improve the power of thinking and problem-solving. Do you know of any other similar site with programming issues and riddles? We are happy to introduce it in the comments section and share it with other users.