Hello I need to write a c++ program that requires a function called DeleteRepeat and prompts the user to input the name of a text file and outputs the new data in a new file. For example, the content of the text file that the user inputs is " b f e d b r e " and the new text file should be " b f d r ". Each letter is separated by a space. I keep getting error in my code. Any help would be greatly appreciated.

#include <iostream>
#include <fstream>
using namespace std;
void deleterepeat ( int a[], int& number_used );
void fillarray(int a[], int size, int& numberUsed);
int main()
    const int MAX = 77;
    ifstream fin;
    ofstream fout;
    int a[MAX], numberUsed;
    fillarray(a, MAX, numberUsed);
    for ( int i = 0; i < numberUsed; i++)
        fout << "haha" << a[i];
    cout << endl << endl;
    return 0;

void fillarray(int a[], int size, int& numberUsed)
    ifstream fin;
    ofstream fout;
    char filename[49];
    int next, index = 0;
    cout << " Enter a file name: ";
    cin >> filename;
    fin.open ("filename");
    fout.open ("hmm.txt");
    fin >> next;
    while ((next != '\n') && (index < size))
        a[index] = next;
        fin >> next;;
    numberUsed = index;

void deleterepeat(char a[], int& numberUsed)
     for ( int i = 0; i < numberUsed; i++ )
       for ( int j = i+1; j < numberUsed; j++ )
           if (a[i] == a[j])
               for ( int k = j; k < numberUsed; k++)
                   a[k] = a[k+1];
     a[numberUsed] = 0;

Edited by mike_2000_17: Fixed formatting

8 Years
Discussion Span
Last Post by basketball4567

How about instead of reading all of the input files in at once, read them in one at a time and have a counter for later.

bool repeat=false
int count=-1
in >> x;

Then you can make the comparisons one by one and then just write the array to the file.

for(int i=0; i<=count; i++)


This code will not compile and its a little sloppy but ill let you work with it. you need to put it in a loop so you can read in multiple letters and fit it to how you want it, but i hope this helps. Im not sure if this is what your looking for. your above description says you want a deleterepeat function but this is an alternative way to look at the problem.

Edited by basketball4567: n/a

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.