Typ fukcji, a return.
Ostatnio zmodyfikowano 2016-01-30 14:26
pekfos |
» 2016-01-29 11:02:38 To nie jest odpowiedź na pytanie, jakie wartości mają te pola w konkretnej zmiennej. a funkcja liczba_razy() jakby nie działała. |
To liczenie 1/wyznacznik nie działa. Operujesz na niewłaściwych typach danych i wynik jest zawsze całkowity. |
|
Dan2ra Temat założony przez niniejszego użytkownika |
» 2016-01-29 16:27:23 Nie bardzo rozumiem to zdanie: To nie jest odpowiedź na pytanie, jakie wartości mają te pola w konkretnej zmiennej. |
Czyli nie mogę dzielić i wykonywać innych operacji matematycznych na różnych typach danych (w tym przypadku int/float)? Zmieniłem typ danych przy liczeniu wyznacznika w ten sposób: float wyz; float a;
wyz = wyznacznik3x3( D ); a = 1 / wyz; D = dop( D ); D = trans( D ); D = liczba_razy( D, a ); wypisz( D );
Program zaczął coś liczyć, ale pokazuję głupoty. Przepraszam za być może tak banalne pytania, ale mam z C++ styczność od niedawna. |
|
pekfos |
» 2016-01-29 17:21:57 Czyli nie mogę dzielić i wykonywać innych operacji matematycznych na różnych typach danych (w tym przypadku int/float)? |
Możesz. Nie bardzo rozumiem to zdanie:
To nie jest odpowiedź na pytanie, jakie wartości mają te pola w konkretnej zmiennej.
|
|
w macierzy B ile wynoszą kolumny i wiersze? |
macierz B;
for( int i = 0; i < A.kolumny; i++ ) { for( int j = 0; j < A.wiersze; j++ ) { B.wsp[ i ][ j ] = liczba * A.wsp[ i ][ j ]; } }
return B; |
Od pewnego stopnia niezrozumienia, dialog przestaje mieć sens. Program zaczął coś liczyć, ale pokazuję głupoty. |
Pokazujesz głupoty, a co pokazuje program..? |
|
Dan2ra Temat założony przez niniejszego użytkownika |
» 2016-01-29 20:21:20 Nie bardzo rozumiem po co definiowanie wartości B.kolumny i B.wiersze skoro ze struct macierz B używam tylko float wsp[ 10 ][ 10 ] jako "pomocniczej" macierzy do zapisania wyniku mnożenia liczby przez macierz. Program pokazuję wartości typu 0.34354646 itp. Problem chyba jednak jest nie w funkcji liczącej, lecz w wartości wyznacznika jaka do funkcji przychodzi. Podstawiłem na sztywno wyznacznik, o tutaj: int main()
case 5 : { B = wczytaj(); C = wczytaj(); D = roznica( C, B ); float wyz; float a; wyz = wyznacznik3x3( D ); a = 0.2; D = dop( D ); D = trans( D ); D = liczba_razy( D, a ); wypisz( D ); break; }
i program policzył dobrze. Definicja macierzy odwrotnej mówi: weź 1/wyznacznik macierzy wyjściowej * transponowana macierz dopełnień macierzy wyjściowej = macierz odwrotna tej macierzy. Jak dobrze zaimplementować jeden/wyznacznik? edit: Wiem, gdzie był błąd... Błędem byłem ja... Z czasem zacząłem wpisywać inną macierz do obliczeń niż chciałem, gdzie wyznacznik z niej wychodził 15 stąd takie kosmiczne wyniki. 1/15 = 0.66666667 razy każdy element macierzy... Swoją drogą, jak zmusić program do zaokrąglania określonej liczby miejsc po przecinku?? |
|
carlosmay |
» 2016-01-30 01:12:27 Swoją drogą, jak zmusić program do zaokrąglania określonej liczby miejsc po przecinku?? |
Mało precyzyjne pytanie. Domysł pierwszy: Zaokrąglanie liczbDomysł drugi: Obsługa strumienia - szukaj precision() lub manipulatora setprecision(). |
|
Dan2ra Temat założony przez niniejszego użytkownika |
» 2016-01-30 14:26:11 Dziękuję za informację i pomoc. Temat do zamknięcia. |
|
1 2 « 3 » |