Ir para conteúdo
Fórum Script Brasil
  • 0

Desafio Em Vb


digo4fun

Pergunta

Boa tarde a todos...

Tenho um desafuio em Vbaki e preciso da ajuda de vocês ...preciso muito mesmo, qp eu e mais 3 cabecas não estamos conseguindo...entaum ai vai....

Preciso fazer um programa para a materia ALGEBRA...e e para definir um codigo de erro....e mais ou menos assim..

 Sejam o conjunto codigo (o subgrupo)
C={(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a13,a14,a15)/(a1*a2*a3*a4*a5*a6*a7*a8*a9*a10*a11=0, a1*a2*a3*a4*a5*a6*a7*a8*a9*a10*a11*a12=0, a1*a2*a3*a4*a5*a6*a7*a8*a9*a10*a11*a12*a13=0,
a1*a2*a3*a4*a5*a6*a7*a8*a9*a10*a11*a12*a13*a14=0
a1*a2*a3*a4*a5*a6*a7*a8*a9*a10*a11*a12*a13*a14*a15=0)}

e a funcao decodificadora F: G15 em G15 definida por:

F(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a13,a14,a15) = (a1*a2*a3*a4*a5*a6*a7*a8*a9*a10*a11, a1*a2*a3*a4*a5*a6*a7*a8*a9*a10*a11*a12,
a1*a2*a3*a4*a5*a6*a7*a8*a9*a10*a11*a12*a13,
a1*a2*a3*a4*a5*a6*a7*a8*a9*a10*a11*a12*a13*a14,
a1*a2*a3*a4*a5*a6*a7*a8*a9*a10*a11*a12*a13*a14*a15)

[B]DECODIFICACAO[/B]
Faze4r um proga,a respeitando os procedimentos abaixo:
a) construir a tabela 1-erro-sindrome (um erro ou nenhum erro)
b) simular atraves do programa, a correcao de exatamente um erro

SIMULACAO: ( as mensagens R seraumd adas pelo mestre em laboratorio)
1) dada uma mensagem recebida R (sequencia de 15 digitos)
20 calcular, atraves de F, a sindrome F(R) 
3) verificar, atraves da tabela erro-sindrome, se existe erro
Se não houver erro, isto e, mensgem recebida r com sindrome (000000000000000)
4) Indicar que a mensgem transmitica T pertence a C (sequencia de 2115 digitos) esta correta

SE HOUVER ERRO
5) identificar, atraves da tabela erro-sindrome, o erro de transmissao
6) calcular o simetrico o erro: e'r
7) calcular a mensagem transmitida t+r*e'r e indicar a posicao do erro

o layout da resposta final sera

  1  2 3  4  5  6  7  8   9  10   11   12   ..... POS.  s i n d r
|   |  |  |  |   |  |  |    |  |      |     |     |  |  |        |  |  |  |  |  |

dados:

1) G={0,1,2} e a tabela operacional:

* 0 1 2
0 0 1 2
1 1 2 0
2 2 0 1

2) tabelas dos possiveis erros de um "bit"

100000000000000
010000000000000
001000000000000
000100000000000
e assim sucessivamente e com o numeor 2 tb...

pessoal, e muito muito dificil e preciso muito da ajuda de todos..

quem conseguir uam luz, e preferir falar comigo via email ai vai

digo4fun@hotmail.com

obrigados a todos...

Rodrigo

Tlash Informacoes

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Hehehehe...

Código de Erro de Álgebra...Só falta ser do professor Carlos (Professor de Álgebra da Faculdade).

Explicando:

A função decodificadora serve para corrigir 1 e apenas 1 erro de uma certa seqüencia, no caso, de 15 dígitos.

Há uma tabela de 1-Erro e uma tabela síndrome que é gerada passando-se o código 1-Erro da tabela de 1-Erro na função decodificadora. A tabela de 1-Erro é a tabela que ele montou no seu post:

100000000000000

010000000000000

001000000000000

000100000000000

Pode-se observar que os erros (no caso o número 1) está deslocando-se casa a casa, sendo assim, o erro é de 1ª posição, de 2ª posição, etc.

No caso, é dado uma mensagem, chamada de R que deve ser passada na função decodificadora que vai gerar o que chamamos de Síndrome do código. Em seguida, devemos consultar se a Síndrome encontrada através da função decodificadora está presente na tabela de Síndrome.

Se a Síndrome gerada for de 15 dígitos de 0 (000000000000000) é porque o código fornecido não há erro, caso a Síndrome seja diferente de dos 15 zeros (000000000000000) deve-se pegar o código 1-Erro correspondente e achar seu simétrico, isso através da tabela operação e em seguida operar o resultado do simétrico com o código informado. Isso irá gerar o código correto, claro, lembrando-se que só pode haver 1 alteração com relação ao código fornecido.

Link para o comentário
Compartilhar em outros sites

  • 0

Vou colocar em posts separados para não complicar mais...

Segue um pequeno exemplo:

Sendo a Tabela Operação a seguinte:

|---|---|---|---|
| * | 0 | 1 | 2 |
|---|---|---|---|
| 0 | 0 | 1 | 2 |
|---|---|---|---|
| 1 | 1 | 2 | 0 |
|---|---|---|---|
| 2 | 2 | 0 | 1 |
|---|---|---|---|
A linha e coluna onde tem o * é apenas a identificação da linha. Por exemplo, para operar 1 * 2 basta pegar a linha 1 na coluna 2, ou seja, 1 * 2 = 0.
O zero é o neutro na tabela, pois contém exatamente o mesmo valor que o índice da tabela operação.
Segue a Tabela de 1-Erro que contém os 10 possíveis erros (lembrando que a Função Decodificadora só corrige apenas 1 erro):
TABELA 1-ERRO
10000
01000
00100
00010
00001
20000
02000
00200
00020
00002
Agora, segue a Tabela Síndrome:
TABELA SÍNDROME
11000
01100
01000
00100
10000
22000
02200
02000 *
00200
20000

Sendo a Função Decodificadora: F((g1, g2, g3, g4, g5)) = (g1 * g5, g1 * g2 * g3, g2 * g4, e, e)

* F(00200) = (0*0, 0*0*2, 0*0, 0, 0) = (02000) --> Síndrome

Simulando

Código Informado: 12202 com 0 ou 1 erro

-Calcula-se síndrome pela função decodificadora:

F(12202) = (1*2, 1*2*2, 2*0, 0, 0) = (02200) --> Síndrome

-Agora, acha-se o código 1-Erro do Síndrome achado

Síndrome (02200) --> 1-Erro (02000)

-Acha-se seu simétrico na tabela operação

1-Erro: (02000) --> Simétrico do 1-Erro (01000)

-Opera-se o valor do Simétrico com o código informado

(12202) * (01000)

(1*0, 2*1, 2*0, 0*0, 2*0) = (10202) --> Mensagem Correta

Espero que tenha ajudado.

Abraços,

William Rodrigues

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...