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;
}