logical operators with while loop

23 次查看(过去 30 天)
%Find the smallest even integer that is
% divisible by 13 and whose
% square root is greater than 86
clc;
clear;
x=15;
a=rem(x,26);
b=sqrt(x);
while a==0 && b>86
if a==0 && b>86
fprintf('The required number is %d\n',x);
break
else
x=x+1;
end
end

采纳的回答

Matt Gaidica
Matt Gaidica 2020-12-15
编辑:Matt Gaidica 2020-12-15
At the risk of doing someones homework :P
clc;
clear;
x = 0; % or start at x = 86^2;
while true
a = rem(x,13);
b = sqrt(x);
if a==0 && b>86
fprintf('The required number is %d\n',x);
break;
else
x=x+2;
end
end

更多回答(2 个)

David Hill
David Hill 2020-12-15
a=7397;
while ~(mod(a,13)==0&&mod(a,2)==0)
a=a+1;
end

KSSV
KSSV 2020-12-15
x = 2 ;
while ~(mod(x,13) == 0 && sqrt(x)>=86)
x = x+2 ;
end
fprintf('The required number is %d\n',x);
The required number is 7410

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by