quinta-feira, janeiro 06, 2005

Truque: Como retornar o número de colunas da última linha.

Quando a gente está fazendo uma tabela e colocando dados da esquerda para a direita, normalmente a última linha fica incompleta.
123
456
78 
Essa tabela, por exemplo, tem só duas colunas preenchidas na última linha. Pergunta! Dado o número de items, quantos items tem na última coluna? Reposta: número de items MOD número de colunas. Nossa tabela acima: 8 MOD 3 = 2. Ou seja, duas colunas na última linha. Legal né? É sim, mas o que acontece se o número de items bater certinho? Tipo, 9 items para 3 colunas? 9 MOD 3 = 0... Hmmm... ZERO não é o número de items da última coluna, o número de items da última coluna é 3. Ok, então, aqui vai um truque para voltar o número exato: (((colunas - 1) + (items MOD colunas)) MOD colunas) + 1 EITA!!! Exemplos pra tentar facilitar um pouco: 7 items, 3 colunas: (((3 - 1) + (7 MOD 3)) MOD 3) + 1 ((2 + 1) MOD 3) + 1 (3 MOD 3) + 1 0 + 1 1 9 items, 3 colunas: (((3 - 1) + (9 MOD 3)) MOD 3) + 1 ((2 + 0) MOD 3) + 1 (2 MOD 3) + 1 2 + 1 3 É isso aí. Pra quem não quer fazer um simples if, ou é um maníaco matemático. Essa é uma solução. Alguém conhece outras?

Nenhum comentário:

Postar um comentário