[C++] error: illegal use floating point.
Ostatnio zmodyfikowano 2012-09-26 12:41
MisieQ90 Temat założony przez niniejszego użytkownika |
[C++] error: illegal use floating point. » 2012-09-25 14:39:48 Witam. zalozenie programowe bylo takie zeby utworzyc macierz 5x5 i pozniej z niej wektor wg wzoru: B=(k*Ai i)/ wartosc srednia. K jest podawane z klawiatury. wlasnie za wzorkiem w pliku macierz.cpp wyrzuca mi blad. Ogólnie rzecz biorac z programowania jestem noga ale załącze tu listing tego pliku macierz.cpp. #include "macierz.h" #include <iostream> using namespace std;
void WCZYTAJ_MACIERZ( MACIERZ A ) { cout << "uzupelnij dane do macierzy"; for( int i = 0; i < N; ++i ) { for( int j = 0; j < M; ++j ) { cout << "A[" << i + 1 << "]" << "[" << j + 1 << "]= "; cin >> A[ i ][ j ]; } } } void WYSWIETL_MACIERZ( MACIERZ A )
{ for( int i = 0; i < N; ++i ) { for( int j = 0; j < M; ++j ) { cout << A[ i ][ j ] << " "; } cout << endl; } }
float srednia( MACIERZ A )
{ int suma = 0; for( int i = 0; i < N; ++i ) { for( int j = 0; j < N; ++j ) suma += A[ i ][ j ]; } return suma / N; }
void WCZYTAJ_WEKTOR( MACIERZ A, WEK B, float k )
{ for( int i = 0; i < N; ++i ) B[ i ] =( k * A[ i ][ i ] ) / srednia; <---Tutaj, w tej linijce pokazuje b ł ą d. }
void WYSWIETL_WEKTOR( WEK B ) { for( int i = 0; i < M; ++i ) { cout << B[ i ] << endl; } }
Proszę o pomoc. Wszystko mi się juz miesza a chcialbym wiedzieć co jest zrobione źle. Błąd brzmi: illegal use floating point. Pozdrawiam resztę listingów tez moge podesłać. |
|
SeaMonster131 |
» 2012-09-25 15:13:12 Błąd jest dlatego ponieważ funkcja srednia przyjmuje 1 argument float srednia( MACIERZ A ) . A Ty zrobiłeś tylko B[ i ] =( k * A[ i ][ i ] ) / srednia; |
|
MisieQ90 Temat założony przez niniejszego użytkownika |
» 2012-09-25 15:20:36 Zaraz nie kumam juz z tego nic... moze mi ktos napisać jak to ma wyglądac i wytłumaczyć "jak krowie na rowie"? Spokoju mi to nie daje. Poprawiłem:
void WCZYTAJ_WEKTOR(MACIERZ A,WEK B,float k,float srednia)
{ for(int i=0;i<N;++i)
B[ i] [0] = (k*A)/srednia;
}
Prawie działa: Podaje parametr k, dane do macierzy i elegancko macierz tworzy a za chwile tylo.. program znajduje problem... Prosze o pomoc |
|
grizzPL |
» 2012-09-26 12:41:28 Musisz podać argument do funkcji srednia(). |
|
« 1 » |