Newb Java programmeur ici, Pourquoi cette calculatrice ne calcule-t-elle pas?Java - Calculatrice d'impôt simple en utilisant les instructions If et if
Le programme doit entrer le revenu de l'utilisateur, puis produire son impôt fédéral en fonction des calculs.
Règles fiscales fédérales: 15% au premier 45282 $ de revenu imposable, + 20,5% sur la prochaine 45281 $ de revenu imposable (sur la partie du revenu imposable sur 45282 $ jusqu'à 90563 $), + 26 % sur le prochain 49825 $ de revenu imposable (sur la partie du revenu imposable sur 90563 $ jusqu'à 140388 $), +
entrée:
Entrez marque: 85
sortie:
année est: A
entrée:
Entrez marque: 110
sortie:
Entrez une valeur comprise entre 0 et 100
entrée:
Entrez marque: 79,5
sortie:
Grade est: B +
entrée:
Entrez marque : -10
sortie:
Entrez une valeur comprise entre 0 et 100 29% sur le prochain 59612 $ de revenu imposable (sur la partie du revenu imposable plus 140388 $ à 200 000 $ ), + 33% du revenu imposable de plus de 200 000 $.
package practiceproblab4;
import java.util.Scanner;
/**
*
* @author JAVA NEWB
*/
public class PracticeProbLab4 {
/**
* @param args the command line arguments
*/
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println("Enter your Income: ");
String In = sc.nextLine();
Double Income = Double.parseDouble(In);
calculateAndPrintTax(Income);
System.out.println("Your taxes are: " + TotalTax);
}
static double calculateAndPrintTax(double Income, double Tax)
{
double tax;
double difftax1;
double difftax2;
double difftax3;
double difftax4;
double TotalTax;
if ((Income >= 45282) && (Income <= 200000))
{
if(Income<=45282)
{
tax = 45282 * 0.15;
TotalTax = tax;
}
else if (Income > 45282 && Income <= 90653)
{
tax = 45282 * 0.15;
difftax1 = (Income - 45282)* .205;
TotalTax = tax + difftax1;
}
else if ((Income >90563) && (Income <= 140388))
{
tax = 45282 * 0.15;
difftax1 = (Income - 45282) * .205;
difftax2 = (Income - 90563) * 0.26;
TotalTax = tax + difftax1 + difftax2;
}
else if ((Income > 140388) && (<= 200000))
{
tax = 45282 * 0.15;
difftax1 = (Income - 45282) * .205;
difftax2 = (Income - 90563) * 0.26;
difftax3 = (Income - 140388) * 0.29;
TotalTax = tax + difftax1 + difftax2 + difftax3;
}
else if ((Income > 200000))
{
tax = 45282 * 0.15;
difftax1 = (Income - 45282) * .205;
difftax2 = (Income - 90563) * 0.26;
difftax3 = (Income - 140388) * 0.29;
difftax4 = (Income - 200000) * 0.33;
TotalTax = tax + difftax1 + difftax2 + difftax3 + difftax4;
}
else ((Income > 200000))
{
tax = 45282 * 0.15;
difftax1 = (Income - 45282) * .205;
difftax2 = (Income - 90563) * 0.26;
difftax3 = (Income - 140388) * 0.29;
difftax4 = (Income - 200000) * 0.33;
TotalTax = tax + difftax1 + difftax2 + difftax3 + difftax4;
return TotalTax;
}
}
}
}
Quelle exception obtenez-vous? – ramasCoder
Un problème qui saute est que «double TotalTax» est déclaré dans «calculateAndPrintTax». Cela signifie qu'il n'est pas visible dans la méthode 'main' lorsque vous essayez d'imprimer' TotalTax' –
Un autre problème: 'calculateAndPrintTax' nécessite 2 paramètres, mais vous ne passez qu'un seul argument dans' main' –