Wrocław, 19 IX 2003
Egzamin poprawkowy z programowania obiektowego
1. Zaimplementuj i przetestuj funkcję char* ToUpper(char* s),
która
a. pobiera jako argument napis w stylu języka C;
b. zamienia w nim każdą małą literę ze standardowego
zbioru ASCII na wielką;
c. i dodatkowo zwraca wskaźnik na ten napis jako swoją
wartość
2. Proszę przeciążyć operator<< tak, aby służył do zapisywania w dowolnym
strumieniu wyjściowym wszystkich elementów dowolnego kontenera typu std::vector<int>. Elementy powinny być przedzielone przecinkami
i spacją, a całość ujęta w nawiasy okrągłe. Przykładowy efekt działania
tego operatora na wektorze o elementach 10, –100, 13 i 17:
(10, -100,
13, 17)
3. Proszę zaimplementować i przetestować strukturę
danych, która będzie reprezentować dwuwymiarową prostokątną macierz n×m,
przy czym
a. n i m
mogą przyjmować wartości nieznane podczas pisania programu;
b. poprawność
indeksowania elementów macierzy ma być kontrolowana przy pomocy asercji.