0

Calculating NetRevenue with Taxes

My code is saying my method cannot be applied to given types. Could someone help me? The code I have so far is: https://code.sololearn.com/ce6ZC681er65/?ref=app

7th Feb 2021, 7:55 PM
Guy Robbins
8 Réponses
+ 2
Guy Robbins change your code for the following method to this , public void CalculateNetRevenue(){ int n = this.totalIncome; int m = this.taxPercent; this.netRevenue = n-n*m/100; } Your code requires you to pass two arguments for the above code as you have parameters specified for it.
7th Feb 2021, 8:21 PM
Abhay
Abhay - avatar
+ 3
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner read = new Scanner(System.in); int totalIncome = read.nextInt(); int taxPercent = read.nextInt(); //creating an Income object Income income = new Income(); income.totalIncome = totalIncome; income.taxPercent = taxPercent; income.CalculateNetRevenue(totalIncome, taxPercent); System.out.println("Net revenue: " + income.getNetRevenue()); } } //Please Subscribe to My Youtube Channel //Channel Name: Fazal Tuts4U class Income{ public int totalIncome; public int taxPercent; //the net revenue is private private int netRevenue; //complete setter method public void CalculateNetRevenue(int totalIncome, int taxPercent){ this.netRevenue = this.totalIncome - (this.totalIncome*this.taxPercent)/100; } //complete getter method public int getNetRevenue(){ return this.netRevenue; } }
4th Sep 2021, 8:24 AM
Fazal Haroon
Fazal Haroon - avatar
0
I think on line 30 when you use division, it's giving you float or double, so you have to use type casting to get int
7th Feb 2021, 8:18 PM
Sattar
Sattar - avatar
0
method is declaring as public void CalculateNetRevenue(int n, int m){ but you call it without any arguments. income.CalculateNetRevenue();
7th Feb 2021, 8:28 PM
zemiak
0
Thank you Abhay that worked. May I ask just to understand better why in this example I did not have to use parameters for my CalculateNetRevenue() method?
7th Feb 2021, 8:39 PM
Guy Robbins
0
Guy Robbins In the following piece of code , """ income.totalIncome = totalIncome; income.taxPercent = taxPercent; income.CalculateNetRevenue(); """ You are already assigning user input values (totalIncome and taxPercent) to class variables , so why would need parameters for a method that just won't do anything ? See the following code , """ public void CalculateNetRevenue(int n, int m){ n = totalIncome; m = taxPercent; """ totalIncome and taxPercent are already assigned . Now what you think the above code is doing ? Even if you pass values to this method they won't affect the result at all. Our user input totalIncome will be assigned to variable m , so you see there is no need for those parameters ! let me know if still something doesn't makes sense.
7th Feb 2021, 8:51 PM
Abhay
Abhay - avatar
0
Okay I think I am understanding a little bit more thank you for your feedback Abhay. I do appreciate it.
7th Feb 2021, 8:57 PM
Guy Robbins
0
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner read = new Scanner(System.in); int totalIncome = read.nextInt(); int taxPercent = read.nextInt(); //creating an Income object Income income = new Income(); income.totalIncome = totalIncome; income.taxPercent = taxPercent; income.CalculateNetRevenue(); System.out.println("Net revenue: " + income.getNetRevenue()); } } class Income{ public int totalIncome; public int taxPercent; //the net revenue is private //That is why we use a getter and setter method private int netRevenue; //complete setter method public void CalculateNetRevenue(){ this.netRevenue = totalIncome-totalIncome*taxPercent/100; } //complete getter method public int getNetRevenue(){ return netRevenue; } }
14th Jul 2021, 12:16 AM
Gowri Kumar
Gowri Kumar - avatar