Converter um vetor em uma matriz multidimensional
Publicado por JIMJR (última atualização em 07/06/2011)
[ Hits: 11.845 ]
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; }
Converte Celsius para Farenheit
Nenhum comentário foi encontrado.
Intel corta Vulkan do oneAPI Construction Kit 5.0
Kernel 6.18 em foco, betas fervilhando e avanços em IA no Linux
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
intervenção politica pode interver no Fedora Linux [RESOLVIDO] (12)
Primeiras impressões do Debian 13 (24)
Fedora não reconhece James Donkey 102 Wireless Gaming Mouse (1)