Calcular porcentagem entre dois valores C#

O primeiro erro é que está aplicando o desconto antes de dar o bônus, que é o contrário do que o enunciado determina.

Segundo que está calculando porcentagem errado mesmo. Está achando o percentual a ser aplicado, dividindo por 100, não sei porque, e não está aplicando ao total.

Como tanto o bônus, como o desconto deve ser dado em cima do salário base, fica fácil fazer a conta. A fórmula precisa pegar o valor total que é o seu 100%, então vamos normalizá-lo para 1 (daí vem a divisão por 100 que estava usando, você já faz ela antes de colocar no código). Depois normalizamos para 1 os percentuais, ou seja 5%, vira 0,05 (dividido por 100 novamente) e 7% vira 0,07. Então somamos o total (1) com o bônus (0,05) e subtraímos o desconto (0,07). Olha que fórmula simples.

Se quiser visualizar com a divisão:

salario = salario * (100 / 100 + 5 / 100 - 7 / 100)

Obviamente podemos simplificar isto. Já simplifiquei no código abaixo. No teste feito no ideone eu já fiz toda a conta.

Por fim, está usando variáveis demais. Não é um erro, mas é desnecessário.

Em um código real várias coisas poderiam ser feitas de forma diferente. Não vou falar que o tipo float não é adequado para valor monetário.

#include <stdio.h> int main() { float salario; printf("Digite o salario: "); scanf("%f", &salario); salario *= 1 + 0.05 - 0.07; printf("\nO salario com desconto: %f", salario); }

Veja funcionando no ideone. E no repl.it. Também coloquei no GitHub para referência futura.

Agora, vamos aprender a usar nossos conhecimentos básicos de C++ para fazer programas realmente úteis. De início, vamos ver como fazer para calcular os mais diversos tipos de porcentagens existentes.

Estas questões estão propostas no tutorial sobre Exercícios básicos de C++.

  • Baixar a Apostila C++ Progressivo
  • "Faça um programa que calcula 12% de 2112"

O próprio nome nos dá uma pista: porcentagem...por centagem ... por cem
Ou seja, devemos dividir por 100.

12 divido por 100 fica 0.12, então 12% de 2100 é:
0.12 * 2112

#include <iostream> using namespace std; int main() { cout << "12% de 2112= " << 0.12*2112; return 0; }
  • "Faça um programa que recebe um valor do usuário e calcula 12% desse total"

Agora, ao invés de multiplicar por 2112, vamos multiplicar por um valor que o usuário inseriu e armazenamos na variável num:

#include <iostream> using namespace std; int main() { float num; cout << "Digite um valor: "; cin >> num; cout << "12% de "<< num <<" = " << 0.12 * num; return 0; }
  • "Faça um programa que recebe um valor de porcentagem do usuário, e calcula quanto isso representa de um segundo valor que ele digitou.
    Por exemplo, se ele digitar 4 e 400, seu programa deve calcular quanto é 4% de 400"

#include <iostream> using namespace std; int main() { float percentage, num; cout << "Valor da porcentagem: "; cin >> percentage; percentage = percentage/100; cout << "Segundo valor: "; cin >> num; cout << percentage <<"% de " << num << " = "<< percentage*num; return 0; }

Note o usuário vai digitar um valor, como 12 para calcular 12%
Mas no cálculo, não usamos 12 e sim 0.12 (esse valor por um cento, ou seja, esse valor dividido por 100).

Então, vemos essa novidade:
percentage = percentage / 100;

A priori, parece algo estranho, mas estamos apenas dividindo a variável percentage por 100.
Isso quer dizer: o valor antigo de percentage é igual ao valor antigo dividido por 100.

Você poderia ter feito isso declarando outra variável aux:
aux = percentage / 100;
percentage = aux;

Mas aí ia alocar memória à toa, melhor fazer o que fizemos no código, é mais simples, rápido e eficiente (sim, programadores são preguiçosos, querem sempre escrever a menor quantidade de código possível).

Porcentagens em C++


  • "Programe um software que recebe dois números, onde o primeiro deve ser menor que o segundo. Em seguida, ele calcula a porcentagem que o primeiro representa do segundo. Por exemplo, se digitou 12 e 21, isso quer dizer que 12 representa 57,14% de 21"

#include <iostream> using namespace std; int main() { float first, second; cout << "Primeiro numero: "; cin >> first; cout << "Segundo numero: "; cin >> second; cout << first <<"% de " << second << " = "<< (first/second)*100.0; return 0; }

Aqui, a única coisa de diferente é lembrar de multiplicar por 100, para exibir o resultado em porcentagem.

Como calcular porcentagem em C++


  • "Você se tornou programador C++, e agora está ganhando super bem. Mas, mesmo assim, vai ter que pagar impostos. Crie um software que recebe o valor do seu salário e calcula os 7% do imposto de renda.
    A saída do seu programa deve ser o salário bruto (sem abatimento), o tanto de imposto que vai pagar e o seu salário líquido (após descontar o IR)."

#include <iostream> using namespace std; int main() { float salary; cout << "Qual seu salário: "; cin >> salary; cout << "Salário bruto: $ " << salary << endl; cout << "7% de imposto: $ " << 0.07*salary << endl; cout << "Salário líquido: $ " << 0.93*salary << endl; return 0; }

Se é descontado 7%, significa que você recebe 93% do salário bruto, que é o líquido.

Como fazer porcentagem em C++


  • "Devido a inflação, todo ano seu salário deve ser ajustado baseado nela.
    Por exemplo, se a inflação foi 2,5% então seu salário deve crescer nesse mesmo montante, para não perder valor.
    Crie um programa em C++ que pergunta o salário da pessoa, a inflação do último ano e aplique essa inflação. Mostre o salário anterior, o aumento devido a inflação e o novo salário."

O aumento do salário corresponde ao valor anterior multiplicado por 0.025 (2,5%).
Já o novo salário é o anterior mais esses 2,5%: 1 + 0.025 = 1.025 * (salário anterior).

Veja:

#include <iostream> using namespace std; int main() { float salary; cout << "Qual seu salário: "; cin >> salary; cout << "Salário anterior: $ " << salary << endl; cout << "Aumento de 2.5%: $ " << 0.025*salary << endl; cout << "Novo salário: $ " << 1.025*salary << endl; return 0; }

E tome Porcentagem

"Na cidade de C++lândia há uma tolerância de 15% do limite de velocidade, para não se levar uma multa. Faça um programa que pede ao usuário a velocidade máxima de uma via e calcula até que velocidade o carro pode transitar sem ser multado. Seu código vai ser embarcado no sistema de GPS do carro, para avisar o limite de velocidade que o carro deve percorrer."

Se a velocidade máxima da via é speed, então a velocidade máxima com a tolerância pra não levar multa é: 100% + 15% = 115% = 1.15 * speed

#include <iostream> using namespace std; int main() { float speed; cout << "Velocidade máxima: "; cin >> speed; cout << "Velocidade máxima: " << speed << endl; cout << "Tolerância de 15%: " << 0.15*speed << endl; cout << "Velocidade máxima sem multa " << 1.15*speed << endl; return 0; }

Como calcular porcentagem na C?

Porcentagem C++ Mas no cálculo, não usamos 12 e sim 0.12 (esse valor por um cento, ou seja, esse valor dividido por 100). Então, vemos essa novidade: percentage = percentage / 100; A priori, parece algo estranho, mas estamos apenas dividindo a variável percentage por 100.

Como calcular a diferença entre duas porcentagens?

O resultado é expresso em percentagem (com os valores absolutos, falar-se-ia apenas de uma diferença) e designado por taxa de variação ou, ainda, variação em percentagem. Esta é calculada do seguinte modo: [(valor no momento posterior ÷ valor no momento anterior) - 1] × 100.

Toplist

Última postagem

Tag