Accumulate over a File

From Progzoo

You may find the page on accumulating variables useful:

Contents

[edit] How many countries in Asia?

In this example we use an accumulator to count the countries in Africa.

Notice that acc shows up three times:

The accumulator acc is set to zero at the start.

  • Every time we encounter Africa we increment acc.
  • After the loop has completed acc contains the value

we want - so we print it.

Change the program so that it counts the countries of Asia. Do NOT include the countries of Southeast Asia.

The accumulating variable is a very common trick in programming. The accumulator builds up the values - so that it is "right-so-far". For example in this program acc always holds the number of countries in Africa in the lines that have been read so far.

[Font] [Default] [Show] [Resize]

[edit] How many big countries?

Count the number of countries with an area of more than 1500000.

[Font] [Default] [Show] [Resize]

[edit] Numbering countries.

Produce a numbered list of countries:

1 Afghanistan
2 Albania
3 Algeria
...
262 Zimbabwe

Use three character spaces for the number and put a single space after it.

[Font] [Default] [Show] [Resize]

[edit] Country number 42.

Print the name of country number 42

[Font] [Default] [Show] [Resize]

[edit] Total area

Calculate the total area of the world.

This time we add to the accumulator each time. We can use either of the statements below:

acc = acc + area;
acc += area;

[Font] [Default] [Show] [Resize]

[edit] Total population

Calculate the total population of the world.

The answer - at a little over 6 billion will be too large for and int. Use a long instead.

[Font] [Default] [Show] [Resize]

[edit] Total GDP of Africa

Calculate the total GDP of the countries of Africa.

[Font] [Default] [Show] [Resize]

[edit] Total GDP of the 'West'.

Calculate the total GDP of the western world. Include the regions "North America", "Europe" and "Oceania" as the western world.

[Font] [Default] [Show] [Resize]