aconselhar como codificar uma matriz na qual os campos podem tomar um dos valores do conjunto {-1,0,1,2,3,4} (cinco estados no total), eu gostaria de ter alguma função que possa codificar uma matriz do formulário:
Aconselhar como codificar uma matriz na qual os campos podem tomar um dos valores do conjunto {-1,0,1,2,3,4} (cinco estados no total),
Deslocá-lo para a região positiva por 2 unidades para remover 0 e -1 (seguido de restauração após a leitura) e você pode facilmente formar um número inteiro.
granit77: Mudar para a faixa positiva por 2 unidades para remover 0 e -1 (seguido de restauração após a leitura) e um número inteiro pode ser facilmente formado.
Bem, que o conjunto seja {0,1,2,3,4,5} - não importa, é importante que deste grupo de dígitos se obtenha um inteiro, se nesta fase eu tiver uma matriz 12x6, você pode obter algo na forma:
parece encaixar no int, mas não sei, e se você quiser matriz 100x6 ;)
SZY: da Ajuda: representação interna da int é um número inteiro longo de 4 bytes de tamanho. Constantes inteiras podem tomar valores de -2147483648 a 2147483647. Se a constante excede a faixa especificada, o resultado é indefinido.
granit77: Bem, você ainda tem variáveis de corda de reserva, embora elas sejam mais lentas. Mas 0 e -1 devem ser removidos.
Até agora existem apenas variáveis de string - o algoritmo em si ainda está em "papel", estou preparando os dados para carregar em um arquivo, mas então precisaremos analisar os dados, e é aí que a velocidade é necessária, enquanto eu penso em como descarregar para int em vez de stringi
Normalmente o SGBD armazena dados de grupo como uma string. A velocidade de processamento com grandes volumes é uma dor de cabeça. Não tenho acompanhado o que aconteceu com o Clarion, procure-o - a compatibilidade C foi de primeira linha.
obrigado eu sou tão estúpido))))+- dá um menos para ir)))))))))
viver e aprender, viver e morrer um tolo))))) funciona, obrigado Alexei por me lembrar do currículo escolar...
aconselhar como codificar uma matriz na qual os campos podem tomar um dos valores do conjunto {-1,0,1,2,3,4} (cinco estados no total), eu gostaria de ter alguma função que possa codificar uma matriz do formulário:
| -1,0,1,2,3,4, -1,0,1,2,3,4 |
| -1,0,1,2,3,4, -1,0,1,2,3,4 |
| -1,0,1,2,3,4, -1,0,1,2,3,4 |
| -1,0,1,2,3,4, -1,0,1,2,3,4 |
| -1,0,1,2,3,4, -1,0,1,2,3,4 |
| -1,0,1,2,3,4, -1,0,1,2,3,4 |
Salvar para vários inteiros: int arr[6] = {xxxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx,xxxx}, com a menor quantidade de esforço computacional
cps
Mostre-me um exemplo de suas matrizes.
| 4,4,1,2,1,1, 1,1,1,1,1,1 |
| 4,4,1,2,1,1, 1,1,1,1,1,1 |
| 4,4,4,2,1,1, 1,1,1,1,1,1 |
| 4,3,3,3,3,3, -1,-1,-1,-1,-1,-1 |
| 3,3,3,3,3,3, -1,-1,-1,-1,-1,-1|
| 3,3,3,3,3,3, -1,-1,-1,-1,-1,-1|
a seguir:
| 4,4,1,2,2,2, 1,1,1,1,1,1 |
| 4,4,1,2,2,2, 1,1,1,1,1,-1 |
| 3,4,4,2,2,2, 1,1,1,1,1,-1 |
| 4,3,3,3,3,3, 1,1,1,-1,-1,-1 |
| 3,3,3,3,3,3, -1,-1,-1,-1,-1,-1|
| 3,3,3,3,3,3, -1,-1,-1,-1,-1,-1|
Quero compactar dados - uma linha, um número inteiro
Aconselhar como codificar uma matriz na qual os campos podem tomar um dos valores do conjunto {-1,0,1,2,3,4} (cinco estados no total),
Mudar para a faixa positiva por 2 unidades para remover 0 e -1 (seguido de restauração após a leitura) e um número inteiro pode ser facilmente formado.
Bem, que o conjunto seja {0,1,2,3,4,5} - não importa, é importante que deste grupo de dígitos se obtenha um inteiro, se nesta fase eu tiver uma matriz 12x6, você pode obter algo na forma:
| 4,4,1,2,1,1, 1,1,1,1,1,1 | = 2147483647 - 441211111111/2
parece encaixar no int, mas não sei, e se você quiser matriz 100x6 ;)
SZY: da Ajuda: representação interna da int é um número inteiro longo de 4 bytes de tamanho. Constantes inteiras podem tomar valores de -2147483648 a 2147483647. Se a constante excede a faixa especificada, o resultado é indefinido.
Bem, você ainda tem variáveis de corda de reserva, embora elas sejam mais lentas. Mas 0 e -1 devem ser removidos.
Normalmente o SGBD armazena dados de grupo como uma string. A velocidade de processamento com grandes volumes é uma dor de cabeça. Não tenho acompanhado o que aconteceu com o Clarion, procure-o - a compatibilidade C foi de primeira linha.