Matlab Random Word Generator

Hi All,
I have been attempting to generate a singular random word, from a set of words in a txt file labelled: dictionary.txt
So far, my code is as follows:
Dictionary="dictionary.txt";
Random=randperm(length("dictionary.txt"),1);
randword = Dictionary{Random}
However, when i run the code, it returns:
randword =
'dictionary.txt'
How can i make it so that the code displays a random word within the dictionary.txt file, rather than the file name?
Kind Regards,
Smoxk x

 Accepted Answer

Dictionary='dictionary.txt';
n = 5 ; % letters to pick from the string
Random=randperm(length(Dictionary),5);
randword = Dictionary(Random)
randword = 'ynx.o'

7 Comments

Smoxk x
Smoxk x on 12 Apr 2022
Edited: Smoxk x on 12 Apr 2022
Hey @KSSV,
Thanks so much for the response! :)
The 'dictionary.txt' file contains words such as "dog" "snake" "water". How would i edit the code to display a random word thats already within the 'dictionary.txt' file such as "fish"?
Could i make the code for random word generation into a function maybe? I have to use it in multiple segments of my code.
Kind Regards,
Luke
Attach your file.
Smoxk x
Smoxk x on 12 Apr 2022
Edited: Smoxk x on 12 Apr 2022
Ok, above is the attached 'dictionary.txt'
file = 'dictionary.txt' ; % file name
S = importdata(file) ; % import the data
N = numel(S) ; % get the length of the file
idx = randperm(N,1) ; % get random number
S(idx)
@KSSV Thanks so much! I really appreciate the time and effort you took to assist me! Have a great day!
Smoxk x
Smoxk x on 12 Apr 2022
Edited: Smoxk x on 12 Apr 2022
Hey @KSSV,
How would i go about making the below code into a function?
file = 'dictionary.txt'; % file name
import = importdata(file); % import the data
Num= numel(import); % get the length of the file
idx = randperm(Num, 1); % get random number
OriginalWord=import(idx);
function OriginalWord = myfunction(filename,n)
% file name - nme of the file
% n - number of random letters needed from the file
import = importdata(file); % import the data
Num= numel(import); % get the length of the file
idx = randperm(Num, n); % get random number
OriginalWord=import(idx);
end

Sign in to comment.

More Answers (0)

Categories

Find more on Random Number Generation in Help Center and File Exchange

Asked:

on 12 Apr 2022

Commented:

on 13 Apr 2022

Community Treasure Hunt

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

Start Hunting!