Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Matlab - porównanie nie działa

peeel 31 Paź 2013 17:05 744 4
  • #1 31 Paź 2013 17:05
    peeel
    Poziom 8  

    Mam taki skrypt w Matlabie:

    Kod: c
    Zaloguj się, aby zobaczyć kod

    Chodzi o to że det(r) = 1, a mimo to dostaję odpowiedź nie i kompletnie nie wiem dlaczego. Sprawdziłem typ det(r), dlatego spróbowałem użyć double(1), ale to także nie pomogło...
    Dlaczego to nie działa i co zrobić, żeby działało.

    0 4
  • #2 31 Paź 2013 19:55
    D12
    Poziom 14  

    A zapisz sobie det(r) do jakiejś zmiennej i double(1) do jakiejś zmiennej i porównaj te dwie zmienne samemu w workspace'ie.

    0
  • #3 01 Lis 2013 09:10
    peeel
    Poziom 8  

    Ja chcę automatycznie, a nie samemu sobie porównać, bo ja wiem że to jest równe.

    0
  • Pomocny post
    #4 01 Lis 2013 13:09
    kemot55
    Poziom 30  

    A jesteś pewien, że wartość det(r) jest dokładnie równa jeden (a nie np. 1.0000000000000001)?
    Nie wiem co robią funkcje rotx(y,z). Natomiast biorąc pod uwagę wartość pi, która nie jest skończona to wątpię, że det(r) da coś co numerycznie jest dokładnie równe 1.0. Tu bym raczej spróbował zaokrąglić wynik przed porównaniem.

    0
  • #5 01 Lis 2013 15:49
    peeel
    Poziom 8  

    Dzięki kemot55, chyba o to chodziło.
    Gdy robiłem disp(det(r)) wyświetlało się 1.0000, gdy wszedłem w zmienne też miałem 1.000000000000000000000000, więc myślałem że jest dokładnie 1, widocznie tak nie było.

    0
  Szukaj w 5mln produktów