Ir para conteúdo
Fórum Script Brasil
  • 0

Duvida só pra avalia


Uzumakit

Pergunta

TÍTULO

Quanto custa um carro 0km?

DESCRIÇÃO WEB AULA

Vamos desenvolver um programa que calcule o preço de um carro, considerando a inclusão de acessórios e impostos.

OBJETIVO

Desenvolver um programa completo com base nas estruturas aprendidas na disciplina:

Estrutura sequencial

Estrutura de decisão

Estrutura de repetição

COMPETÊNCIA/HABILIDADE

Entender os processos de desenvolvimento de um algoritmo.

Analisar um problema e apresentar soluções.

DESENVOLVIMENTO

CÁLCULO DO PREÇO DE UM AUTOMÓVEL 0 KM

Uma fábrica de veículos novos necessita de um sistema para o cálculo do preço de um automóvel 0 km que varia de acordo com os opcionais que o cliente deseja. Existem três itens opcionais:

1- Trio elétrico (alarme, vidro elétrico e tranca elétrica);

2- Ar condicionado;

3- Direção hidráulica;

O valor acrescido para cada item está relacionado ao preço básico do carro da seguinte forma:

1- trio elétrico: 2% do valor de fábrica sem o IPI.

2- ar condicionado: 2% do valor de fábrica sem o IPI.

3- direção hidráulica: 2% do valor de fábrica sem o IPI.

4- completo (trio elétrico, ar condicionado e direção hidráulica): a soma dos acréscimos isolados.

Os modelos completos estão com uma promoção adicional de

3.5% do valor total, sendo este composto pelo preço de fábrica acrescido dos opcionais e do valor do IPI.

Você foi escolhido para desenvolver um programa em C++ que, a partir do valor de fábrica do modelo, isto é, sem o IPI, calcule o preço final para venda.

Para a seleção dos acessórios, considere a elaboração de um menu em que a “opção 0” seja equivalente a “nenhum opcional”.

O IPI dos automóveis é de 8% do valor de fábrica.

Observações:

1- O programa deverá ser executado continuamente até que o usuário indique que não deseja mais continuar.

2- O programa deverá mostrar o valor total do automóvel, após a opção escolhida de opcionais pelo usuário.

3- Ao encerrar o programa, este deverá mostrar o total de vezes que cada opcional foi escolhido.

PRODUTO/RESULTADO

O programa que será entregue deverá atender aos requisitos descritos.

com base nisso fiz isso no olha de vocês entra entre o que se pede ?

#include <iostream>

using namespace std;

enum {NENHUM, TRIO, AR, DIRECAO, COMPLETO, SAIR};

void menuOpcoes() {

cout << "0- NENHUM\n";

cout << "1- Trio eletrico\n";

cout << "2- Ar Condicionado\n";

cout << "3- Direcao hidraulica\n";

cout << "4- Completo (Trio + Ar + Direcao)\n";

cout << "5- Sair\n";

cout << ">>";

}

float calcularValorTotal(int opcao, float valorFabrica) {

float valorTotal;

if (opcao == NENHUM) valorTotal = valorFabrica;

if (opcao == TRIO || opcao == AR || opcao == DIRECAO) valorTotal = valorFabrica + valorFabrica*1.02F;

if (opcao == COMPLETO) {

float valorIpi = valorFabrica * 0.02F;

float extraAdicional = valorIpi * 0.02F;

float valorDesconto = extraAdicional/0.35F;

valorTotal = valorDesconto;

}

return valorTotal;

}

int main (void) {

float valorFabrica, valorTotal;

int opcao=-1;

int contNenhum = 0, contTrio = 0, contAr = 0, contDirecao = 0, contCompleto = 0;

while (opcao != SAIR) {

cout << "Informe o valor de fabrica do carro:";

cin >> valorFabrica;

menuOpcoes();

cin >> opcao;

if (opcao < NENHUM || opcao > SAIR) {

cout << "Opco invalida\n";

} else if (opcao >= NENHUM && opcao < SAIR) {

if (opcao == NENHUM) {contNenhum++;}

else if (opcao == TRIO) {contTrio++;}

else if (opcao == AR) {contAr++;}

else if (opcao == DIRECAO) {contDirecao++;}

else if (opcao == COMPLETO) {contCompleto++;}

valorTotal = calcularValorTotal(opcao, valorFabrica);

cout << "Valor total do carro: " << valorTotal << endl;

}

};

cout << "Contador das escolhas:" << endl;

cout << "NENHUM = " << contNenhum << endl;

cout << "TRIO = " << contTrio << endl;

cout << "AR = " << contAr << endl;

cout << "DIRECAO = " << contDirecao << endl;

cout << "COMPLETO = " << contCompleto << endl;

return 0;

}

Link para o comentário
Compartilhar em outros sites

19 respostass a esta questão

Posts Recomendados

  • 0

Olá!

Olha sou pessimo em matematica e não estudo C++, então vou ser pouco util . . .

não tou conseguindo que saio o 2% ?

Eu não entendi o que você quis dizer, você teria como postar um exemplo do calculo realizado em cada opção . . .

Editado por Felipe-Petrópolis
Link para o comentário
Compartilhar em outros sites

  • 0

Olá!

Como já disse sou pessimo em matematica e estou inciando em programação, mas . . .

Eu acho que é porque 30.000 não é interpretado como 30 mil e sim como 30, com algum valor depois da virgula,

Só prara confirmar 60600 não é o valor que você deseja e sim 30600?

Quando tentei aqui 30000.00 saiu 30600, sendo os 600 a porcentagem do calculo realizado, porem usei está formatação: valorTotal = valorFabrica + ( valorFabrica * 2 ) / 100; porque acho que o seu codigo não tava calculando a porcentagem, a não ser que eu esteja errado . . .

Editado por Felipe-Petrópolis
Link para o comentário
Compartilhar em outros sites

  • 0

Olá!

Dei-me licença para 'palpitar' neste questão.

Se eu entendi o problema é obter 2%, Vejamos em 2 etapas.

Vou abstrair do problema o valor de R$30.000,00:

1ª ​Observe que C usa particularidades do sistema ANSI, ou seja, em 'C [.] ponto é usando para separa

decimais de inteiros, então se o usuário entrar$ 30.000

C interpreta: 30.0f (ou seja 30 inteiros e 0 decimais).

Será que intendemos essa parte!?!

2ª Se eu quero obter 2% de um número inteiro basta multiplicar ele por 0.02f está correto?!

Se eu quero obter a porcentagem de 2% e somar o valor simultaneamente então basta

multiplicar esse número por 1.02f está correto?!

Será que eu entendi essa parte!?

Uzumakit

O fragmento abaixo é de seu algoritmo

valorTotal = valorFabrica + valorFabrica*1.02F

Observei que se o usuário entra com: 30000.00

o resultado será: 30000.00 + 30000.00 * 1.02

30000.00 + 30600.00 [seguindo a regra das precedências]

= 60600.00

O resulta para valorTotal: 60600.00

Se sua intenção não era essa, então digamos que fosse:

valorTotal = valorFabrica*1.02F

Teremos o resultado que será: 30000.00 * 1.02

Assim valorTotal: 30600.00 (dando a devida formatação: R$30.600,00)

Será que está tudo correto ou eu entendi mal!?

Espero que toda essa 'falecia' tenha ajudado!

De qualquer forma Obrigado.

Editado por britivaldo
Link para o comentário
Compartilhar em outros sites

  • 0

Olá!

Olha vamos tentar o seguinte:

Provavelmente este deve ser algum exercicio de algum curso, se for este o caso, muito provavelmente o mesmo veio com algum exemplo já calculado, sendo assim tente postar tal exemplo, caso ele não venha com o exemplo, tente você mesmo postar qual deveria ser o resultado do calculo de cada opção, não faça o calculo usando o programa que você criou, e sim você mesmo fazer manualmente o calculo pelo que você entendeu do problema.

Ex: aqui 30000, com as opções 1, 2, ou 3 sai 30600 , este valor é proximo aos corretos que você calculou manualmente ou proximos aos valores do exemplo do exercicio? sendo que a unica coisa que tive que modificar no seu codigo foi a parte em que eu e o britivaldo já haviamos citado anteriormente, das duas formas o programa gera a mesma saida aqui.

Editado por Felipe-Petrópolis
Link para o comentário
Compartilhar em outros sites

  • 0

Olá!

3.5 % de 30000 = 1500?

5.0 % de 30000 = 1500

acho que 3.5 % de 30000 = 1050

- Fiz uma serie de alterações segundo o que entendi do problema:

if ( opcao == TRIO || opcao == AR || opcao == DIRECAO )
    {
       valorTotal = valorFabrica + valorFabrica * 2 / 100;
    }
  if ( opcao == COMPLETO )
    {
       float valorIpi = valorFabrica * 8 / 100;
       float extraAdicional = valorIpi + ( ( valorFabrica * 2 ) / 100 ) * 3;
       float valorDesconto = ( extraAdicional + valorFabrica ) * 3.5 / 100;
       valorTotal = valorFabrica + valorDesconto;
  }

- O que é para ser calculado no extraAdicional - acredito que seja valor ipi + os 2% de cada um dos opcionais 3 * 600

- No valorDesconto - acredito que seja para calcular 3.5 do extraAdicional + valorFabrica

- ValorTotal - é a soma de valorFabrica + valorDesconto

Por que assim do jeito que fiz quando entro com 30000 o calculo está dando 31197

- Tente ver se consegue os resultados corretos com o professor ou de onde você tirou o problema, acredito que é exatamente estes dados que faltam para resolvermos o problema . . .

Editado por Felipe-Petrópolis
Link para o comentário
Compartilhar em outros sites

  • 0

Uma fábrica de veículos novos necessita de um sistema para o cálculo do preço de um automóvel 0 km que varia de acordo com os opcionais que o cliente deseja. Existem três itens opcionais:

1- Trio elétrico (alarme, vidro elétrico e tranca elétrica);

2- Ar condicionado;

3- Direção hidráulica;

O valor acrescido para cada item está relacionado ao preço básico do carro da seguinte forma:

1- trio elétrico: 2% do valor de fábrica sem o IPI.

2- ar condicionado: 2% do valor de fábrica sem o IPI.

3- direção hidráulica: 2% do valor de fábrica sem o IPI.

4- completo (trio elétrico, ar condicionado e direção hidráulica): a soma dos acréscimos isolados.

Os modelos completos estão com uma promoção adicional de

3.5% do valor total, sendo este composto pelo preço de fábrica acrescido dos opcionais e do valor do IPI.

Você foi escolhido para desenvolver um programa em C++ que, a partir do valor de fábrica do modelo, isto é, sem o IPI, calcule o preço final para venda.

Para a seleção dos acessórios, considere a elaboração de um menu em que a “opção 0” seja equivalente a “nenhum opcional”.

O IPI dos automóveis é de 8% do valor de fábrica.

Link para o comentário
Compartilhar em outros sites

  • 0

Olá!

Olha por alguma razão eu estava achando estranho esse seu problema, eu tinha a sensacao de estar vivendo um déjà vu, dei uma busca na net e encontrei estes Links:

https://www.scriptbrasil.com.br/forum/topic/179327-calculo-compra-carro-o-km/

http://forum.imasters.com.br/topic/536319-calculo-do-preço-de-automovel/

http://forum.imasters.com.br/topic/536040-menu-com-contagem-de-opcoes-c/

Tente dar uma olha neles e veja se consegue algo, talvez eu dê uma lida mais detalhada neles mais tarde.

Acredito que um deles vai resolver o seu problema . . .

Espero Ter Ajudado ! ! !

Link para o comentário
Compartilhar em outros sites

  • 0

No meu entender da opção 4 temos:

valor_extra = carro * 0.06f; //é o mesmo que 6% do valor do carro, 6% pois são 3 opcionais que taxa 2% cada um.

valor_extra = valor_extra + carro * 0.08; //é valor_extra mais a taxa de IPI do valor do carro.

valor_extra = (valor_extra + carro) * (1 - 0.035f); //agora temos o (-)desconto de 3,5% do valor do carro.

valor_completo = valor_extra; //com todas as taxas, descontos e valor do carro e concluída a opção completa.

Será que estou certo ou errado!?

Tapatalk Mobile

Editado por britivaldo
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...