# What is the code that converts decimal to octal without using the built-in functions?

9 views (last 30 days)
miraa basil on 1 Nov 2018
Edited: Walter Roberson on 4 Nov 2018
What is the code that converts decimal to octal without using the built-in functions
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

### Answers (2)

Elias Gule on 1 Nov 2018
The following code is neither elegant nor memory efficient, but it appears to address your question:
function output = dec2octal(num)
output = '';
while num >= 8
fact = floor(num / 8);
num = mod(num,8);
output = [output num2str(fact)]; %#ok<AGROW>
end
output = [output num2str(num)];
end
##### 3 CommentsShowHide 2 older comments
miraa basil on 3 Nov 2018
It doesnt give the right answer, it should convert from decimal to octal using your code but the answer doesnt meet.

Sign in to comment.

Walter Roberson on 1 Nov 2018
Edited: Walter Roberson on 4 Nov 2018
##### 1 CommentShowHide None
Walter Roberson on 4 Nov 2018
Edited: Walter Roberson on 4 Nov 2018
Algorithm:
if input is negative, error
if input is 0, emit '0' and return
initialize output to ''
assign input to a variable
while the variable is greater than 0 do
take mod8 of the variable
convert the mod8 to character, and put that at the beginning of the output
subtract the mod8 from the variable and divide by 8, and assign that result to the variable
end of loop

Sign in to comment.

### Categories

Find more on Logical in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!