<< Chapter < Page | Chapter >> Page > |
/* Compute compound interest */
#include<iostream.h>
#include<iomanip.h>
#define YMAX 50
void interest(double, double, int, double []);
int main()
{
double deposit, rate;
int i, years;
double compounded[YMAX];
cout<<“\n ENTER DEPOSIT, INTEREST RATE, NUMBER OF YEARS \n”;
cin>>deposit>>rate>>years;
cout<<endl;
if(years>YMAX)
cout<<”\n Number of years must be less than
or equal”<<YMAX;
else
{
interest(deposit, rate, years, compounded);
for( i = 0; i<years; ++i)
cout<<i+1<<setw(25)<<compounded[i]
<<endl;
}
cout<<endl;
return 0;
}
void interest(double deposit, double rate,
int years, double cp[])
{
int i;
for( i = 0; i<years; ++i){
deposit = deposit*(1.0 + rate);
cp[i] = deposit;
}
}
Example
In the following program, we have to search an integer array for a given element. We use linear search in which each item in the array is examined sequentially until the desired item is found or the end of the array is reached.
#include<iostream.h>
int linearSearch( int [], int, int);
int main()
{
const int arraySize = 100;
int a[arraySize], searchkey, element;
for (int x = 0; x<arraySize, x++)
// create some data
a[x] = 2*x;
cout<<“Enter integer search key: “<<endl;
cin>>searchKey;
element = linearSearch(a, searchKey, arraySize);
if(element !=-1)
cout<<”Found value in element “<<element
<<endl;
else
cout<<“Value not found “<<endl;
return 0;
}
int linearSearch(int array[], int key, int sizeofArray)
{
for(int n = 0; n<sizeofArray; n++)
if (array[n] = = key)
return n;
return –1;
}
In this section, we discuss one of the most powerful features of the C++ programming language, the pointer . Pointers are among C++’s most different capabilities to master. In section Pass by Reference , we saw that references can be used to perform call-by-reference. Pointers enable programs to simulate call-by-reference and to create and manipulate dynamic data structures (i.e., data structures that can grow and shrink).
A pointer is a special type of variable that stores the memory address of other variables.
You declare a variable as a pointer by placing the indirection operator (*) after the data type or before the variable name.
Examples:
int *pFirstPtr;
int *pSecondPtr;
You use the address-of operator (&) to assign to the pointer variable the memory address of another variable.
Examples:
double dPrimeInterest;
double *pPrimeInterest;
pPrimeInterest =&dPrimeInterest;
Once you assign the memory address of a variable to a pointer, to access or modify the contents of the variable pointed to by the pointer, you precede a pointer name in an expression with the de-reference (*) operator.
Example
The program in this example demonstrates the pointer operators. Memory locations are output in this example as hexadecimal integers.
#include<iostream.h>
int main()
{
int a;
int *aPtr; // aPtr is a pointer to an integer
a = 7;
aPtr =&a; //aPtr set to address of a
cout<<“The address of a is “<<&a
<<“\nThe value of aPtr is “<<aPtr;
cout<<“\n\nThe value of a is “<<a
<<“\nThe value of *aPtr is “<<*aPtr
<<endl;
return 0;
}
The output of the above program:
The address of a is 0x0065FDF4
The value of aPtr is 0x0065FDF4
Notification Switch
Would you like to follow the 'Programming fundamentals in c++' conversation and receive update notifications?