how to check that difference of two vectors is a multiple of ones in matlab
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
asim nadeem
il 6 Set 2018
Commentato: Walter Roberson
il 7 Set 2018
A=[2 2 2 2 ] B=[3 3 3 3 ] want to check if A-B=k(ones) where k is an integer.
2 Commenti
Stephen23
il 7 Set 2018
"where k is an integer."
Can k be negative? Or zero? Or are only positive k allowed?
Risposta accettata
Walter Roberson
il 7 Set 2018
Check that the first entry of A-B is an integer with mod() or by comparing it to fix() of itself. Then check that diff() of A-B is all zero.
1 Commento
Walter Roberson
il 7 Set 2018
t = A - B;
if t(1) ~= 0 && t(1) == fix(t(1)) && all(diff(t) == 0)
passed
else
failed
end
Più risposte (1)
Alexander Jensen
il 6 Set 2018
Modificato: Alexander Jensen
il 6 Set 2018
Is this what you're looking for?:
isInt = ~logical(mod(A-B,1))
isInt =
1×4 logical array
0 1 1 1
The logical(X) function returns everything that is not 0 as TRUE.
Vedere anche
Categorie
Scopri di più su Loops and Conditional Statements in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!