Savelyev_Vyacheslav

task_2_1

Oct 21st, 2021
738
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. % Задача 2.1
  2. % Написать функцию, которая будет генерировать случайную строковую переменную,
  3. % содержащую символы A-Z, a-z, 0-9 (латинские буквы обоих регистров и цифры).
  4. % Единственный входной аргумент функции - длина строки (кол-во символов),
  5. % выходной аргумент -  строковая переменная.
  6.  
  7. clear
  8. clc
  9. close all % закрывает все графические окна перед запуском нового окна
  10. LenghtStr = 100;
  11. PrintSimbls(LenghtStr)
  12. function[OutArr] = PrintSimbls(LenghtStr)
  13.     Arr45_57 = 48:1:57;
  14.     Arr65_90 = 65:1:90;
  15.     Arr97_122 = 97:1:122;
  16.     ArrCollection = [];
  17.     ArrCollection = cat(2,ArrCollection,Arr45_57);
  18.     ArrCollection = cat(2,ArrCollection,Arr65_90);
  19.     ArrCollection = cat(2,ArrCollection,Arr97_122); % склеиваем матрицы
  20.     increase =fix(LenghtStr/length(ArrCollection)+1) % увеличение массива до нужных размеров
  21.     %%% repmat(ArrCollection,1,increase) 1 - это 1 строка, increase - это увеличение длины строки
  22.     ArrCollection = repmat(ArrCollection,1,increase);
  23.     MixNumb = randi(LenghtStr,1,LenghtStr); % создает случаиные числа в массиве с 1 строкой
  24.     ArrCollection=ArrCollection([MixNumb]); % миксует массив ArrCollection и выбирает нужное число элементов
  25.     OutArr = native2unicode(ArrCollection,'ASCII') % переводит код в символы
  26.     Dlina=length(OutArr) % проверяет длину
  27. end
  28.  
  29.  
  30.  
RAW Paste Data