quinta-feira, 3 de março de 2011

Magik Tutorial – Parte 2 – Estruturas Prontas


Magik Tutorial – Parte 2
Estruturas prontas
by WSouza

_part2

    Estruturas prontas
        A linguagem magik oferece algumas estruturas de dados prontas, as quais você instancia e utiliza de acordo com a necessidade.
        Para instanciar, basta associar uma nova instancia das mesmas à uma variàvel como nos exemplos abaixo:
            #vetor dinamico de indexação interna não ordenado
            x << rope.new()
            #vetor de tamanho pré-definido de indexação interna    ordenado
            x << simple_vector.new(tamanho_do_vetor)
            #conjunto indexado internamente não ordenado
            x << equality_set.new()
            #tabela hash indexada externamente não ordenada
            x << hash_table.new()
        Essas são as estruturas mais comumente utilizadas.
    Iterações
        Existem varias formas de definir iterações, aqui vou exemplificar algumas delas:
            _for i _over algum_vetor.elements()
            _loop
                write(i)
            _endloop
            Nesse exemplo, essa iteração irá percorrer o vetor algum_vetor, e para cada elemento presente dentro desse vetor, ele ira imprimir o dado elemento.
            _for i _over 1.upto(10)
            _loop
                write(i)
            _endloop
            Nesse outro exemplo, o que define a duração do loop é a função upto, que recebe o numero final de iterações como parâmetro. O resultado impresso será uma contagem de 1 a 10.
            _for i,j _over hash_table.elements()
            _loop
                write(i, " - ",j)
            _loop
            Nesse caso, usamos 2 variáveis no for, uma para pegar o valor da chave da tabela e outra pra pegar o valor da mesma. O resultado impresso é chave_da_tabela - valor da chave.
    Condicionais
        Aqui vamos ver as formas mais comuns de definir condições para a execução:
            _if a = b
            _then
                write(a)
            _elif a = b _orif
                  b = c
            _then
                write(a," + ",b)
            _elif a = b _andif
                  b = d
            _then
                write(d)
            _else
                write(c)
            _endif
            Nesse exemplo, temos várias condicionais consecutivas. Utilizamos também opções como or ou and, quando queremos comparar várias condições para uma mesma execução.
            Com essas 2 partes do tutorial magik, você já deve ser capaz de criar suas próprias classes e métodos utilizando as funções mais comuns em programação, encerrando assim a 2 parte deste tutorial.
_endpart2

Nenhum comentário :

Postar um comentário

Related Posts Plugin for WordPress, Blogger...