Clear Filters
Clear Filters

How to write a program that selectively picks hexadecimal values from a text file based on bit size?

2 views (last 30 days)
Hello all! I have a text file that is full of 16bit, 32bit, 64bit, and 128bit hexadecimal values, and I was trying to write a program that asks user the bit-size, then once the size is selected, a random hexadecimal value from the text file is spit out. I was thinking about if statements, but nothing I try is working. Any help or guidance would be greatly appreciated!
Edit Sorry! I have added the text file, but it is 4 hex values per a line, then enter. There are a lot more values than this in the real one but it follows same format
Edit#2
I am mostly confused with syntax for the bit selector, but I was thinking something like:
read file,
user selects bit mode (4 options)
if 16bit --> rand
if 32bit --> rand
if 64bit -->rand
if 128bit -->rand
if anything else, error
  7 Comments
Akana Juliet
Akana Juliet on 15 Jun 2021
@Scott MacKenzie Actually, it's more like
lines 1-20 are all 16bit
lines 21-40 are all 32bit
lines 41-60 are all 64bit
lines 61-80 are all 128bit
Sorry for the lack of context in my question! I hope this helps convey. Thanks so much for helping me

Sign in to comment.

Accepted Answer

David Hill
David Hill on 15 Jun 2021
r=randi(4);
a=readcell('hextest.txt');
x=input('hex length: ');
hexValue=a{log2(x/16)+1,r};
  3 Comments
David Hill
David Hill on 15 Jun 2021
Yes. If you don't want any repetitions, use randperm.
r=randperm(4,3);%selects 3 in random order from 1:4
a=readcell('hextest.txt');
x=input('hex length: ');
hexValue=a(log2(x/16)+1,r);%output is a cell array
Akana Juliet
Akana Juliet on 15 Jun 2021
Thank you so much for your help @David Hill ! I just have one final question, what am I doing wrong with my print statement? I'm only seeing 1 random value posted?
r=randi(4,3);
a=readcell('anothertest.txt');
x=input('Enter bit length: ');
hexValue=a{log2(x/16)+1,r};
fprintf('%s %s %s\n', hexValue);

Sign in to comment.

More Answers (0)

Categories

Find more on Environment and Settings in Help Center and File Exchange

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!