In: Computer Science
Language:C++
NEEDS TO WORK IN VISUAL BASIC
error on line 41 expression must have a constant value
#include
using namespace std;
//function declaration
void EnterRents(int*, int);
void displayRents(int*, int);
void selectionSort(int*, int);
int sumRents(int* temp, int size)
{
int sum = 0;
for (int i = 0; i < size; i++)
{
sum += *(temp + i);
}
return sum;
}
void Displaymemory(int* temp, int size)
{
/*int memory;
memory=sizeof(temp)*size;
cout< for (int i = 0; i < size; i++)
{
cout << &temp[i] << " ";
}
}
//main drive
int main()
{
int n;
char c;
cout << "Enter a for enter the rents amounts" <<
endl;
cout << "Enter b to display rents amounts" <<
endl;
cout << "Enter c to sort the rents amounts" <<
endl;
cout << "Enter d to total rents amounts" << endl;
cout << "Enter e to display memory alloaction" <<
endl;
cout << "Enter f to exit" << endl;
cout << "Enter the number of amount items stored in Amout
array " << endl;
cin >> n;
int arr[n];
//while statement with switch case to call declared function
while (1)
{
cout << endl;
cout << "Enter your choice" << endl;
cin >> c;
switch (c)
{
case 'a':
cout << "Enter the " << n << " no of Rents
amount" << endl;
EnterRents(arr, n);
break;
//Other switch cases
case 'b':
cout << "Display Rents" << endl;
displayRents(arr, n);
break;
case 'c':
cout << "sort Rents amounts" << endl;
selectionSort(arr, n);
cout << "sorted elemnts are" << endl;
displayRents(arr, n);
break;
case 'd':
cout << "Total Rents" << endl;
cout << sumRents(arr, n) << endl;
break;
case 'e':
cout << "Display memoryLocation" << endl;
Displaymemory(arr, n);
break;
case 'f':
cout << "f entered by user to exit" << endl;
exit(1);
default:
cout << "Invalid input.";
break;
}
}
return 0;
}
//function definition
void EnterRents(int* arr, int size)
{
for (int i = 0; i < size; i++)
{
cin >> arr[i];
}
}
void displayRents(int* arr, int n)
{
for (int i = 0; i < n; i++)
{
cout << *(arr + i) << " ";
}
}
//void selectionSort(int*,int)
void selectionSort(int* pointer, int size)
{
int* i, * j, swap;
int* end = NULL;
if (size < 2 || pointer == NULL)
return;
end = pointer + size - 1;
for (i = pointer; i < end; i++)
{
for (j = i + 1; j <= end; j++)
{
if (*j < *i)
{
swap = *i;
*i = *j;
*j = swap;
}
}
}
}
MODIFIED CODE :
#include<iostream>
using namespace std;
//function declaration
void EnterRents(int*, int);
void displayRents(int*, int);
void selectionSort(int*, int);
int sumRents(int* temp, int size)
{
int sum = 0;
for (int i = 0; i < size; i++)
{
sum += *(temp + i);
}
return sum;
}
void Displaymemory(int* temp, int size)
{
//int memory;
int memory=sizeof(temp)*size;
for (int i = 0; i < size; i++)
{
cout << &temp[i] << " ";
}
}
//main drive
int main()
{
int n;
char c;
cout << "Enter a for enter the rents amounts" <<
endl;
cout << "Enter b to display rents amounts" <<
endl;
cout << "Enter c to sort the rents amounts" <<
endl;
cout << "Enter d to total rents amounts" << endl;
cout << "Enter e to display memory alloaction" <<
endl;
cout << "Enter f to exit" << endl;
cout << "Enter the number of amount items stored in Amout
array " << endl;
cin >> n;
int arr[n];
//while statement with switch case to call declared function
while (1)
{
cout << endl;
cout << "Enter your choice" << endl;
cin >> c;
switch (c)
{
case 'a':
cout << "Enter the " << n << " no of Rents
amount" << endl;
EnterRents(arr, n);
break;
//Other switch cases
case 'b':
cout << "Display Rents" << endl;
displayRents(arr, n);
break;
case 'c':
cout << "sort Rents amounts" << endl;
selectionSort(arr, n);
cout << "sorted elemnts are" << endl;
displayRents(arr, n);
break;
case 'd':
cout << "Total Rents" << endl;
cout << sumRents(arr, n) << endl;
break;
case 'e':
cout << "Display memoryLocation" << endl;
Displaymemory(arr, n);
break;
case 'f':
cout << "f entered by user to exit" << endl;
exit(1);
default:
cout << "Invalid input.";
break;
}
}
return 0;
}
//function definition
void EnterRents(int* arr, int size)
{
for (int i = 0; i < size; i++)
{
cin >> arr[i];
}
}
void displayRents(int* arr, int n)
{
for (int i = 0; i < n; i++)
{
cout << *(arr + i) << " ";
}
}
//void selectionSort(int*,int)
void selectionSort(int* pointer, int size)
{
int* i, * j, swap;
int* end = NULL;
if (size < 2 || pointer == NULL)
return;
end = pointer + size - 1;
for (i = pointer; i < end; i++)
{
for (j = i + 1; j <= end; j++)
{
if (*j < *i)
{
swap = *i;
*i = *j;
*j = swap;
}
}
}
}
OUTPUT :