Skip to main content

Computer Programming concept: Problem Solving

computer programming picture for Babatunde Elucidation

Understand programming concepts first!

by SB Sanni.

Knowledge of problem solving and programming concepts is a necessity for those who work with computers, either as programmers or as users. Unfortunately, many learners have greater difficulty with problem solving than they do with the syntax of computer languages or applications. Since problem-solving concepts are similar in all languages and applications, learners can learn them in one computer language. Then, the learners can concentrate on syntax. This arrangement not only saves time but also decreases frustration for everyone involved, and it improves the success rates of the learners.


When I ventured into the world of computer programming, as a Newbie - without any computer science or programming background- it was a difficult experience as I was learning it on my own without any instructor, teacher or lecturer. I read books and watch online tutorials, still didn't understand 'Jack!' I nearly gave up, as a matter of fact I did, but later went back to it. Computer programming started making sense to me when I started understanding the concepts behind it. I've always known that I can learn anything if only I can just understand it. Hence, the motto of my website, ''understanding what you know is the key.'' It was until I stopped focusing on the computer language syntax and then decided to understand how computer works and programming concepts that my journey in computer programming started becoming seamless. And this is the mistake that most learners - especially those coming from a Non-tech background like me - make; they more often than not, focus on the computer language syntax they are learning instead of understanding computer programming concepts, which invariably would hone their programming skills.


Understand the programming concepts first! Which is synonymous to real life problem solving paradigms, and in this article, I will do my best to expound on this thesis.


Problem Solving in Everyday Life

People make decisions every day to solve problems that affect their lives. The problems may be as unimportant as what to watch on television (please, watch the edifying ones 😊) or as important as choosing a new profession. If a bad decision is made, time and resources are wasted, so it's important that people know how to make decisions well. There are six steps to follow to assure the best decision. These steps, the six steps in problem solving, include the following: 

1. Identify the problem.
The first step towards solving a problem is to identify the problem.

2. Understand the problem.
You must understand what is involved in the problem before you can continue towards the solution.

3. Identify alternative ways to solve the problem.
This list should be as complete as possible. You might want to talk to other people to find other solutions than those you have identified. Alternative solutions must be acceptable ones.

4. Select the best way to solve the problem from the list of alternative solutions.
In this step, you need to identify and evaluate the merits and demerits of each possible solution before selecting the best one.

5. List instructions that enable you to solve the problem using the selected solution: step-by-step instructions.
No instruction can be used unless the individual or the machine can understand it. This can be very limiting, especially when working with computers.

6. Evaluate the solution.
To evaluate or test a solution means to check its result to see if it is correct, and to see if it satisfies the needs of the person(s) with the problem. 

If any of these six steps are not completed well, the results may be less than desired. People solve problems daily at home, or work, or wherever they go. The problems at work, might involve dealing with fellow employees, work policies, management, or customers. The better the decisions an employee can make, the more valuable that person will be to the company. In each case, the six steps in problem solving can be followed. Most people use them without even knowing it.

Types of Problems

Problems do not always have straightforward solutions. Problem, like baking a cake, can be solved with a series of steps. These steps are called the algorithm. The solutions of other problems, such as how to buy the best stock or whether to expand the company, are not so straightforward. These solutions require reasoning built on knowledge and experience, and experimentation. Solutions that cannot be reached through a direct set of steps are called heuristic solutions.

The problem solver can use the six steps for both algorithmic and heuristic solutions. However, in step 6, evaluating the solution, the correctness and appropriateness of heuristic solutions are far less certain. It's easy to tell if your completed chequebook balance is correct and satisfactory, but it's hard to tell if you've bought the best stock. With heuristic solutions, the problem solver will often need to follow the six steps more than once, carefully evaluating each possible solution before deciding which is best.

Problem Solving with Computers

In this article, the term solution means the instructions listed during step 5 of problem solving—the instructions that must be followed to produce the best results. Results means the outcome or the completed computer-assisted answer. Program means the set of instructions that make up the solution after they have been coded into a particular computer language. Computers are built to deal with algorithmic solutions, which are often difficult or very chronophagous for humans. People are better than computers at developing heuristic solutions. Solving a complicated mathematical problem is an easy task for the computer, but the problem of how to speak English is not. The difficulty lies in the programming. How can problems such as how to speak English be solved in a set of steps that the computer can understand? The field of computers that deals with heuristic types of problems is called artificial intelligence. Artificial intelligence (AI) enables a computer to do things like build its own knowledge bank and speak in a human language. As a result, the computer's problem solving abilities are similar to those of a human being, AI is an expanding computer field. Until computers can be built to think like humans, people will process most heuristic solutions and computers will process many algorithmic solutions. Therefore, I would suggest to a learner to master algorithmic process. Heuristic problem solving can help determine alternative solutions. However, for computer use, they must be transformed into an algorithmic format.

Difficulties with Problem Solving

Often, when people go through the problem-solving process, they complete one or more of the steps inadequately. They may not define the problem correctly or may not use a logical sequence of steps in their solution. They may also incorrectly or willy-nilly evaluate the solution. The problem-solving process is not a walk in the park. It takes practice and time to perfect, but in the long run the process proves to be greatly profitable. When solving problems on the computer, one of the most difficult tasks for the problem solver is writing the instructions. Take the task of deciding which number is the largest from a group of five numbers. Almost anyone can immediately tell which is the largest, but many cannot explain the steps they followed to arrive at it. Most people will say, "I can't explain how I know, I just know it!" This explanation does not suffice for the computer. The computer is a tool that will perform only tasks that the user can explain. The computer has a specific system of communication that programmers and users must learn. This system demands that no step in the solution to a problem be left unstated and that all steps be in the fitting order. You must assume the computer knows nothing except what you tell it, and think of it as an ignorant but efficient aid to problem solving.

The steps in problem solving can be applied to problems in daily life as well as to problems put on computer. Good problem-solving techniques enable you to look at a problem logically and unemotionally, saving time and other resources.

If you learnt from this article, you can check out this article also.

Do not miss future updates by subscribing via email.


Comments

  1. Great stuff SBELUDIATION. you have an excellent grip on computer programming and it's interaction with real life complexities. Your presentation also reveals exciting opportunities for prospective user professionals. My interest in learning computer programming is formally tendered. Let's get in touch!

    ReplyDelete
    Replies
    1. I'm glad you found the article helpful. You can get in touch via the contact form.
      Thanks.

      Delete
  2. Can't do it on my own.... Need a helper

    ReplyDelete
    Replies
    1. For with God nothing will be impossible. We can give you a hand, communicate via the 'contact us' page. 😊

      Delete
  3. pls want to learn coding real bad....
    I'm a complete novice to this

    ReplyDelete
    Replies
    1. Contact us via the contact us page. Thanks

      Delete
    2. Kindly DM now 07045973694

      Delete

Post a Comment

Popular posts from this blog

Programming is the new Mathematics : Enrol your kids for coding classes with us at Babatunde Elucidation

let us at Babatunde Elucidation make programming the new math for your kids. by SB Sanni. It is needless to say that Nigeria is falling behind the rest of the world in mathematics and science, and we may as well predict the detrimental effect for our future.  In over 20 states of the federation, computer science doesn’t even count towards high school graduation requirements. Although programming jobs are growing rapidly, yet it is also rapidly dropping in our educational sector. This is a skill that can be taught as early as possible in primary schools, yet it’s not even offered in these schools. Obviously we are not preparing our students for the hantle of problems that lie ahead. In order to curb this issue, that's where Babatunde Elucidation comes in. But first, lets analyse the issues at hand. The first step in solving a problem is to recognize its need to be solved. Today an estimate of 5% of students study programming in Nigeria. If we triple that to 15%, we clos...

Free Download of JAMB'S UTME Physics Past Questions with Answers on "Application of Light Waves"

    Free Download of Jamb's Utme Physics past questions with Answers on "Application of Light Waves." There have been lots of posts out there, stating 'Free Download of  UTME Physics past questions with Answers' but only questions without  answers . This has prompted me to painstakingly create this pack by solving Jamb physics past questions on different topics and making them available to download for free. Not only are these questions solved topics by topics, they're also solved systematically from the simplest to the hardest. It is a unique past questions pack with answers to make easy studying of the subject. Side Note: 'ume 91@07' in the pack implies ume 1991 question number 7. As the description of the website displays-understanding what you know is the key- I would like to explain this topic briefly. Brief explanation on the topic My exposition will be only on eyes as it is the most pivotal of all the application of Light waves. Years back that ...

Free Download of JAMB'S UTME past questions with Answers on CRK's "Parental Responsibility"

Free Download of Jamb-Utme-Past Questions with Answers on CRK's Parental Responsibility. There have been lots of posts out there stating 'Free Download of  UTME past questions with Answers' but only questions without answers . This has prompted me to painstakingly create this pack by providing solutions to Jamb past questions on different topics and making them available for download free. Not only are these questions provided topics by topics, the solutions are also provided systematically. This is another Jamb past questions pack with answers by SB Sanni of Babatunde Elucidation . It's a Christian Religious Knowledge (CRK) UTME past questions on the topic 'Parental Responsibility'. Side note: 'ume 87@41' in the pack implies ume 1987 question number 41. Brief explanation on the topic Parental Responsibility Parental Responsibility is describe as all the rights, duties, power and authority which by law a parent has in relation to the child and his prop...