Conversia dublei în numere întregi pentru operația Modulo în MATLAB (Programare, Matlab, Conversie De Tip, Modulo)

Chance a intrebat.

Încerc să efectuez o operație modulo în MATLAB și nu sunt sigur cum să convertesc variabila de intrare în tipul de date corect pentru ca operația modulo să se finalizeze.

Iată ce am:

sequence = 0;
....
sequence = sequence + 1;
if (modp(sequence, 3) == 0)
....

În C-ish, caut să efectuez if (sequence % 3 == 0).

MATLAB se plânge că nu există o modp operație pentru un double și că trebuie să folosesc un int. Cu toate acestea, documentația nu spune ce format de întreg trebuie să folosesc (de ex, int8, int64, etc.) și niciunul dintre aceste formate de numere întregi nu funcționează.

Ce fac greșit?

Comentarii

  • Se plânge fie pentru că aveți o versiune veche de Matlab (documentația online pe care probabil că o consultați este întotdeauna pentru cea mai recentă versiune – în prezent R2013b), fie pentru că nu aveți caseta de instrumente Symbolic Math, fie pentru că încercați să utilizați funcția MuPAD modp direct în Matlab. Aveți nevoie de un modul pozitiv, în comparație cu un modul obișnuit? sym/mod? Aveți nevoie măcar de capacitatea simbolică? Dacă doriți cu adevărat să apelați funcțiile MuPAD din Matlab, consultați răspunsul meu de aici. –  > Por horchler.
  • Am o versiune mai veche de MATLAB și nici măcar nu știam ce este un „toolbox simbolic”. Nu petrec mult timp în MATLAB și nu cunoșteam terminologia cheie care să mă ajute să mă descurc. –  > Por Chance.
1 răspunsuri
Daniel

Ți-ai dat seama că folosești o funcție din „symbolic toolbox”? Nu văd nici un avantaj în acest caz astfel pur și simplu folosiți mod(a,b) din Matlab (există și o funcție cu punct fix mod(a,b) și simbolică mod(a,b), nu le confundați)

http://www.mathworks.de/de/help/matlab/ref/mod.html

Comentarii

  • Acest tip de întrebări devin banale. Ar fi util dacă MathWorks ar clarifica lucrurile în documentele lor online. Din păcate, mulți utilizatori nici măcar nu știu despre MuPAD sau despre capacitățile simbolice ale Matlab, ca să nu mai vorbim despre cum să își dea seama când să folosească una sau alta. –  > Por horchler.
  • Aveam de gând să vă răspund că trebuie doar să căutați pe Google, dar aveți dreptate. funcția mod a setului de instrumente simbolice este mai importantă decât funcția de built-in funcție. Nu cred că este vorba de lipsa documentației, ci mai degrabă de cât de ușor de descoperit este prin Google sau prin ajutorul din linia de comandă. –  > Por Bas Swinckels.
  • Sunt de acord cu amândoi: Nici măcar nu știam ce este o „cutie de instrumente simbolice”. Pur și simplu am tastat „modulo MATLAB” în Google și a apărut funcția „modp”, așa că asta am încercat să folosesc. –  > Por Chance.