Finding Largest Factor Using While Loop

Objective: Find largest factor of any input
For example:
>> out = largestfactor(15)
out = 5
I am using a while loop and if statement to perform this. I cannot figure out how to grab the largest value from the highest iteration (i). Thank you for looking over.
function [a] = largestfactor(number)
i = 2;
while(number > 1)
if mod(number,i) == 0
number = (number / i);
else
i = i + 1;
end
end
a = number * 5;

 采纳的回答

KSSV
KSSV 2020-5-21
编辑:KSSV 2020-5-21
n = 15 ;
largestfactor=floor(n/2);
while largestfactor>0
if mod(n,largestfactor)==0
break
end
largestfactor = largestfactor-1;
end

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by