The first step in problem solving is to develop a foolproof algorithm for the same. This algorithm encompasses of the central logic that will be used to solve the problem. The logical steps that are followed while writing an algorithm play an integral part in the development of a coherent solution. Writing a correct algorithm ensures an efficient code which results in optimum utilization of resources. In order to develop a student's problem solving skills, the logical correctness of an algorithm is more important than the actual implementation. The aim of this paper is to develop a web-based application into which a student or novice programmer can enter an algorithm and get an equivalent C language code for the same. Various Natural Language Processing (NLP) constructs will be used for the same. The user will be able to focus on the logic of the solution without having to worry about the syntax. The application will also provide the facility of running the converted code using a GCC compiler to check for its correctness in terms of syntax and logic. It will be designed as a tool for learning the basics of problem-solving and leveraging those skills.Copy Right, IJAR, 2017,. All rights reserved. ……………………………………………………………………………………………………....
Introduction:-With the growing complexity of computer science problems that are used in real-world applications, it is essential for students to learn how to develop their logic for effective problem solving first without having to focus on the syntax and constraints of programming languages. Students have difficulties in abstracting the problem from its description and breaking it down into sub-problems. There are several learning tools available online, but all of them focus on various programming languages without actually focusing on how a problem can be solved by using various techniques. The motivation behind this paper is to allow students first to be able to clear their logic, work on their problem-solving skills and then perfect the art of writing code. The aim is to create a web-based application which takes any algorithm written in plain English and converts that algorithm into a syntactically correct code. This can be done using natural language processing. Techniques like parts-of-speech recognition, tagging, labeling and tokenizing are used to capture the essence of the algorithm. The tagged keywords are then arranged in a syntactically correct format by the system, thus generating the final code. The proposed system also comes with a compiler which compiles the generated C-code and displays the output on the console. This paper is aimed at developing the logic of students who are just introduced to various problems in Computer Science. The ease of understanding, combined with the easy to use user interface makes this application an efficient learning tool. It overcomes the various drawbacks of the pre-existing systems and hence is very useful. The flow of conventional problem-solving techniques is shown in figure 1.