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

Problema sinistro


Rômulo_SD

Pergunta

Este exercicio tem um problema:

No intervalo se o preço do produto estiver entre 80 e 120

éra para aparecer a classificação "Normal"

mas só aparece normal até o valor 105, digitado pelo usuário,

porque isso acontece e como resolvo isso?

Obrigado

#include <iostream>

using namespace std;

int main()
{
    int p;
    cout << "Digite o preço do produto" << endl;
    cin>>p;

    if(p<=0)
    {
        cout<<"valor invalido"<<endl;
        return 0;
    }
    if (p<50)
    {
        p+=p*5/100;
        cout << "Este e o novo preço com aumento de 5%: "<<p<<endl;
    }
    if((p>=50) && (p<=100))
    {
        p+=p*10/100;
        cout << "Este e o novo preço com aumento de 10%: "<<p<<endl;

        if(p<80)
        {
            cout<<"Classificacao:Barato"<<endl;

        }

    }


    else if(p>100)
    {

        p+=p*15/100;
        cout << "Este e o novo preço com aumento de 15%: "<<p<<endl;
    }
    if ((p>=80)&&(p<=120))
        cout<<"Clasificacao:Normal"<<endl;


    if ((p>120) && (p<=200))
        cout<<"Classificacao:Caro"<<endl;
    if (p>200)
        cout<<"Classificacao:Muito Caro"<<endl;






    return 0;
}

Editado por kuroi
Adicionar tag CODE
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Opa, o erro ocorre porque faltou você abriu e fechar { } (chaves).

Deveria ser assim:

if ((p>=80)&&(p<=120))
 {
    cout<<"Clasificacao:Normal"<<endl; 
 }
Dicas: 1) Procure colocar os códigos dentro de tag code, para facilitar o nosso entendimento, pois da forma que você colocou fica muito "bagunçado" para ler. 2) Como se trata de varios "if", eu aconselharia fazer um "switch", para facilitar o entendimento, e você não se perder, é apenas uma dica, mas fica ao seu critério. Caso não saiba fazer, poste ai que te ajudo. 3) Eu faria assim:
#include <iostream>
#include <stdlib.h>

using namespace std;

   int main()
   {

      int p=0;
      cout << "Digite o preço do produto:" << endl;
      cin>>p;


      if(p<=0){
          cout<<"valor invalido"<<endl;
          system("pause");
          return 0;}

      if (p<50){    
          p+=p*5/100;
          cout << "Este e o novo preço com aumento de 5%: "<<p<<endl;}

   
      if((p>=50 && p<=100)){
           
           p+=p*10/100;
           cout << "Este e o novo preço com aumento de 10%: "<<p<<endl;
            
           if(p<80){
           cout<<"Classificacao:Barato"<<endl;}  
      } 


      if(p>100)
      {
            p+=p*15/100;
            cout << "Este e o novo preço com aumento de 15%: "<<p<<endl;

            //Se produto é maior do que 100, certamente é maior do que 80.(p>=80)
            //Poderia usar apenas uma condição
            if (p<=120){
                cout<<"Clasificacao:Normal"<<endl;}

                     
            if ((p>120) && (p<=200)){
            cout<<"Classificacao:Caro"<<endl;}
                       
    
            if (p>200){
            cout<<"Classificacao:Muito Caro"<<endl;} 

      }
   system("pause");
   return 0;

}//main

Editado por Prog_Junior
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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...