#c #random #permutation
#c #Случайный #перестановка
Вопрос:
У меня есть, например, «asd», и я хочу, чтобы он был рандомизирован в DAS, DSA, SAD, вы знаете. Как я могу это закодировать? Попробовал несколько решений, но на самом деле это не сработало.
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
int main()
{
printf("type in the wordn");
char haslo[128];
scanf("%s", haslo);
char set[128];
char hasloa[128];
strcpy(set, haslo);
unsigned int Ind = 0;
srand(time(NULL) rand());
int len = strlen(set);
while(Ind < len)
{
hasloa[Ind ] = set[rand()%62];
}
hasloa[len] = '';
printf("%s", hasloa);
return 0;
}
Комментарии:
1. И эти решения были?
2. Покажите нам, «что на самом деле не сработало»
3. Это называется перестановками . Что вы пробовали до сих пор?
4. Что заставляет вас думать, что ваше решение может сработать?
5. Используется
set[rand()%len]
для рандомизации. Для случайной перестановки требуется больше работы.
Ответ №1:
Измените 62 внутри цикла while на «len»