Witam,

bardzo proszę o sprawdzenie programu, wszelkie uwagi mile widziane :)

Treść zadania :

Napisz funkcję TablicaNaWyraz, która tworzy i zwraca wyraz utworzony przez znaki z tablicy A od litery pobranej z pozycji start do litery z pozycji stop. string TablicaNaWyraz(const vector<char> & A, int start, int stop);

Napisz program testujący opracowaną funkcję. Obsłuż wyjątki związane z wartościami start i stop oraz znakami różnymi od liter.

Pozdrawiam,
student_RRK

 #include <iostream>
#include <string>
#include <vector>
#include <cstdlib>

using namespace std;
string TablicaNaWyraz(const vector<char> & A, int start, int stop);

int main()
{
    vector<char> wektorek;

    string napis = "Robss3 nazwisko";
    for (int i = 0; i < napis.length(); i++)
        wektorek.push_back(napis[i]);

    cout << TablicaNaWyraz(wektorek, 1, 6);

    cout << endl;
    system("pause");
    return 0;
}

string TablicaNaWyraz(const vector<char> & A, int start, int stop) {
    string wyraz = "";
    bool all_of_alpha = true;
    for (int i = 0; i < stop; i++)
    {
        if (!(isalpha(A[i])))
            all_of_alpha = false;
    }

    if (all_of_alpha)
    {
        try {
            wyraz.assign(&A.at(start), &A.at(stop));
        }
        catch (out_of_range ex)
        {
            cerr << "Wystapil wyjatek" << ex.what();
        }
    }
    else
        cerr << "Nie wszystkie znaki sa literami";

    return wyraz;

}