Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

funkcje wzorcowe problem.

Ostatnio zmodyfikowano 2013-03-20 12:36
Autor Wiadomość
alek44
Temat założony przez niniejszego użytkownika
funkcje wzorcowe problem.
» 2013-03-19 21:24:47
Napisz funkcje wzorcową MaxT zwracającą maximum elementów tablicy. Dunkcje wykaorzystaj do wyznaczenia maksimum
- w tablicy liczb całkowitych
- w tablicy napisów.
 
Takie mam polecenie zrobiłem pkt pierwszy ale nie działa mi 2 nie wiem za bardzo jak to zrobić.
C/C++
#include<iostream>
#include<string>
//#include<stack>
using namespace std;
template < class T >

T MaxT( T * tab, int n )
{
    T max = tab[ 0 ];
   
    for( int i = 0; i <= n; i++ )
    {
        if( tab[ i ] > max )
             max = tab[ i ];
       
    }
   
    return max;
}
template < class T >
T MaxTS( T * tab, int n )
{
    T max = tab[ 0 ];
    for( int i = 0; i <= n; i++ )
    {
       
        if( tab[ i ] > max )
             max = tab[ i ];
       
    }
   
    return max;
   
   
}
int main()
{
   
    int tab[] = { 2, 3, 4, 0, 6, 2, 8 };
    cout << MaxTS( tab, 6 );
   
    string tab2[] = { "1", "2", "3" };
    cout << MaxTS( tab2, 3 );
    system( "pause" );
   
}
P-78877
pekfos
» 2013-03-19 21:27:08
Napisz specjalizację szablonu. Zamiast sprawdzać czy jest większe, użyj
std::lexicographical_compare
.
P-78878
alek44
Temat założony przez niniejszego użytkownika
» 2013-03-19 22:01:28
mało mi to mówi. mysle ze da sie jakosc inaczej ...
P-78885
Monika90
» 2013-03-20 06:25:52
"funkcja wzorcowa" - skąd wziąłeś taką terminologię? To jest szablon funkcji.

A nie działa dlatego, że wychodzi poza zakres tablicy. Pętla powinna wyglądać tak:
C/C++
for( int i = 1; i < n; ++i )
{
    //środek bez zmian
}
gdzie n to rozmiar tablicy.
P-78896
unimator
» 2013-03-20 12:36:45

Napisz funkcje wzorcową MaxT zwracającą maximum elementów tablicy.
Chyba chodziło Ci o maksymalny (największy) element tablicy. Bo to co Ty napisałeś wskazywałoby na ilość elementów (czyli rozmiar) tablicy.


Dunkcje wykaorzystaj do wyznaczenia maksimum
- w tablicy napisów.
Co rozumiesz pod pojęciem największego/maksymalnego stringa?
P-78906
« 1 »
  Strona 1 z 1