Ir para conteúdo
float

Exercício C++ (Treinando)

Recommended Posts

Olá...

Baixei uma lista de exercícios aqui para praticar em C++, e travei no penúltimo exercício.

Como podem ser abaixo, não sei como fazer para "misturar" latas e galões, e exibir ao usuário...

Será que alguém pode dar uma força aqui?
 

#include <iostream>
#include <stdlib.h>
#include <tgmath.h>
using namespace std;

/**********************************************************************
* Um programa para uma loja de tintas, que peça o tamanho em          *
* metros quadrados da área pintada. Considere que a cobertura da      *
* tinta é de 1 litro para cada 6 metros e que a tinta é vendida em    *
* latas de 18 litros, que custam R$80,0 ou em galões de 3,6 litros    *
* que custam R$25,0. Informe ao usuário:                              *
*     A quantidade de latas necessárias;                              *
*     O preço, considerando: (o objetivo é chegar ao menor preço)     *
*         Comprar apenas Latas                                        *
*         Comprar apenas galões                                       *
*         Misturar latas e galões                                     *
* Acrescente 10% de folga e sempre arredonde os valores para cima     *
**********************************************************************/

int main()
{

    // Corrigir locales:
    setlocale(LC_ALL, "");

    // Declarar variáveis:
    float area;
    float litros;
    int latas;
    int galoes;

    // Atribuir dados:
    cout << "Área (m²): ";
    cin >> area;
    litros = ((area / 6) * 1.1); // Acrescentados 10% de folga...
    latas = (litros / 18);
    galoes = (litros / 3.6);

    // Para não faltar tinta (arredondando para cima):
    if (fmod(litros,18) != 0)
    {
        latas++;
        galoes++;
    }

    // Exibir dados de saída:
    system("cls");
    cout << "Em " << area << "m² são necessários " << litros << "L de tinta";  
    cout << "\n\nLatas: " << latas << "\t|\tPreço: R$" << (latas * 80);
    cout << "\nGalões: " << galoes << "\t|\tPreço: R$" << (galoes * 25);
    
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por ph1
      Eu estou no início do treinamento. Fiz um pequeno algoritmo no qual há uma sequência de números e começa de 36 X 37 / 2 + 35 X 36 /3 + ... 1 X 2 / 37.
      int deno,a,b;
      a = 37;
      b = 38;
      for (deno=1;deno<=38;deno++){
      a = a - 1;
      b = b - 1;
      cout << a << " X " << b << "/" << deno << "\n";
      O problema está no final da impressão, quando chega ao final é impresso -1 X 0 / 38. Quero que termine com 0 X 0 / 38.
    • Por Derex
      Estou precisando usar jsoncpp.lib no codeblocks, porem ao compilar recebo os seguintes erros do compilador:
      D:\Users\User\Documents\CodeBlocks\demo\main.cpp|20|undefined reference to `Json::Value::Value(Json::ValueType)'|
      D:\Users\User\Documents\CodeBlocks\demo\main.cpp|20|undefined reference to `Json::Value::~Value()'|
      ||error: ld returned 1 exit status|

      Caso tenham duvida se eu linkei a lib ao projeto! 
      Sim eu linkei! 
      Link da linkagem da lib ao projeto >> https://uploaddeimagens.com.br/images/001/501/252/full/Capturar.PNG
    • Por Derex
      Galera, não estou conseguindo usar a libcurl!
      alguem poderia me dar uma ajudinha?
      me ensinar como compilar isso de forma correta!
      Pois estou seguindo todos passos que vem em um doc junto com o proprio projeto. >>BUILD.WINDOWS.txt<<, Que se encontra dentro da pasta >>winbuild<<.
      Segue video dos passos que estou seguindo aqui pra compilar!
      Eu consigo compilar normalmente, porem na hora de usar diz que as funções não foram definidas!
      Segue link >> 
       
    • Por eduardodsilvaq
      Bom a ideia era criar uma lista de encomendas para cada estado. Porem não consigo exibir depois de adicionar com o .push_back(pedido1);    
       
      #include <iostream> #include <list> using namespace std; //criando estrutura de pedidos struct Pedido{ string nomeCliente, mEstado; int estadoEntrega; float cepEntrega; void insere (string stnomePedido, int stestadoEntrega, int stcepEntrega){ nomeCliente = stnomePedido; estadoEntrega = stestadoEntrega; cepEntrega = stcepEntrega; } void mostraPedido() { if (estadoEntrega == 1) {mEstado = "Acre";} if (estadoEntrega == 2) {mEstado = "Alagoas";} if (estadoEntrega == 3) {mEstado = "Amapa";} if (estadoEntrega == 4) {mEstado = "Amazonas";} if (estadoEntrega == 5) {mEstado = "Baia";} if (estadoEntrega == 6) {mEstado = "Ceara";} if (estadoEntrega == 7) {mEstado = "Distrito Federal";} if (estadoEntrega == 8) {mEstado = "Espirito Santo";} if (estadoEntrega == 9) {mEstado = "Goias";} if (estadoEntrega == 10) {mEstado = "Marranhao";} if (estadoEntrega == 11) {mEstado = "Mato Grosso";} if (estadoEntrega == 12) {mEstado = "Mato Grosso do Sul";} if (estadoEntrega == 13) {mEstado = "Minas Gerais";} if (estadoEntrega == 14) {mEstado = "Para";} if (estadoEntrega == 15) {mEstado = "Paraiba";} if (estadoEntrega == 16) {mEstado = "Parana";} if (estadoEntrega == 17) {mEstado = "Pernambuco";} if (estadoEntrega == 18) {mEstado = "Piaui";} if (estadoEntrega == 19) {mEstado = "Rio de Janeiro";} if (estadoEntrega == 20) {mEstado = "Rio Grande do Norte";} if (estadoEntrega == 21) {mEstado = "Rio Grande do Sul";} if (estadoEntrega == 22) {mEstado = "Rondonia";} if (estadoEntrega == 23) {mEstado = "Roraima";} if (estadoEntrega == 24) {mEstado = "Santa Catarina";} if (estadoEntrega == 25) {mEstado = "Sao Paulo";} if (estadoEntrega == 26) {mEstado = "Sergipe";} if (estadoEntrega == 27) {mEstado = "Tocantins";} cout << "Cliente...............: " << nomeCliente << "\n"; cout << "Estado para entrega...: " << mEstado << "\n"; cout << "Cep para entrega......: " << cepEntrega << " \n \n"; } }; void sair() { printf("Ja vai??? Nao! Nao! Espere! Naa...\n"); } int main() { list<Pedido> pedidos; int valor; do { printf ("\n\n1. Criar pedido: \n"); printf ("2. Listar pedidos: \n"); printf ("0. Sair \n\n"); scanf("%d", &valor); switch ( valor ) { case 1: { string valorNomePedido; int valorEstado, confirma; float valorCep; printf("\n Informe seu nome: \n"); cin >> valorNomePedido; cout<<endl; printf("Digite o numero do estado para entrega: \n"); printf("1.AC 2.AL 3.AP 4.AM \n"); printf("5.BA 6.CE 7.DF 8.ES \n"); printf("9.GO 10.MA 11.MT 12.MS \n"); printf("13.MG 14.PA 15.PB 16.PR \n"); printf("17.PE 18.PI 19.RJ 20.RN \n"); printf("21.RS 22.RO 23.RR 24.SC \n"); printf("25.SP 26.SE 27.TO \n"); cin >> valorEstado; if (valorEstado == 0 or valorEstado > 27){ printf("\n Estado invalido. \n"); break; } printf("\n Digite o CEP para entrega: \n"); cin >> valorCep; cout<<endl; //estancia e cria um pedido Pedido pedido1; pedido1.insere(valorNomePedido, valorEstado, valorCep); //solicita confirmação do pedido aao usuario antes de adicionalo a lista cout << "\n Este e seu pedido? \n"; cout << "1.SIM 2.NAO \n\n"; pedido1.mostraPedido(); cin >> confirma; if (confirma == 1){ cout << "\n Pedido confimado com sucesso! \n"; //adiciona pedido a lista pedidos.push_back(pedido1); } if (confirma == 2){ cout << "\n Pedido cancelado! \n"; } break; } case 2: { int tamanho; tamanho=pedidos.size(); if (tamanho==0){ cout << "\n Lista vazia. \n"; }else{ int listar; cout << "\n Quantidade de pedidos: " << tamanho << "\n"; cout << "Listar pedidos?\n"; cout << "1.SIM 2.NAO\n"; cin >> listar; cout<<endl; if(listar == 1){ for (int i=0; i<tamanho; i++){ } } if(listar == 2){ cout << "\n OK! Mas nao esqueca de fazer suas entregas!"; } } break; } case 0:{ sair(); break; } default:{ printf("\n Digite uma opçao valida\n"); break; } } }while(valor!=0); }  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.