Lomas
May 6th, 2006, 01:16 PM
hello
good day!
following is my insertion sort program to sort a set of numbers ascendingly.
#include <iostream>
using namespace std;
class Sorting { //sorting class
private:
int number[];
int num[];
int sun;
public:
void setNumber(int, int, int, int);
int getNumber();
void insertionSort(int*, int);
void print();
};
void Sorting::setNumber(int n1, int n2, int n3,int n4) //setter for the set of numbers
{
int num[] = {n1, n2, n3, n4};
int *kums = num;
sun = *kums;
}
int Sorting::getNumber() //getter for the set of numbers
{
return sun;
}
void Sorting::insertionSort(int numbers[], int array_size) //insertion sort
{
int i, j, index;
for (i=1; i < array_size; i++)
{
index = numbers[i];
j = i;
while ((j > 0) && (numbers[j-1] > index))
{
numbers[j] = numbers[j-1];
j = j - 1;
}
numbers[j] = index;
}
}
void Sorting::print() // to print out the sorted set of numbers
{
for (int i=0; i<4; i++){
cout<<num[i]<<endl;
}
}
int main () {
int result;
int num1, num2, num3, num4;
Sorting a; //created an object, lets name it a
cout<<"Numbers to insert -> ";
cin>> num1>> num2>> num3>> num4; //user enters the 4 numbers
a.setNumber(num1,num2,num3,num4); // assign the numbers
a.insertionSort(a.getNumber(),4); //to sort the numbers (compilation error here)
a.print(); //print out the sort elements
system("PAUSE");
return 0;
}
could someone please copy and paste the whole source code, try to compile and help me find out the errors.
my compiler is dev C++
i got this error message: 66 invalid conversion from `int' to `int*'
a.insertionSort(a.getNumber(),4); <----- this line
i really appreciate your help...
thank you very much...
good day!
following is my insertion sort program to sort a set of numbers ascendingly.
#include <iostream>
using namespace std;
class Sorting { //sorting class
private:
int number[];
int num[];
int sun;
public:
void setNumber(int, int, int, int);
int getNumber();
void insertionSort(int*, int);
void print();
};
void Sorting::setNumber(int n1, int n2, int n3,int n4) //setter for the set of numbers
{
int num[] = {n1, n2, n3, n4};
int *kums = num;
sun = *kums;
}
int Sorting::getNumber() //getter for the set of numbers
{
return sun;
}
void Sorting::insertionSort(int numbers[], int array_size) //insertion sort
{
int i, j, index;
for (i=1; i < array_size; i++)
{
index = numbers[i];
j = i;
while ((j > 0) && (numbers[j-1] > index))
{
numbers[j] = numbers[j-1];
j = j - 1;
}
numbers[j] = index;
}
}
void Sorting::print() // to print out the sorted set of numbers
{
for (int i=0; i<4; i++){
cout<<num[i]<<endl;
}
}
int main () {
int result;
int num1, num2, num3, num4;
Sorting a; //created an object, lets name it a
cout<<"Numbers to insert -> ";
cin>> num1>> num2>> num3>> num4; //user enters the 4 numbers
a.setNumber(num1,num2,num3,num4); // assign the numbers
a.insertionSort(a.getNumber(),4); //to sort the numbers (compilation error here)
a.print(); //print out the sort elements
system("PAUSE");
return 0;
}
could someone please copy and paste the whole source code, try to compile and help me find out the errors.
my compiler is dev C++
i got this error message: 66 invalid conversion from `int' to `int*'
a.insertionSort(a.getNumber(),4); <----- this line
i really appreciate your help...
thank you very much...