0% found this document useful (0 votes)
77 views3 pages

Lesson 1

This document discusses mapping pseudo-code algorithms to C programs. It provides an example of a pseudo-code algorithm that calculates the average of three user-input numbers and maps it directly to a C program. The key steps are: 1) Declaring variables to store the user input numbers and average, 2) Using scanf to get user input into variables, 3) Calculating the average with arithmetic operations, 4) Printing the average result with printf. Overall, it demonstrates how pseudo-code allows specifying the algorithm separately from programming language details and enables a straightforward translation to C code.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
77 views3 pages

Lesson 1

This document discusses mapping pseudo-code algorithms to C programs. It provides an example of a pseudo-code algorithm that calculates the average of three user-input numbers and maps it directly to a C program. The key steps are: 1) Declaring variables to store the user input numbers and average, 2) Using scanf to get user input into variables, 3) Calculating the average with arithmetic operations, 4) Printing the average result with printf. Overall, it demonstrates how pseudo-code allows specifying the algorithm separately from programming language details and enables a straightforward translation to C code.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 3

From Pseudo-Code to C Programs

In the previous topic, we encountered some simple C programs. Although you will only have a superficial
knowledge of C at this time, it is in fact enough to address the main aim of this unit, namely how to map pseudo-
code into C programs. In this lesson, we will map some simple pseudo-code solutions into C programs, while at the
same time introducing some more C constructs.

When you complete this topic, you will be able to:

• map simple pseudo-code solutions to C programs


• describe how C deals with conditional statements
• use conditionals in your C programs
• demonstrate an understanding of the difference between declaring, using and defining a function or module
in C
• declare, use and define a function
• use negation, disjunction and conjunction in combining tests
• demonstrate an initial understanding of the notion of a block in C
• demonstrate an initial understanding of the notion of the scope of a variable declaration

Lesson 1: Averaging Three Numbers


The Problem
Consider the following problem:
Write a program that asks the user to enter three numbers and then prints out the average of the three
numbers.
It should be obvious that the following pseudo-code is a solution for the above problem.
PRINT “Please enter three numbers”
READ num1
READ num2
READ num3

av <- (num1 + num2 + num3)/3

PRINT “The average is”


PRINT av

Mapping the Solution to C

From the C programs that you saw in the previous lessons, it should come as no surprise that these pseudo-code
statements are mapped into the following C statements (recall that we have to use pointers in scanf statements and
that the argument therefore has to be &num1 etc, rather than num1. We will return to this in a later lesson):

printf(“Please enter three numbers”)


scanf(“%d”, &num1);
scanf(“%d”, &num2);
scanf(“%d”, &num3);
av = (num1 + num2 + num3)/3;

printf(“The average is %f\n”, av);

The only statement that contains an element that we have not seen before is the last statement:

printf(“The average is %f\n”, av)

We discussed printf statements before. You may recall that we said that printf statements take as input a
format string and a number of additional arguments the number of which depends on the format string. The above
statement illustrates this point. Notice that the format string contains two unusual characters, namely %f and \n. We
discussed the effects of the second character earlier on. Recall that \n simply means that the string that is printed
out will contain a new line and return.

The role of the %f is different. Any printf statement whose format string contains a two- letter string starting
with a % must have a corresponding argument following it. Thus, there should be as many additional arguments as
there are % characters in the format string. Each % character is replaced by the corresponding argument following it.
In the example above, the %f is replaced by the value of the variable average before the string is printed. Readers
will have noticed the similarity between the use of the % characters in scanf and printf statements. Indeed, just
as the letter following the % in a scanf statement indicates the type of the variable whose value is to be entered by
the user, the letter following the % in a printf statement indicates the type of the corresponding variable that the %
character is to be replaced with.

It is possible for a format string to have more than one % character in it. In this case, the first % character is replaced
by the first argument, the second by the second and so on. Thus, we could replace the printf statement in the
program by the following

printf(“The average of %d, %d and %d


is %f\n”, num1, num2, num3, av);

This statement would not only print out the average; it would also print out the three numbers that were used in the
calculation of the average.

Although we have now translated the relevant statements in C, we do not, as yet, have a full C program. We still
need to make sure that we can indeed use the printf statement by including the stdio library, declare the
different variables, as well as include a function main. The full program therefore is:

#include <stdio.h>
void main()
{
/* Declare the variables to be used */
int num1, num2, num3;
float av;

printf(“Please enter three numbers”)


scanf(“%d”, &num1);
scanf(“%d”, &num2);
scanf(“%d”, &num3);

av = (num1 + num2 + num3)/3;


printf(“The average is %f\n”, av);
}
Readers are encouraged to reflect on how closely the pseudo-code and the C code resemble each other and how
relatively straightforward it is to map the pseudo-code into a C program.

In Unit 1, we repeatedly stated that the difficult part of writing a computer program was the design of the algorithm
and that mapping the algorithm into a computer program was the easy part. We also stated that one of the
advantages of specifying an algorithm beforehand was that it is independent of the programming language that is to
be used for the project.

** End of Lesson 1 **

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy