Ir para conteúdo
eXtremedlL

Como utilizar corretamente else // else if

Recommended Posts

Olá pessoal, bom dia!

 

Estou tentando fazer um programa onde preciso ler o nome e o salário (bruto) do funcionário e posteriormente informar ao mesmo qual será salário liquido (já descontando a % do INSS).  Porém, quando digito um salario acima de R$1501, quem tem um desconto de 11%, o sistema me retorna a resposta do desconto de 10%. Alguém poderia me dizer aonde estou errando? (Acredito que sintaxe para o else está incorreta).

 

//Exercicio 32 - Salario vs Desconto
#include <iostream>
using namespace std;
int main ( ) {
    float dp9, dp10, dp11, sb, scd, sl;
    char name[100];
    
    dp9 = 0.09;
    dp10 = 0.10;
    dp11 = 0.11;
    
    cout<<endl<<"CALCULE O SEU SALARIO (JA DESCONTADO O VALOR % DO INSS)"<<endl;
    
    cout<<endl<<"De R$0 a R$800 = 09%; de R$ 801 a 1500 = 10%; de 1501 ou mais = 11%"<<endl;
    
    cout<<endl<<"AVISO: NAO UTILIZE VIRGULA. USE SOMENTE PONTO FINAL."<<endl;
    cout<<"MAS SO USE PONTO PARA REPRESENTAR CENTAVOS. EX: 11111.11"<<endl;
    
    cout<<endl;
    
    system ("pause");
    
    cout<<endl<<"Digite o seu nome: ";
    cin>>name;
    
    cout<<endl<<"Informe o seu salario bruto: ";
    cin>>sb;
    
        if ( sb <= 800.99 ) {
            scd = sb * dp9;
            sl = sb - scd;
            cout<<endl<<"Solicitante: "<<name<<endl;
            cout<<endl<<"Salario liquido (-9% INSS) = R$"<<sl<<endl;
        }
        else if ( sb >= 801.00 || ( 801.00 == 1500.99 ) ) {
            scd = sb * dp10;
            sl = sb - scd;
            cout<<endl<<"Solicitante: "<<name<<endl;
            cout<<endl<<"Salario liquido (-10% INSS) = R$"<<sl<<endl;
        }
        else if ( sb >= 1501.0 ) {
            scd = sb * dp11;
            sl = sb - scd;
            cout<<endl<<"Solicitante: "<<name<<endl;
            cout<<endl<<"Salario liquido (-11% INSS) = R$"<<sl<<endl;
        }
    
    cout<<endl;
    
    system ("pause");
    
    return (0);
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera, conseguir resolver o meu problema com a ajuda de um rapaz no facebook (que em parte estava no segundo e último else). Segue o novo código para os mesmos: 

 

        else if ( sb >= 801.00 && sb <= 1500 ) {
            scd = sb * dp10;
            sl = sb - scd;
            cout<<endl<<"Solicitante: "<<name<<endl;
            cout<<endl<<"Salario liquido (-10%% INSS) = R$"<<sl<<endl;
            }
        else {
            scd = sb * dp11;
            sl = sb - scd;
            cout<<endl<<"Solicitante: "<<name<<endl;
            cout<<endl<<"Salario liquido (-11%% INSS) = R$"<<sl<<endl;
            }

 

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 SirSmart
      Galera estou començando em C e preciso fazer um sisteminha para pegar bem os conceitos.
      alguém tem alguma ideia ou artigo do que posso fazer, alguém poderia me ajudar com isso por favor?
       
      Obrigado
    • Por k0walsk1
      Pessoal, eu estou implementando o algoritmo de dijkstra para resolver um problema da olimpíada brasileira de informática, mas não consigo compilar o programa porque há um erro que não consigo entender porque está ocorrendo nas linhas 43, 44 e 45, que no caso é:
      error: invalid types 'int[int]' for array subscript Aqui está o código completo em C++11:
      #include <bits/stdc++.h> #define mkp make_pair using namespace std; const int MAXN = 1010, INF = 0x3f3f3f3f; int n, m, p[MAXN], dist[MAXN]; vector<pii> g[MAXN]; typedef pair<int, int> pii; void Dijkstra(int s){ memset(dist, INF, sizeof dist); dist[s] = 0; priority_queue< pii, vector<pii>, greater<pii> > fila; fila.push(mkp(dist[s], s)); while(true){ int davez = -1, menor = INF; while(!fila.empty()) { int atual = fila.top().second; fila.pop(); if (!p[atual]) { davez = atual; break; } } if (davez == -1) break; p[davez] = 1; for(int i = 0; i < (int) g[davez].size(); i++){ int dist = g[davez][i].first, atual = g[davez][i].second; if (dist[atual] > dist[davez] + dist) { dist[atual] = dist[davez] + dist; fila.push(mkp(dist[atual], atual)); } } } } int main(){ int u, v, b; scanf("%d %d", &n, &m); for(int i = 0; i < m; i++){ scanf("%d %d %d", &u, &v, &b); g[u].push_back(mkp(b, v)); } Dijkstra(0); printf("%d\n", dist[n+1]); }  
    • Por alecram28
      Bom dia.
      Tenho o seguinte exercicio para fazer, comecei a fazer mas nao consigo terminar e nao sei se é bem isso. 
      Se alguem puder me ajudar, sou iniciante. Obrigado!
       
      Questao: Usando HTML, CSS e JS, escreva um algoritmo que leia o código de uma operação a partir o teclado e que realize a operação associada a esse código. O código é um valor inteiro. Os códigos
      e operações são listados abaixo:
      1 Área de um retângulo. Os valores da base e da altura do retângulo devem ser informados pelo usuário. OBS: aretângulo = base * altura.
      2 Área de um triângulo. Os valores da base e da altura do triângulo devem ser informados pelo usuário. OBS: atriângulo = (base * altura) / 2.
      3 Área de um círculo. O valor do raio do círculo deve ser informado pelo usuário. OBS: acírculo = 3,14 * (raio)2
      4 Área de um trapézio. Os valores da base maior, da base menor e da altura do trapézio devem ser informados pelo usuário. OBS: atrapézio = [(base maior + base menor) * altura] / 2.
       
       
       
      Meu código:
      html:
       
      <!DOCTYPE html>
      <html lang="pt-br">
      <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <title>Área figuras</title>
      <link rel="stylesheet" href="pratica06exercicio04.css">
      <script src="pratica06exercicio04.js" type="text/javascript"></script>
      </head>
      <body>
      <main>
      <h1>Área de Figuras Geométricas</h1>
      <h3>Informe o número da operação desejada:</h3>
      <h4>1- Área Retângulo<br>2-Área Triângulo<br>3-Área Círculo<br>4-Área Trapézio</h4>
      <div class="numero">Código <input type="number"id="cod"></div>
      <button onclick="codigo()">OK</button>
      <div id="operandos"></div>
      <div id="resultado"></div>
      </main>
      </body>
      </html>
       
       
       
       
      js:
       
      function codigo() {
      var c = document.getElementById("cod");
      switch (c) {
      case '1':
      operandosRetangulo()
      break;
      case '2':
      operandosTriangulo()
      break;
      case '3':
      operandosCirculo()
      break;
      case '4':
      operandosTrapezio()
      break;
       
      }
      }
       
      function limparTela() {
      var operandos = document.getElementById("operandos");
      var resultado = document.getElementById("resultado");
      operandos.style.display = "none";
      resultado.style.display = "none";
      }
       
      function operandosCirculo() {
      limparTela();
      var operandos = document.getElementById("operandos");
      operandos.innerHTML = "Informe o raio: <input type='number' id='raio'>" +
      "<br/>" + "<button onclick='areaCirculo ()'>OK</button>";
      operandos.style.display = "block";
      }

       
      function operandosRetangulo() {
      limparTela();
      var operandos = document.getElementById("operandos");
      operandos.innerHTML = "Informe a base: <input type='number' id='base'>" +
      "<br/>" +
       
      "Informe a altura: <input type='number'id='altura'>" +
      "<br/>" +
      "<button onclick='areaRetangulo ()'>OK</button>";
      operandos.style.display = "block";
      }
       
      function operandosTriangulo() {
      limparTela();
      var operandos = document.getElementById("operandos");
      operandos.innerHTML = "Informe a base: <input type='number' id='baset'>" +
      "<br/>" +
       
      "Informe a altura: <input type='number'id='alturat'>" +
      "<br/>" +
      "<button onclick='areaTriangulo ()'>OK</button>";
      operandos.style.display = "block";
      }
       
      function operandosTrapezio() {
      limparTela();
      var operandos = document.getElementById("operandos");
      operandos.innerHTML = "Informe a base maior: <input type='number' id='basema'>" +
      "<br/>" +
      "Informe a base menor: <input type='number' id='baseme'>" +
      "<br/>" +
       
      "Informe a altura: <input type='number'id='alturaz'>" +
      "<br/>" +
      "<button onclick='areaTrapezio ()'>OK</button>";
      operandos.style.display = "block";
      }

       
      function areaCirculo() {
      var raioSTR = document.getElementById("raio").value;
      var raio = parseFloat(raioSTR);
      var area = 3.14 * Math.pow(raio, 2);
      var resultado = document.getElementById("resultado");
      resultado.innerHTML = area;
      resultado.style.display = "block";
      }

       
      function areaRetangulo() {
      var baseSTR = document.getElementById("base").value;
      var alturaSTR = document.getElementById("altura").value;
      var base = parseFloat(baseSTR);
      var altura = parseFloat(alturaSTR);
      var area = base * altura;
      var resultado = document.getElementById("resultado");
      resultado.innerHTML = area;
      resultado.style.display = "block";
      }
       
      function areaTriangulo() {
      var bt = document.getElementById("baset").value;
      var at = document.getElementById("alturat").value;
      var baset = parseFloat(bt);
      var alturat = parseFloat(at);
      var areat = (bt * at) / 2;
      resultado.innerHTML = areat;
      resultado.style.display = "block";
      }
       
      function areaTrapezio() {
      var bma = document.getElementById("basema").value;
      var bme = document.getElementById("baseme").value;
      var az = document.getElementById("alturaz").value;
      var areatra = ((bma + bme) * az) / 2;
      resultado.innerHTML = areatra;
      resultado.style.display = "block";
       
      }

       
       
       
       
       
    • Por Maísa Andrade
      Galera! Preciso de um programa em linguagem C ou C ++ que faça binômios de Newton de grau N usando Triângulo de Pascal para resolver os índices! 
       
      O prof quer que digite o grau e apareça a sequência de binômios! 
       
      Alguem consegue me ajudar?? Urgente! 

       
       
    • Por Maísa Andrade
      Galera! Preciso de um programa em linguagem C ou C ++ que faça binômios de Newton de grau N usando Triângulo de Pascal para resolver os índices! 
       
      O prof quer que digite o grau e apareça a sequência de binômios! 
       
      Alguem consegue me ajudar?? Urgente! 
×

Informação importante

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