コード例 #1
0
ファイル: main.cpp プロジェクト: Khillasaurus/School
void displayAccounts(int *aPtr, float *irPtr, float *iaPtr, int accountNum)
{
	int choice = 0;

	printf("Account#: %d\n",accountNum+1);
	printf("\tBalance:\t%d\n",*(aPtr+accountNum));
	printf("\tInterest Rate:\t%.2f\n",*(irPtr+accountNum));
	printf("\tInterest:\t%.2f\n",*(iaPtr+accountNum));

	printf("Select one of the following options:\n");
	printf("1 - Deposit\n");
	printf("2 - Withdraw\n");
	printf("3 - Done\n");
	scanf("%d",&choice);
    while(choice<1 || choice >3)
    {
        printf("You have entered an invalid option. Please choose again.\n");
        printf("Please select one of the following options:\n");
        printf("1 - Deposit\n");
        printf("2 - Withdraw\n");
        printf("3 - Done\n");
        scanf("%d",&choice);
    }

    if(choice==1)
    {
        deposit(aPtr, accountNum);
        calculateInterest(aPtr, irPtr, iaPtr, accountNum);

        printf("Account#: %d\n",accountNum+1);
        printf("\tBalance:\t%d\n",*(aPtr+accountNum));
        printf("\tInterest Rate:\t%.2f\n",*(irPtr+accountNum));
        printf("\tInterest:\t%.2f\n",*(iaPtr+accountNum));
    }
    else if(choice==2)
    {
        withdraw(aPtr, accountNum);
        calculateInterest(aPtr, irPtr, iaPtr, accountNum);

        printf("Account#: %d\n",accountNum+1);
        printf("\tBalance:\t%d\n",*(aPtr+accountNum));
        printf("\tInterest Rate:\t%.2f\n",*(irPtr+accountNum));
        printf("\tInterest:\t%.2f\n",*(iaPtr+accountNum));
    }
    else
    {
        printf("Account#: %d\n",accountNum+1);
        printf("\tBalance:\t%d\n",*(aPtr+accountNum));
        printf("\tInterest Rate:\t%.2f\n",*(irPtr+accountNum));
        printf("\tInterest:\t%.2f\n",*(iaPtr+accountNum));
    }

	return;
}
コード例 #2
0
/* Takes all of the variables to create the output table */
void outputToTable(double rate, double borrowed, double payment) {
    printf("\nr = %.2lf\nB = %.2lf\nP = %.2lf \n\n", rate, borrowed, payment); // Prints original info.

    double balance = borrowed;
    double interest = 0, totalI = 0;
    int month = 1;
    while (balance > 0) {
        interest = calculateInterest(rate, borrowed, payment, balance);
        totalI += interest;
        printf("%d %.2lf %.2lf\n", month, interest, balance);
        balance = (balance - payment) + interest;
        month++;

        if (balance <= 0) { // Prints pay-off point
            interest = calculateInterest(rate, borrowed, payment, balance);
            printf("%d %.2lf %.2lf\n", month, interest, balance);
        }
    }

    printf("\ntotal interest paid: $%.2lf\n\n", totalI);
}
コード例 #3
0
ファイル: Currency.cpp プロジェクト: shadow743/SAUnitedCoin
uint64_t Currency::calculateTotalTransactionInterest(const Transaction& tx, uint32_t height) const {
  uint64_t interest = 0;
  for (const TransactionInput& input : tx.inputs) {
    if (input.type() == typeid(MultisignatureInput)) {
      const MultisignatureInput& multisignatureInput = boost::get<MultisignatureInput>(input);
      if (multisignatureInput.term != 0) {
        interest += calculateInterest(multisignatureInput.amount, multisignatureInput.term, height);
      }
    }
  }

  return interest;
}
コード例 #4
0
ファイル: Currency.cpp プロジェクト: shadow743/SAUnitedCoin
uint64_t Currency::getTransactionInputAmount(const TransactionInput& in, uint32_t height) const {
  if (in.type() == typeid(KeyInput)) {
    return boost::get<KeyInput>(in).amount;
  } else if (in.type() == typeid(MultisignatureInput)) {
    const MultisignatureInput& multisignatureInput = boost::get<MultisignatureInput>(in);
    if (multisignatureInput.term == 0) {
      return multisignatureInput.amount;
    } else {
      return multisignatureInput.amount + calculateInterest(multisignatureInput.amount, multisignatureInput.term, height);
    }
  } else if (in.type() == typeid(BaseInput)) {
    return 0;
  } else {
    assert(false);
    return 0;
  }
}
//Show Menu
void SavingAccount::showMenu()
{
	char choice;
	do
    {
        system("cls");
        cout<<"+========================================+"<<endl;
        cout<<"|       Saving Account  Management       |"<<endl;
        cout<<"+========================================+"<<endl;
        cout<<"| 1. View Balance                        |"<<endl;
        cout<<"| 2. View Interest Amount                |"<<endl;
        cout<<"| 3. Credit                              |"<<endl;
        cout<<"| 4. Debit                               |"<<endl;
        cout<<"| 0. Exit to main menu                   |"<<endl;
		cout<<"+----------------------------------------+"<<endl;
        cout<<"| Your selection(0->2): ";
        fflush(stdin);
        cin>>choice;
        
        if(choice=='0') break;
        switch(choice)
        {
	        case '1':
				viewBalance();
	            break;
	        case '2':
	            calculateInterest();
	            break;
	        case '3':
	            credit();
	            break;
	        case '4':
	            debit();
	            break;
	        default:
				cout<<"Wrong choice!"<<endl;
	        	system("pause");
	        	break;
        }
    }while(1);
}
コード例 #6
0
ファイル: main.cpp プロジェクト: Khillasaurus/School
int main()
{
	int accounts[100];
	float interestRate[100];
	float interestAmmount[100];
	int *aPtr = &accounts[0];
	float *irPtr = &interestRate[0];
	float *iaPtr = &interestAmmount[0];
    srand(time(NULL));
	int accountNum = 0;

	initializeAccounts(aPtr);
	generateInterest(irPtr);
	calculateInterest(aPtr, irPtr, iaPtr);
	for(int j = 0; j < 100; j++)
	{
		displayAccounts(aPtr, irPtr, iaPtr, accountNum);
		accountNum++;
	}

	return 0;
}