Converter um vetor em uma matriz multidimensional
Publicado por JIMJR (última atualização em 07/06/2011)
[ Hits: 11.886 ]
Este script pega um vetor e o transforma em uma matriz multidimensional de tamanho de dimensões iguais, em breve vou fazer outro com o tamanho variado.
Foi feito no dev/c++ for Windows, portanto, se quiser compilar no Linux terá que retirar a lib conio.h e substituí-la por ncurses.h ou simplesmente trocar o comando getch() por outro similar.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <conio.h>
#define NUM 2
int main() {
int mat_tri[NUM][NUM][NUM][NUM][NUM][NUM][NUM][NUM][NUM][NUM][NUM][NUM][NUM][NUM][NUM][NUM];
int indx;
int vet_mil[NUM^16];
for(indx = 0; indx < pow(NUM,16); indx++) {
vet_mil[indx] = indx + 1;
printf("( %i , %i , %i , %i , %i , %i , %i , %i , %i , %i , %i , %i , %i , %i , %i , %i ) = %i \n",
(int)floor(indx/pow(NUM,15)),
(int)floor(indx/pow(NUM,14)) % NUM,
(int)floor(indx/pow(NUM,13)) % NUM,
(int)floor(indx/pow(NUM,12)) % NUM,
(int)floor(indx/pow(NUM,11)) % NUM,
(int)floor(indx/pow(NUM,10)) % NUM,
(int)floor(indx/pow(NUM,9)) % NUM,
(int)floor(indx/pow(NUM,8)) % NUM,
(int)floor(indx/pow(NUM,7)) % NUM,
(int)floor(indx/pow(NUM,6)) % NUM,
(int)floor(indx/pow(NUM,5)) % NUM,
(int)floor(indx/pow(NUM,4)) % NUM,
(int)floor(indx/pow(NUM,3)) % NUM,
(int)floor(indx/pow(NUM,2)) % NUM,
(int)floor(indx/pow(NUM,1)) % NUM,
indx % NUM,
vet_mil[indx]);
mat_tri[(int)floor(indx/pow(NUM,15)) ]
[(int)floor(indx/pow(NUM,14)) % NUM]
[(int)floor(indx/pow(NUM,13)) % NUM]
[(int)floor(indx/pow(NUM,12)) % NUM]
[(int)floor(indx/pow(NUM,11)) % NUM]
[(int)floor(indx/pow(NUM,10)) % NUM]
[(int)floor(indx/pow(NUM,9)) % NUM]
[(int)floor(indx/pow(NUM,8)) % NUM]
[(int)floor(indx/pow(NUM,7)) % NUM]
[(int)floor(indx/pow(NUM,6)) % NUM]
[(int)floor(indx/pow(NUM,5)) % NUM]
[(int)floor(indx/pow(NUM,4)) % NUM]
[(int)floor(indx/pow(NUM,3)) % NUM]
[(int)floor(indx/pow(NUM,2)) % NUM]
[(int)floor(indx/pow(NUM,1)) % NUM]
[indx % NUM] = vet_mil[indx];
}
getch();
return 0;
}
Algoritmo em C - Ordenação por Inserção
Resolução de uma fórmula de mátemática
Exemplo de janela utilizando o compilador Vala
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
É normal não gostar de KDE? (9)
Linux é a solução para o fim do Windows10? (2)
Problemas com Driver NVIDIA (4)









