Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

In C++ We take for granted all the place that we see arrays on a daily basis. On

ID: 3833377 • Letter: I

Question

In C++

We take for granted all the place that we see arrays on a daily basis. One that I know I'm sure familiar with is the one I interact with on my commute as I aimlessly scan through my radio dial looking for something, anything(!), to listen to on my way to work or home. Today you will create a radio interface that:

Uses arrays to hold data for FM1, FM2, AM, and either a CD or MP3 folder

each radio cluster will hold 6 radio entries

the CD or MP3 folder will hold at least 10 songs

Uses named constants to control the sizes of the arrays and the looping mechanisms

Uses formatted output to properly display a radio control set and radio output

Clearly shows the driver what is on the radio (the station at least)

Clearly indicates to the driver how to interact (change stations)

Repaints the display so the driver can see what's going on (you can use system dependent code here)

Function to allow the user to change / save a radio station into saved stations

Loops as long as the driver has the car running and until the key is removed (option to kill radio)

Explanation / Answer

void COperationsDlg::OnAddition() { UpdateData(); double Number1, Number2, Result; if( m_Operand1.IsEmpty() ) Number1 = 0; else Number1 = atof(m_Operand1); if( m_Operand2.IsEmpty() ) Number2 = 0; else Number2 = atof(m_Operand2); Result = Number1 + Number2; m_Result.Format("%.2f", Result); UpdateData(FALSE); } void COperationsDlg::OnSubtraction() { UpdateData(); double Number1, Number2, Result; if( m_Operand1.IsEmpty() ) Number1 = 0; else Number1 = atof(m_Operand1); if( m_Operand2.IsEmpty() ) Number2 = 0; else Number2 = atof(m_Operand2); Result = Number1 - Number2; m_Result.Format("%.2f", Result); UpdateData(FALSE); } void COperationsDlg::OnMultiplication() { UpdateData(); double Number1, Number2, Result; if( m_Operand1.IsEmpty() ) Number1 = 0; else Number1 = atof(m_Operand1); if( m_Operand2.IsEmpty() ) Number2 = 0; else Number2 = atof(m_Operand2); Result = Number1 * Number2; m_Result.Format("%.2f", Result); UpdateData(FALSE); } void COperationsDlg::OnDivision() { double Number1, Number2, Result; UpdateData(); if( m_Operand1.IsEmpty() ) Number1 = 0; else Number1 = atof(m_Operand1); if( m_Operand2.IsEmpty() ) Number2 = 0; else Number2 = atof(m_Operand2); Result = Number1 / Number2; m_Result.Format("%.2f", Result); UpdateData(FALSE); } void COperationsDlg::OnAddition() { UpdateData(); double Number1, Number2, Result; if( m_Operand1.IsEmpty() ) Number1 = 0; else Number1 = atof(m_Operand1); if( m_Operand2.IsEmpty() ) Number2 = 0; else Number2 = atof(m_Operand2); Result = Number1 + Number2; m_Result.Format("%.2f", Result); UpdateData(FALSE); } void COperationsDlg::OnSubtraction() { UpdateData(); double Number1, Number2, Result; if( m_Operand1.IsEmpty() ) Number1 = 0; else Number1 = atof(m_Operand1); if( m_Operand2.IsEmpty() ) Number2 = 0; else Number2 = atof(m_Operand2); Result = Number1 - Number2; m_Result.Format("%.2f", Result); UpdateData(FALSE); } void COperationsDlg::OnMultiplication() { UpdateData(); double Number1, Number2, Result; if( m_Operand1.IsEmpty() ) Number1 = 0; else Number1 = atof(m_Operand1); if( m_Operand2.IsEmpty() ) Number2 = 0; else Number2 = atof(m_Operand2); Result = Number1 * Number2; m_Result.Format("%.2f", Result); UpdateData(FALSE); } void COperationsDlg::OnDivision() { double Number1, Number2, Result; UpdateData(); if( m_Operand1.IsEmpty() ) Number1 = 0; else Number1 = atof(m_Operand1); if( m_Operand2.IsEmpty() ) Number2 = 0; else Number2 = atof(m_Operand2); Result = Number1 / Number2; m_Result.Format("%.2f", Result); UpdateData(FALSE); }