Untitled
unknown
plain_text
2 years ago
1.3 kB
6
Indexable
#include <wchar.h>
#include <stdio.h>
#include <locale.h>
#include "functions.h"
void gerar_combinacoesseq (wchar_t cartas[], wchar_t array_temporario[], int inicio, int fim, int indice, int tamanho_combinacao, wchar_t *(*arrguardarcartas)[54]){
int l = 0;
int k = 0;
if (indice == tamanho_combinacao){
for (int j = 0; j < tamanho_combinacao; j++){
if ((j + 1) == tamanho_combinacao){
(*arrguardarcartas)[l][k] = array_temporario[j];
k = 0;
l++;
}
else{
(*arrguardarcartas)[l][k] = array_temporario[j];
k++;
}
}
return;
}
for (int i = inicio; i <= fim && fim - i + 1 >= tamanho_combinacao - indice; i++){
array_temporario[indice] = cartas[i];
gerar_combinacoesseq(cartas, array_temporario, i + 1, fim, indice + 1, tamanho_combinacao, arrguardarcartas);
}
}
void imprimir_combinacaoseq (wchar_t cartas[], int n, int tamanho_combinacao, wchar_t cartaString, wchar_t cartaHex, wchar_t *(*arrguardarcartas)[54] ){
wchar_t array_temporario[tamanho_combinacao];
gerar_combinacoesseq(cartas, array_temporario, 0, n - 1, 0, tamanho_combinacao, arrguardarcartas);
}Editor is loading...
Leave a Comment