MATLAB Answers

big horizontally symmetric number

1 view (last 30 days)
Nguyen Huy
Nguyen Huy on 20 May 2021
Edited: Nguyen Huy on 20 May 2021
%given a number x.calculate the smallest positive number you need to add to your original number so that each digit in your sum will have horizontal symmetry.those numbers are [0 1 3 8]
%example x=27=> output =3 because 27+3=30 (horizontal symmetry)
%my code is success with small number,but with big number it is out of memory,so how could i fix it
function y = symmetry(x)
c=x
for i=1:inf
a=num2str(x);
b=uint64(zeros(1,length(a)));
for j=1:length(a)
b(j)=str2num(a(j));
end
b=b(b~=0);
b=b(b~=1);
b=b(b~=3);
b=b(b~=8);
if isempty(b)==1
break
end
x=x+1;
end
y=x-c
end
%take example of big number is x=34567890
  1 Comment
KSSV
KSSV on 20 May 2021
Why 3 should be added to 27 to get 30? How 30 is horizontal symmetric? Question is not clear. Can you give another example?

Sign in to comment.

Answers (1)

Nguyen Huy
Nguyen Huy on 20 May 2021
Edited: Nguyen Huy on 20 May 2021
horizontal symmetric is when you have a line divine the number into 2 part,the upper part and lower part look the same
Example: 30 because 30=> ) /\
=====
) \/
Example2: add 100 to 900 to get horizontal symmetric number 900+100=1000=> | /\ /\ /\
==========
| \/ \/ \/

Tags

Community Treasure Hunt

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

Start Hunting!