Boa noite!
Postei o código aqui ==> Adega para Vinhos
Vou colar o código aqui para não se perder, também. Mas no link está mais organizado!
// --------------------------------------------------------------------
#include<iostream>
#include<iomanip>
using namespace std;
enum TipoVinho {
T,
B,
R
};
class Vinho {
TipoVinho tipo; // T (tinto), B (branco), R (rose)
static int quantidade;
static int tinto;
static int branco;
static int rose;
public:
Vinho(TipoVinho tipo) : tipo(tipo) {
quantidade++;
switch(this->tipo) {
case T:
tinto++;
break;
case B:
branco++;
break;
case R:
rose++;
break;
}
}
TipoVinho getTipo() {
return this->tipo;
}
static int getQuantidade() {
return quantidade;
}
static int getTinto() {
return tinto;
}
static int getBranco() {
return branco;
}
static int getRose() {
return rose;
}
friend ostream& operator << (ostream& os, Vinho const& vinho) {
switch(vinho.tipo) {
case T:
os << "TINTO";
break;
case B:
os << "BRANCO";
break;
case R:
os << "ROSE";
break;
}
return os;
}
};
int Vinho::quantidade = 0;
int Vinho::tinto = 0;
int Vinho::branco = 0;
int Vinho::rose = 0;
int main() {
char tipo;
do {
cout << "Entre com o tipo de vinho: (T)into, (B)ranco ou (R)osé. (F)im para terminar ==> ";
cin >> tipo;
Vinho* vinho;
switch(tipo) {
case 'T':
vinho = new Vinho(T);
break;
case 'B':
vinho = new Vinho(B);
break;
case 'R':
vinho = new Vinho(R);
break;
}
} while(tipo != 'F');
cout << "A quantidade de vinhos por tipo e o total são:" << endl;
cout << fixed << setprecision(2);
cout << "Tinto : " << setw(3) << Vinho::getTinto() << " - " << Vinho::getTinto() / static_cast<float>(Vinho::getQuantidade()) * 100 << '\%' << endl;
cout << "Branco: " << setw(3) << Vinho::getBranco() << " - " << Vinho::getBranco() / static_cast<float>(Vinho::getQuantidade()) * 100 << '\%' << endl;
cout << "Rose : " << setw(3) << Vinho::getRose() << " - " << Vinho::getRose() / static_cast<float>(Vinho::getQuantidade()) * 100 << '\%' << endl;
cout << "TOTAL : " << setw(3) << Vinho::getQuantidade() << endl;
return 0;
}
// --------------------------------------------------------------------
Espero ter ajudado!
Construa um algoritmo que permita fazer um levantamento do estoque de vinhos de uma adega. Em linguagem dev-c++
Construa um algoritmo que permita fazer um levantamento do estoque de vinhos de uma adega, tendo como dados de entrada o tipo de vinho, sendo: “T” para tinto, “B” para branco e “R” para rose. Escreva a porcentagem de cada tipo sobre o total geral de vinhos; a quantidade de vinhos é desconhecida, utilize como finalizador (flag) Tipo de vinho “F” de fim. Em linguagem dev-c++
main(){
int cont1 = 0, cont2 = 0, cont3 = 0;
float p1, p2, p3;
char vinho[1];
do{
printf(“Digite o tipo de vinho, T para tinto, B para branco e R para rose:”);
scanf(“%s”,&vinho);
if(vinho == ‘T’){
cont1++;
}
if(vinho == ‘B’){
cont2++;
}
if(vinho == ‘R’){
cont3++;
}
}while(vinho != ‘F’);
p1 = cont1 / 100;
p2 = cont2 / 100;
p3 = cont3 / 100;
printf(“Porcentagem para vinho tinto: %f %”, p1);
printf(“Porcentagem para vinho branco: %f %”, p2);
printf(“Porcentagem para vinho rose: %f %”, p3);
getch();
}
COMO TESOLVER ESSA QUESTAO POR FAVOR
Para escrever sua resposta aqui, entre ou crie uma conta.
Compartilhar