TS
Sample Code
// src/dividendLife.ts
class DividendLife {
private livingExpenses: number; // Monthly
private dividendYield: number; // Annual yield
constructor(livingExpenses: number, dividendYield: number) {
this.livingExpenses = livingExpenses;
this.dividendYield = dividendYield;
}
calcRequiredAmount(): number {
// requiredAmount * (dividendYield / 100) / 12 = livingExpenses
const requiredAmount: number = this.livingExpenses / (this.dividendYield / 100 / 12);
return requiredAmount;
}
}
export default DividendLife;
// src/main.ts
import DividendLife from "./dividendLife";
const main = () => {
const args = process.argv.slice(2);
console.log({ args });
const livingExpenses = Number(args[0]);
const dividendYield = Number(args[1]);
if (isNaN(livingExpenses) || isNaN(dividendYield)) {
console.log("Please enter two numeric args");
}
const dividendLife = new DividendLife(livingExpenses, dividendYield);
const requiredAmount = dividendLife.calcRequiredAmount();
console.log("The amount needed is " + requiredAmount.toLocaleString());
}
main();
How to run
npm i ts-node typescript
ts-node ./src/main.ts 1700 3
The first argument is the amount needed per mongh.
The second argument is the dividend yield (%).
Java
Example Code
// src/main/java/DividendLife.java
public class DividendLife {
public static void main(String[] args) {
float livingExpenses = (float)Integer.parseInt(args[0]);
float dividendYield = (float)Integer.parseInt(args[1]);
DividendLife dividendLife = new DividendLife(livingExpenses, dividendYield);
float requiredAmount = dividendLife.calcRequiredAmount();
System.out.println(requiredAmount);
}
private float livingExpenses;
private float dividendYield;
DividendLife(float livingExpenses, float dividendYield) {
setLivingExpenses(livingExpenses);
setDividendYield(dividendYield);
}
public float calcRequiredAmount() {
// requiredAmount * (dividendYield / 100) / 12 = livingExpenses
return this.livingExpenses / (this.dividendYield / 100 / 12);
}
public void setLivingExpenses(float livingExpenses) {
this.livingExpenses = livingExpenses;
}
public void setDividendYield(float dividendYield) {
this.dividendYield = dividendYield;
}
}
How to run (IntelliJ)
Open the "Edit run configuration".
run
Top comments (0)