Быстрый вопрос (java или C++)
наша компания должна увеличить зарплату всем сотрудникам со ставкой 10%, которые работают в течение 2 лет, и добавить еще 10% в год после 2-летнего опыта работы. программа должна отображать их зарплаты до и после расчета повышающей ставки
Что я уже пробовал:
я пытался, но у меня ничего не вышло
public class Employee { private String firstName; private String lastName; private double monthlySalary; public Employee(String name, String name2, double salary) { firstName = name; lastName = name2; monthlySalary = salary; } public void setFirstName(String name) { firstName = name; } public String getFirstName() { return firstName; } public void setLastName(String name) { lastName = name; } public String getLastName() { return lastName; } public void setmonthlySalary(double salary) { monthlySalary = salary; } public double getmonthlySalary() { return monthlySalary; } public double yearlySalary() { double yearlySalary; yearlySalary = (monthlySalary * 12); return yearlySalary; } public double yearlySalaryIncrease() { double yearlySalaryIncrease; yearlySalaryIncrease = (((yearlySalary() * (0.1)) + yearlySalary())); return yearlySalaryIncrease; } public void displayYearlySalary() { System.out.printf("%s %s's Yearly Salary is $%.2f\n", firstName, lastName, yearlySalary()); } public void displayYearlySalaryIncrease() { System.out.printf("%s %s = $%.2f\n", firstName, lastName, yearlySalaryIncrease()); } }
import java.util.Scanner; public class EmployeeTest { public static void main(String[] args) { Employee employee1 = new Employee("first", "last", 0.0); Employee employee2 = new Employee("first", "last", 0.0); Scanner input = new Scanner(System.in); String firstName; String lastName; double monthlySalary; System.out.println("Enter details of employee1:\n"); System.out.print("Enter First Name: "); firstName = input.next(); employee1.setFirstName(firstName); employee1.getFirstName(); System.out.print("Enter Last Name: "); lastName = input.next(); employee1.setLastName(lastName); employee1.getLastName(); System.out.print("Enter Monthly Salary: "); monthlySalary = input.nextDouble(); if (monthlySalary > 0) //if monthly salary is not positive do not set its value employee1.setmonthlySalary(monthlySalary); employee1.getmonthlySalary(); System.out.println(); System.out.println("Enter details of employee2:\n"); System.out.print("Enter First Name: "); firstName = input.next(); employee2.setFirstName(firstName); employee2.getFirstName(); System.out.print("Enter Last Name: "); lastName = input.next(); employee2.setLastName(lastName); employee2.getLastName(); System.out.print("Enter Monthly Salary: "); monthlySalary = input.nextDouble(); if (monthlySalary > 0) //if monthly salary is not positive do not set its value employee2.setmonthlySalary(monthlySalary); employee2.getmonthlySalary(); System.out.println(); employee1.yearlySalary(); employee2.yearlySalary(); employee1.displayYearlySalary(); System.out.println(); employee2.displayYearlySalary(); System.out.println(); employee1.yearlySalaryIncrease(); employee2.yearlySalaryIncrease(); System.out.printf("Congratulations to %s %s and %s %s. You just earned" + " for yourselves a 10%c increase in your yearly salaries. " + "\nYour new yearly salaries are:\n\n", employee1.getFirstName(), employee1.getLastName(), employee2.getFirstName(), employee2.getLastName(), '%'); employee1.displayYearlySalaryIncrease(); System.out.println(); employee2.displayYearlySalaryIncrease(); } }
Patrice T
Покажите свой код с образцами ввода и вывода.
Member 13744927
служащий государственного класса {
частная строку "имя";
частная строку "фамилия";
частный двухместный месячник;
государственный служащий(строковое имя, строковое имено2, двойная зарплата) {
имя = имя;
фамилия = name2;
monthlySalary = зарплата;
}
public void setFirstName(строковое имя) {
имя = имя;
}
публичная строка getFirstName() {
вернуть имя пользователя;
}
public void setLastName(строковое имя) {
фамилия = имя;
}
публичная строка getLastName() {
вернуть фамилию;
}
public void setmonthlySalary(двойная зарплата) {
monthlySalary = зарплата;
}
публичный двойной getmonthlySalary() {
возвращение ежемесячно;
}
публичный двойной yearlySalary() {
двойной годичный саларий;
yearlySalary = (monthlySalary * 12);
возвращение yearlySalary;
}
общественные двойной yearlySalaryIncrease() {
двукратное годовалое увеличение;
yearlySalaryIncrease = (((yearlySalary() * (0.1)) + yearlySalary()));
возвращение yearlySalaryIncrease;
}
общественного недействительными displayYearlySalary() {
System.out.printf ("годовая зарплата%s %s составляет $%.2f\n", имя, фамилия,
yearlySalary());
}
общественного недействительными displayYearlySalaryIncrease() {
Системы.из.функции printf("%ы %ы = $%.2Ф\п", "имя", "фамилия", yearlySalaryIncrease());
}
}
импорт java.util.Сканер;
публичный класс EmployeeTest {
публичный статический пустота главный(строка[] аргументы) {
Employee employee1 = новый сотрудник("первый", "последний", 0.0);
Employee employee2 = новый сотрудник("первый", "последний", 0.0);
Вход сканера = новый сканер(System.in);
Строку "имя";
Строку "фамилия";
двойной месячник;
System.out.println("введите данные employee1:\n");
System.out.print("введите имя: ");
имя = ввод.далее();
employee1.setFirstName(имя);
employee1.методы getfirstname();
System.out.print("введите фамилию: ");
фамилия = input.next();
employee1.setLastName(фамилия);
employee1.getLastName();
System.out.print("введите месячную зарплату: ");
monthlySalary = input.nextDouble();
if (monthlySalary > 0) //если месячная зарплата не положительна, не устанавливайте ее значение
employee1.setmonthlySalary(месячник);
employee1.getmonthlySalary();
Системы.из.код println();
System.out.println("введите данные employee2:\n");
System.out.print("введите имя: ");
имя = ввод.далее();
employee2.setFirstName(имя);
employee2.методы getfirstname();
System.out.print("введите фамилию: ");
фамилия = input.next();
employee2.setLastName(фамилия);
employee2.getLastName();
System.out.print("введите месячную зарплату: ");
monthlySalary = input.nextDouble();
if (monthlySalary > 0) //если месячная зарплата не положительна, не устанавливайте ее значение
employee2.setmonthlySalary(месячник);
employee2.getmonthlySalary();
Системы.из.код println();
employee1.yearlySalary();
employee2.yearlySalary();
employee1.displayYearlySalary();
Системы.из.код println();
employee2.displayYearlySalary();
Системы.из.код println();
employee1.yearlySalaryIncrease();
employee2.yearlySalaryIncrease();
Системы.из.функции printf("поздравления к %S %S и %S в %S. Вы только что заработали"
+ " для себя 10% - ную прибавку к вашей годовой зарплате. "
+ "\nYour новый годовой зарплаты:\н\н", employee1.методы getfirstname(),
employee1.getLastName(), employee2.getFirstName(),
employee2.getLastName(), '%');
employee1.displayYearlySalaryIncrease();
Системы.из.код println();
employee2.displayYearlySalaryIncrease();
}
}
Richard MacCutchan
И в чем же проблема? Помимо того, что вы не должны использовать типы float/double для финансовых расчетов.
nv3
Что вы подразумеваете под "java или C++"? Это тот или другой? И кроме того, если вы не можете решить такую проблему самостоятельно, вы, вероятно, не заслуживаете этой 10% - ной прибавки к зарплате :-)