1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
igor_vitrenko [27]
3 years ago
13

Write a program that lets the user enter the total rainfall for each of 12 months into an array of doubles. The program should c

alculate and display the total rainfall for the year and the average monthly rainfall. Use bubble sort and sort the months with the lowest to highest rain amounts. Use the binary search and search for a specific rain amount. If the rain amount is found, display a message showing which month had that rain amount. Input Validation: Do not accept negative numbers for monthly rainfall figures.
Computers and Technology
1 answer:
galben [10]3 years ago
3 0

Answer:

Program approach:-

  • Using the header file.
  • Using the standard namespace I/O.
  • Define the main function.
  • Check whether entered the value is negative.
  • Find the middle position of the array.
  • Display message if value not found.
  • Returning the value.

Explanation:

Program:-

//required headers

#include <stdio.h>

#include<iostream>

using namespace std;

//main function

int main()

{   double rain[12], temp_rain[12], sum=0, avg=0, temp;

   int month=0, i, j, n=12, low=0, mid=0, high=12, x, found=0;

   char month_name[][12]={"January", "February", "March", "April", "May", "June",

   "July", "August", "September", "October", "November", "December"};

 

   //store input values to arrays rain and temp_rain

   while(month<n)

   {   cout<<"Enter the total rainfall for month "<<month+1<<" :";

       cin>>temp;

     

       //check whether the entered value is negative

       if(temp<0)

       {   cout<<"Enter a non negative value"<<endl;

       }

     

       else

       {   rain[month]=temp;

           temp_rain[month]=temp;

         

           //total sum is found out and stored to sum

           sum+=temp;

           month++;

       }

   }

 

   //find average rainfall

   avg=sum/n;

 

   //display total and average rainfall for the year

   cout<<"Total rainfall for the year: "<<sum<<endl;

   cout<<"Average rainfall for the year: "<<avg<<endl;

 

   //perform bubble sort on temp_rain array

   for(i=0; i<n-1; i++)    

   {   for (j=0; j<n-i-1; j++)

       {   if (temp_rain[j]>temp_rain[j+1])

           {

               temp=rain[j];

               temp_rain[j]=temp_rain[j+1];

               temp_rain[j+1]=temp;

           }

       }

   }

   //get search value and store it to x

   cout<<"Enter the value to search for a specific rain amount: ";

   cin>>x;

   //perform binary search on temp_rain array

   while (low<=high)

  {

      //find the middle position of the array

      int mid=(low+high)/2;

      //if a match is found, set found=1

      if(x==temp_rain[mid])

      {   found=1;

          break;

      }

       //ignore right half if search item is less than the middle value of the array

      else if(x<temp_rain[mid])

          high=mid-1;

       //ignore left half if search item is higher than the middle value of the array

      else

          low=mid+1;

  }

 

   //if a match is found, then display the month for the found value

   if(found==1)

   {

       for(i=0; i<n; i++)

       {   if(x==rain[i])

               cout<<"Found matching rainfall for this month: "<<month_name[i];

         

       }

     

   }

 

   //display message if value not found

   else

       cout<<"Value not found.";

 

   return 0;

}

You might be interested in
The following code is intended to test whether the int variable num is less than 10, and if so print a warning and set it to 10.
hoa [83]

The only correction I see is you need to add curly braces to enclose the second and third lines.

6 0
3 years ago
In Scheme, the form (symbol-length? 'James) will return: Group of answer choices 0 5 6 error message
Nadya [2.5K]

Answer:

an error message

Explanation:

The return value is the value which is sent back by the function to a place in the code from where the \text{function} was called from. Its main work is to return a value form the function.

In the context, the form of  "(symbol-length? 'James)" in Scheme will return the  value --- ' an error message'.

7 0
3 years ago
50 POINTS! What can be viewed in the Tasks folder? Check all that apply.
Rom4ik [11]

1, 2, and 4 :))) good luck

6 0
3 years ago
Read 2 more answers
An array subscript can be an expression, but only as long as the expression evaluates to what type?
densk [106]

Integer Integer Integer Integer Integer Integer Integer Integer Integer Integer Integer Integer Integer Integer Integer

6 0
3 years ago
Can you make a phone app with angular?.
emmainna [20.7K]

Answer:

yes

Explanation:

4 0
3 years ago
Other questions:
  • If you are trying to create a web page for your band and having difficulty creating links to other groups on your page, what is
    7·1 answer
  • Which of the following statements is false? a. Classes (and their objects) encapsulate, i.e., encase, their attributes and metho
    15·1 answer
  • The Security Development Life Cycle (SDLC) is a general methodology for the design and implementation of an information system.
    5·1 answer
  • In the windows firewall, any rules preceded by a __________ checkmark have not been enabled. black gray green red
    13·1 answer
  • Saving a file as a new filename can be accomplished through the Save As dialog box.
    13·1 answer
  • Construct sequence using a specified number of integers within a range. The sequence must be strictly increasing at first and th
    6·1 answer
  • Which of these functions may be used with positional arguments? Select four options.
    10·1 answer
  • Hi who plays among us
    9·1 answer
  • Is a dot matrix printer an impact or non-impact printer
    12·2 answers
  • How many ways are used to insert an image from file?koi h kya​
    10·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!