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

Dúvida na lógica


alex_dino

Pergunta

Só qurero ver se minha lógica está certá para este problema.

Ler as seguintes informações do cliente: idade,codigo do remedio,e quantidade.

Informar, para cada cliente lido, o valor a ser pago

* Se o cliente for maior ou igual a 60 anos,havera um desconto de 20% sobre o valor a ser pago

* Se o cliente comprar pelo menos 2 unidades do remedio, ele recebe um desconto de 15% sobre

o preço anterior (caso o cliente já tenha obtido desconto)

* O cliente pode obter nenhum, um ou dois descontos

for (pos=0;pos<TAM;pos++){
                   
                   if ((idade<60)&&(quantidade==1)){
                       vet_codigos[pos]=vet_preco[pos];
                       valor_a_ser_pago=vet_codigos[pos];
                   }
                   else if ((idade<60)&&(quantidade==2)){
                            vet_codigos[pos]=vet_preco[pos];
                            valor_a_pagar_sem_des=(vet_codigos[pos]*2);
                            desconto_2=(valor_a_pagar_sem_des*15)/100;
                            valor_a_ser_pago=(valor_a_pagar_sem_des - desconto_2);
                        }
                        else if ((idade>60)&&(quantidade==2)){
                                  vet_codigos[pos]=vet_preco[pos];
                                  valor_a_pagar_sem_des=(vet_codigos[pos]*2);
                                  desconto_1=(valor_a_pagar_sem_des*20)/100;
                                  desconto_2= (valor_a_pagar_sem_des*15)/100;
                                  valor_a_ser_pago= (valor_a_pagar_sem_des - desconto_1- desconto_2);
                                   printf ("Valor a pagar %lf ",valor_a_ser_pago);
                             }

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Ta mais ou menos certo , mas da pra melhorar esse codigo ae , ta uma zona , variaveis acima do escopo aonde são usadas para que? , voce chama ela em outra parte do programa?

vet_codigos[pos]=vet_preco[pos];
valor_a_pagar_sem_des=(vet_codigos[pos]*2);
pra que igualar o array vet_codigos com o vet_preco ? :S lol usa o vet_preco direto. Voce tem que falar se é em C ou C++ que se ta programando , se não fica meio dificio te ajudar.
if ((idade<60)&&(quantidade==1)){
                       vet_codigos[pos]=vet_preco[pos];
                       valor_a_ser_pago=vet_codigos[pos];
                   }
LOL mesma coisa que
if ((idade<60)&&(quantidade==1))
                       valor_a_ser_pago=vet_preco[pos];
if ((idade<60)&&(quantidade==2)){
                            vet_codigos[pos]=vet_preco[pos];
                            valor_a_pagar_sem_des=(vet_codigos[pos]*2);
                            desconto_2=(valor_a_pagar_sem_des*15)/100;
                            valor_a_ser_pago=(valor_a_pagar_sem_des - desconto_2);
                        }
Então se o sujeito tiver menos que 60 anos ele vai pagar o dobro do preço do item menos 15% ? melhorando esse codigo ainda mais
if(idade < 60){
if(quantidade == 1)

valor_a_ser_pago = valor_a_ser_pago=vet_codigos[pos];
else
valor_a_ser_pago = (vet_codigos[pos]*2) - ((vet_codigos[pos]*15) / 100);

}

E ainda da pra melhorar mais isso ae

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,3k
×
×
  • Criar Novo...