Mais um blog inútil.

Maio 16, 2010

Mais três arvorezinhas

Filed under: Arvorezinha,Coding,Useless — falco @ 12:19

Em Bash:

#!/bin/bash

ramo="*";
tam="7";
i="1";

while [ $i -lt $tam ]; do
j="1";
while [ $j -lt $i ]; do
printf "$ramo"
j=$[$j+1]
done
printf "\n"
i=$[$i+1]
done

printf "\n\n"

Em Tea:

#!/home/diogo/Tea/tea-3.2.5/bin/tsh

# Esta é uma arvorezinha escrita em Tea,
# de acordo com o rfc da arvorezinha praticado
# em http://www.blol.org/

# version 0.1

# This script can never fail!

define arvorezinha ""
define estrelinha "*"
define fiter 1

while { < $fiter 6 } {
define siter 0
while { < $siter $fiter } {
set! arvorezinha [str-cat $arvorezinha $estrelinha]
set! siter [+ $siter 1]
}
set! arvorezinha [str-cat $arvorezinha "\n"]
set! fiter [+ $fiter 1]
}

echo $arvorezinha

Em Tea, com POO

#!/home/diogo/Tea/tea-3.2.5/bin/tsh

# Esta é uma arvorezinha escrita em Tea,
# de acordo com o rfc da arvorezinha praticado
# em http://www.blol.org/

# version 0.2
# Changes:
# * now with an OOP paradigm

# This script can never fail!

class LitleTree (
_max_size
_branch
)

method LitleTree constructor () {
#Blol.org Arvorezinha RFC COMPLIANT
set! _max_size 5
set! _branch "*"
}

method LitleTree PleaseSaveSortelha () {
echo "Por favor, salva a Sortelha!!!"
echo "http://vamossalvarsortelha.blogspot.com/"
}

method LitleTree PlantLitleTree () {
define small_tree
set! small_tree ""
define i 0

while { < $i $_max_size } {
set! i [ + $i 1 ]
define f 0
while { < $f $i } {
set! f [+ $f 1]
set! small_tree [str-cat $small_tree $_branch]
}
set! small_tree [str-cat $small_tree "\n"]
}

echo $small_tree
}

#serious business:
define litle_tree [ new LitleTree ]
$litle_tree PleaseSaveSortelha
echo "\n"
$litle_tree PlantLitleTree

Um comentário a “Mais três arvorezinhas”

  1. paf diz:

    fodasse. depois de ver uma arvorezinha em bash tão lame senti-me tentado a rescreve-la.

    aqui fica.

    $ cat ar
    #!/bin/bash

    ramo="*****";
    i=$[${#ramo}-1];
    while [ $i -ge 0 ]; do echo "${ramo:$i}";i=$[$i-1];done
    $ bash ar
    *
    **
    ***
    ****
    *****
    $

    e sim, podia ser menos lame ainda ;)

Comentar

widgeon
widgeon
widgeon
widgeon