We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3
Fundamentos de lógica para programación de computadores cap.
3 149-172
Wilkerson Zabala Urueña
Universidad Piloto de Colombia Seccional Alto Magdalena
Facultad de Ingeniería Programa de sistemas Segundo semestre Girardot 23 de agosto de 2023 Abstract By the term algorithm we mean a well-structured sequence of steps to carry out a specific objective, such as any type of calculation, an addition, a subtraction, among others. Each of them complies with certain rules and orders to produce a particular result. For the author, an algorithm should not imply any type of subjective decision, since they must be concrete and extremely precise with the results that the algorithm will determine in the end, as well as the structure in which it is proposed. Consequently, an algorithm, as is well known, must fulfill a series of steps, but, at the time of executing, for the author, any of these regardless of the language being used or regardless of the type of device being used, the code must reach the same result; obviously following the instructions that were established. With regard to the construction of an algorithm, there must be a problem before it is carried out, or in other words, the situation must be analyzed and a solution must be sought so that certain operations can be implemented to find the best solution to the problem; clearly, as emphasized by the National University of Colombia in the author's quotes, as long as an algorithmic solution is applied to the problem. According to the Universidad Nacional de Colombia, there are three characteristics that best describe an algorithm: precision, definition, and finiteness. When speaking of precision, it refers to the order in which the series of instructions are executed; the definition, simply by the fact that all the data recorded at the input of the code, i.e. at the beginning, the answers are the same; as finiteness, basically to the quality, i.e., that it can be easily determined the starting point and from there to reach an end point. Every computer system has by default the input, the process, and the output, which are defined from the perspective of the programmer, since he has the power to check which are the data that enter, for example, instructions, tasks and which are the answers or in other words, the solutions that come out. Subsequently, UNAL again considers that, for the construction of an algorithm, a series of processes must be followed to identify that an algorithmic solution can be found to the problem and thus begin to implement it in a computer. Then, the methodology for making a computer program is mentioned, which consists of 8 steps. In the first place, a preliminary investigation must be made, where the purpose is to investigate in detail the components of the algorithm, which, from there, are determined which ones correspond to the input, the processes, and the outputs. It should be emphasized that these processes can be divided into sub-processes, these sub-processes into other sub-processes, reaching a point where the problem can no longer be divided; each sub-process can be analyzed separately. That is basically what this research is about, however, it must be considered that if the first task is wrong or badly done, the rest of the process will also be wrong. Next, we have the specification, which consists of detailing each data as precisely as possible, from the input to the output. Basically, the algorithm is understood in a more efficient way, or in a few words, a very detailed description of each data that is acquired. Next, we have the design, in which we enter the construction of the algorithm to comply with all the specifications. In the design, we express the computer program by means of a pseudocode or flowcharts; then it can be said that independently of the programming language, the description of the code is transformed into any language, adding that the type of instructions that are assigned to the flowchart must be considered. Another step is the desktop test, which easily is to execute and verify if the algorithm turned out to be feasible or not and it complies with the given specifications. but unlike the rest, the desktop test is done by hand, with a sheet and pencil; the values of one and the other are rectified while executing one manually and the other on the computer. The last steps of the methodology are coding, which basically consists of translating the algorithm into a formal programming language, obviously after having designed, specified, and tested it. After coding, it is translated again into a concrete programming language, not before knowing the rules of the language, as well as for its transcription and making it work correctly by means of specialized editing programs; usually they usually translate to a high level language because of its simple and fast handling, but on the other hand the low level ones, are a little complex to use; although a counter arises, since mostly, the low level ones support that kind of algorithms. Once the algorithm is organized, then it could be executed safely. Hand in hand with the previous step, already having the program ready to run, then it would pass to the function tests to verify that it is running without any anomaly or error of catch; the program has to take to the top, that is to say to its limits to the algorithm to make sure that there are no errors. Finally, there is the part of the documentation, which would be the user's manual to manage the handling and the good operation of the program; the technical manual describes the methodology that was used for the elaboration of the respective algorithm.