Question

In: Computer Science

Using C++ Use dynamic allocation and functions (using pointer variables only) to read the names from...

Using C++ Use dynamic allocation and functions (using pointer variables only) to read the names from the .txt file and sort the names in lexical order

Grumpy

Dopey

Doc

Happy

Bashful

Sneezy

Sleepy

Solutions

Expert Solution

Note: Could you plz go through this code and let me know if u need any changes in this.Thank You
=================================

#include <fstream>
#include <iostream>
#include <cstring>

using namespace std;

void sort(string names[], int count);
int main()
{
   // Declaring variables
string* names = NULL;
  
int count = 0;
string name;
ifstream dataIn;
  
// open the input file
dataIn.open("strnames.txt");
/*
* checking whether the file name is valid or not
*/
if (dataIn.fail())
{
cout << "** File Not Found **";
return 1;
}
else
{
/*
* Reading the data from the file
*/
while (dataIn >> name)
{
count++;
}
/*
* closing the file
*/
dataIn.close();

// Creating array dynamically
names = new string[count];

dataIn.open("strnames.txt");
for (int i = 0; i < count; i++)
{
dataIn >> names[i];
}
dataIn.close();

cout << "Before Sorting :" << endl;
for (int i = 0; i < count; i++)
{
cout << names[i] << endl;
}
sort(names, count);
cout << "After Sorting :" << endl;

for (int i = 0; i < count; i++)
{
cout << names[i] << endl;
}
}

return 0;
}

// this function will sort the string in lexical order
void sort(string names[], int size_of_arr)
{
string temp;
for (int i = 0; i < size_of_arr - 1; i++)
{
for (int j = 0; j < size_of_arr - i - 1; j++)
{
if (names[j] > names[j + 1])
{
temp = names[j];
names[j] = names[j + 1];
names[j + 1] = temp;
}
}
}
}

==========================================

==============================================

Output:

=====================Could you plz rate me well.Thank You


Related Solutions

Write a C++ program (using pointers and dynamic memory allocation only) to implement the following functions...
Write a C++ program (using pointers and dynamic memory allocation only) to implement the following functions and call it from the main function. (1)Write a function whose signature looks like (char*, char) which returns true if the 1st parameter cstring contains the 2nd parameter char, or false otherwise. (2)Create an array of Planets. Populate the array and print the contents of the array using the pointer notation instead of the subscripts.
In the following keypad notation Use a class and dynamic allocation of a pointer variable to...
In the following keypad notation Use a class and dynamic allocation of a pointer variable to enter the digit code of the following text input MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY SATURDAY SUNDAY Use an inherited class using pointer variable to output the phone number from the following text input 1-800-COMCAST 1-800-VERIZON 1-800-BANCORP 1-800-MYKOHLS 1-800-JCPENNY Write C++ code and pseudocode in a doc file A computer key board has defect (like speech defect in humans) in reading for ‘p’ /’P’ as...
In the following keypad notation Use a class and dynamic allocation of a pointer variable to...
In the following keypad notation Use a class and dynamic allocation of a pointer variable to enter the digit code of the following text input MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY SATURDAY SUNDAY Use an inherited class using pointer variable to output the phone number from the following text input 1-800-COMCAST 1-800-VERIZON 1-800-BANCORP 1-800-MYKOHLS 1-800-JCPENNY Write C++ code and pseudocode in a doc file A computer key board has defect (like speech defect in humans) in reading for ‘p’ /’P’ as...
Using C++, Write a program that will use pointer syntax to access variables, dynamically allocate memories,...
Using C++, Write a program that will use pointer syntax to access variables, dynamically allocate memories, and pass pointers to functions. 1.            The program should ask the user to enter a size to the array. 2.            The program should dynamically allocate an array with the size. 3.            The program should then ask user to input values to the array 4.            The program should then find the maximum, display all elements forward and reversed using two different ways of pointer access...
Code should be written in C Use pointer variables for parameter passing, where appropriate and pointer...
Code should be written in C Use pointer variables for parameter passing, where appropriate and pointer arithmetic when working with arrays. 1) Using initialization lists, create 5 one-dimensional arrays, one for each of these: hold the names of the people running in the election hold the names of the subdivision hold the vote counts in the Brampton subdivision for each candidate hold the vote counts in the Pickering subdivision for each candidate hold the vote counts in the Markham subdivision...
When it comes to dynamic memory allocation and delete[] pointer, what does it mean to say...
When it comes to dynamic memory allocation and delete[] pointer, what does it mean to say that, CRT detected that the application wrote to memory after end of heap buffer? I tried to duplicate the error by deleting the pointer address twice and it didn't produce the same error code so that's not it. What might cause this problem?
Objectives:  Write classes in C++  Use dynamic arrays  Write and read from files...
Objectives:  Write classes in C++  Use dynamic arrays  Write and read from files 1. WriteaclassGradeBookcontainingthefollowing: Private attributes: - courseName: a string representing the name of the course. - nbOfStudents: an integer representing the number of students enrolled in the course. The number of students is greater than or equal to 5. - grades: a double dimensional array of integers representing the grades of Test1, Test2 and Final of every student. It should be a dynamic array. Public...
Please complete the following functions in "queue.c" using C. This must use the dynamic array provided...
Please complete the following functions in "queue.c" using C. This must use the dynamic array provided in "dynarray.c" -------------------------------------------------------------------------------------------- //queue.c #include <stdlib.h> #include "queue.h" #include "dynarray.h" /* * This is the structure that will be used to represent a queue. This * structure specifically contains a single field representing a dynamic array * that should be used as the underlying data storage for the queue. * * You should not modify this structure. */ struct queue { struct dynarray* array;...
Fill in the code only using pointer variables #include using namespace std; int main() { int...
Fill in the code only using pointer variables #include using namespace std; int main() { int longside; // holds longside (length) int wideside; // holds wideside(width) int total; // holds total (area) int *longsidePointer = nullpointer; // int pointer which will be set to point to length int *widthPointer = nullpointer; // int pointer which will be set to point to width cout << "Please input the longside of the rectangle" << endl; cin >> longside; cout << "Please input...
In C++ Create a dynamic array of 100 integer values named myNums. Use a pointer variable...
In C++ Create a dynamic array of 100 integer values named myNums. Use a pointer variable (like ptr) which points to this array. Use this pointer variable to initialize the myNums array from 2 to 200 and then display the array elements. Delete the dynamic array myNums at the end. You just need to write part of the program.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT