Design a program that lets the user enter the total rainfall for each 12 months into an array. The program should calculate and display the total rainfall for the year the average monthly rainfall, and the month with the highest and lowest amounts.

In pseudo-code and a flowchart

first column = n = month number from 1 to 12

second column = rainfall for n R(n)
third column = total rain so far
Rmin = 5000 (unrealistic high)
Rmax = 0
Rav = 0
Rtot = 0
Do loop A for n = 1, 12
Read R(n)
If R(n) > Rmax, then Rmax = R(n)
If R(n) < Rmin, then Rmin = R(n)
Rtot = Rtot + R(n) (this is total so far)
Rav = Rtot/n (this is the average so far)
write n, R(n),Rtot, Rav, Rmax, Rmin
A end of loop
end

Sure! Here's a step-by-step guide on how to design a program that performs the mentioned tasks:

1. Initialize an array of size 12 to store the rainfall data for each month.

2. Create a loop that runs 12 times to prompt the user to enter the rainfall for each month. Store the entered values in the corresponding array element.

3. Initialize variables to keep track of the total rainfall, highest rainfall, lowest rainfall, and their respective month.

4. Iterate through the array to calculate the total rainfall by summing up all the values.

5. Calculate the average monthly rainfall by dividing the total rainfall by 12.

6. Iterate through the array and compare each value with the current highest and lowest rainfall values. Update the highest and lowest values accordingly and store the corresponding month.

7. Display the total rainfall for the year, the average monthly rainfall, and the month with the highest and lowest amounts.

Here's a basic flowchart representation of the program:

Start -> Initialize Array -> Loop: Prompt User -> Store in Array -> Initialize Variables -> Calculate Total Rainfall -> Calculate Average Monthly Rainfall -> Iterate Array -> Compare Values -> Update Highest and Lowest -> Store Corresponding Month -> Display Results -> End

I hope this helps! Let me know if you have any more questions.

Sure! Here's a design for a program that achieves the requirements you mentioned:

Pseudo-code:

1. Initialize an array to hold the total rainfall for each month.
2. Create variables to hold the total rainfall for the year, average monthly rainfall, and the indices of the months with the highest and lowest rainfall.
3. Prompt the user to enter the total rainfall for each month and store the values in the array.
4. Compute the total rainfall for the year by summing up all the values in the array.
5. Compute the average monthly rainfall by dividing the total rainfall for the year by 12.
6. Initialize variables for the highest and lowest rainfall amounts as the first month in the array.
7. Iterate through the array and compare each month's rainfall with the highest and lowest variables. Update those variables accordingly.
8. Display the total rainfall for the year, average monthly rainfall, and the month with the highest and lowest rainfall amounts.

Flowchart:
Here is a basic flowchart representation of the program:

```
+--------------------------------------------+
| Start Program |
+--------------------------------------------+
|
|
v
+-----------------------------+
| Initialize rainfall array |
+-----------------------------+
|
|
v
+------------------------------------+
| Prompt for and store rainfalls |
+------------------------------------+
|
|
v
+--------------------------------+
| Calculate total rainfall |
+--------------------------------+
|
|
v
+---------------------------------+
| Calculate average monthly rain |
+---------------------------------+
|
|
v
+-------------------------------------+
| Initialize highest and lowest months |
+-------------------------------------+
|
|
v
+----------------------------+
| Find highest and lowest |
| rainfall months |
+----------------------------+
|
|
v
+-----------------------------------+
| Display results (total, average, |
| highest, and lowest rainfall) |
+-----------------------------------+
|
|
v
+------------------------------+
| End Program |
+------------------------------+

```

1, 12