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
pishuonlain [190]
4 years ago
13

THE bestValue PROBLEM Using the Camera structure defined in file p1.cpp, write the function named bestValue(). The function take

s one input parameter: a vector of Camera. The vector is sorted by manufacturer, so all cameras of a particular manufacturer are together in the vector. The function returns a vector of string, with the manufacturer, model number and price concatenated together exactly in this format.
Computers and Technology
1 answer:
eduard4 years ago
3 0

Answer:

#include <iostream>

#include <vector>

#include <string>

#include <cmath>

#include <iomanip>

#include <sstream>

using namespace std;

// Given struct

struct Camera {

// Declaring variables

string manufacturer;

string model;

int releaseYear;

int resolution;

int weight;

double price;

};

vector<string> bestValue(const vector<Camera>& cameraNew) {

vector<string> display;

double winnerOne = 0;

double winnerTwo = 0;

double realWinnerOne = 0;

double realWinnerTwo = 0;

string displayOne;

string displayTwo;

string ans;

int find = 0;

// Calculating best value using given formula

for (unsigned i = 1; i < cameraNew.size(); i++) {

winnerOne = cameraNew[i].price / static_cast<double>(cameraNew[i].resolution);

winnerTwo = cameraNew[i-1].price / static_cast<double>(cameraNew[i - 1].resolution);

if (cameraNew[i].manufacturer == cameraNew[i - 1].manufacturer) {

if (winnerOne > winnerTwo && winnerOne > realWinnerOne) {

find = 1;

}

else if (winnerOne < winnerTwo && winnerTwo > realWinnerTwo) {

find = 2;

}

if (find == 1) {

realWinnerOne = cameraNew[i].price/ static_cast<double>(cameraNew[i].resolution) ;

ostringstream displayStream1;

displayStream1 << fixed << setprecision(2) << cameraNew[i].price;

displayOne = cameraNew[i].manufacturer + ":" + cameraNew[i].model + ":$" + displayStream1.str();

find = 0;

}

else if (find == 2) {

realWinnerTwo = cameraNew[i - 1].price / static_cast<double>(cameraNew[i - 1].resolution);

ostringstream displayStream2;

displayStream2 << fixed << setprecision(2) << cameraNew[i - 1].price;

displayTwo = cameraNew[i-1].manufacturer + ":" + cameraNew[i-1].model + ":$" + displayStream2.str();

find = 0;

}

}

else {

if (realWinnerOne >= realWinnerTwo) {

display.push_back(displayOne);

realWinnerOne = 0;

realWinnerTwo = 0;

}

else if (realWinnerOne < realWinnerTwo) {

display.push_back(displayTwo);

realWinnerOne = 0;

realWinnerTwo = 0;

}

}

}

if (realWinnerOne > realWinnerTwo) {

display.push_back(displayOne);

}

else if (realWinnerOne < realWinnerTwo) {

display.push_back(displayTwo);

}

else if (realWinnerOne == realWinnerTwo) {

display.push_back(displayTwo);

}

return display;

}

template <typename T>

ostream& operator<<(ostream& out, const vector<T>& display) {

if (display.size() > 0) {

out << "0. " << display[0];

out << endl;

//displaying output in the given format

for (size_t i = 1; i < display.size(); i++) {

out << i << ". " << display[i];

out << endl;

}

}

else

{

out << "Size of the vector is 0 or less than 0." << endl;

}

return out;

}

void camBestValue() {

const vector<Camera> vCameras = {

{ "Agfa", "ePhoto 1280", 1996, 1024, 400, 180 },

{ "Agfa", "ePhoto CL45", 2000, 1600, 275, 180 },

{ "Canon", "PowerShot 350", 1996, 640, 315, 150 },

{ "Canon", "PowerShot 600", 1994, 832, 445, 139 },

{ "Canon", "PowerShot A10", 2001, 1280, 355, 139 },

{ "Casio", "Exilim EX-P505", 2005, 2560, 250, 260 },

{ "Casio", "Exilim EX-P600", 2006, 2816, 275, 260 },

{ "Casio", "Exilim EX-P700", 2006, 3072, 275, 260 },

{ "Epson", "PhotoPC 800", 1997, 1600, 285, 220 },

{ "Epson", "PhotoPC L-500V", 2004, 2560, 205, 150 },

{ "Fujifilm", "FinePix 40i", 2000, 2400, 185, 180 },

{ "Fujifilm", "FinePix 50i", 2001, 2400, 205, 180 },

{ "Fujifilm", "DS-260HD", 1997, 1280, 845, 190 },

{ "Fujifilm", "DS-300", 1995, 1280, 845, 200 },

{ "HP", "Photosmart 320", 2002, 1632, 230, 190 },

{ "HP", "Photosmart 435", 2003, 2048, 180, 190 },

{ "HP", "Photosmart 620", 2002, 1632, 260, 190 },

};

vector<string> display;

display = bestValue(vCameras);

cout << display << endl;

}

int main() {

camBestValue();

}

Explanation:

The program takes one input parameter: a vector of Camera. The vector is sorted by manufacturer, so all cameras of a particular manufacturer are together in the vector.

The function returns a vector of string, with the manufacturer, model number and price concatenated together.

It produces the best value.

You might be interested in
Which of the following game markets especially benefits from using vector graphics?
marshall27 [118]

The awser is C. PC Gaming

6 0
3 years ago
Which of the following scenarios describes an advantage of a global economy?
Zina [86]

When the toothpaste company diversifies to the other country so this represents the advantage of the global economy.

The information related to the global economy is as follows:

  • It is the inter-linked worldwide activities that could be taken place between the different types of countries.
  • It is related to economic activities.

Therefore, the other options are incorrect.

Thus we can conclude that when the toothpaste company diversifies to the other country so this represents the advantage of the global economy.

Learn more about the economy here: brainly.com/question/11905095

8 0
3 years ago
What is the keyboard command that allows you to copy text
alex41 [277]

Control + C For Desktops and Windows

Control +V to paste

Command+ C For Macbooks

Command+ V to paste

Hope this helps

-Dante


5 0
3 years ago
Read 2 more answers
Excerpt from "How Prepared Are Students for College Level Reading? Applying a Lexile-Based Approach."
Verizon [17]

Answer: Students graduating from high school are not prepared for college-level work.

Explanation:

From the excerpt, it was written that there is a high rates of enrollment in remedial college courses which shows that there are many students are graduating from high school who are unprepared for college-level work.

Therefore, based on this, the best summary of the paragraph is that the students graduating from high school are not prepared for college-level work.

Therefore, the correct option is C.

7 0
3 years ago
What is the purpose of using specialized supply chain software?
weeeeeb [17]

Answer:

The purpose of supply chain management is

On the most basic level, the purpose of supply chain management is to make inventory readily available in customer facing positions to fulfill demand. ... Supply chain partners must work together to maximize resource productivity, develop standardized processes, eliminate duplicate efforts, and minimize inventory levels

Explanation:

4 0
3 years ago
Other questions:
  • The first step in database design is defining a _____, which defines how data is created, represented, organized, and maintained
    13·1 answer
  • Without a well-designed, accurate database, executives, managers, and others do not have access to the ____________________ they
    15·1 answer
  • Computer input is the process of translating physical signals (light, sound, movement) into which of the following?
    8·2 answers
  • A Network Management Station (NMS) is using SNMP to manage some Cisco routers and switches with SNMPv2c. Which of the following
    10·2 answers
  • What is an LMS and how is it used?
    8·1 answer
  • The growing network of physical objects that will have sensors connected to the Internet is referred to as the ________.
    13·1 answer
  • Your long and short term goals (career or job etc)? ANSWER FAST!!!
    6·1 answer
  • Please help me!!!!!!!!
    5·2 answers
  • 10. Two technicians are discussing recycling specifications for refrigerant. Technician A says that refrigerant oil with 5,000 p
    9·1 answer
  • Fast i need now ill give anything
    13·2 answers
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!