eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingJaki język?Re: Jaki język?
  • Data: 2010-02-25 15:45:33
    Temat: Re: Jaki język?
    Od: "Stachu 'Dozzie' K." <d...@g...eat.some.screws.spammer.invalid> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 2010-02-25, Andrzej Kmicic <d...@p...onet.pl> wrote:
    > Mif pisze:
    >> PHP to IMO koszmar potrafiący skutecznie zniechęcić do programowania nawet
    >> dużo starsze osoby. Choć może niektórym odpowiadać, choć osobiście go
    >> bardzo nie lubię.
    >
    > A co takiego koszmarnego w PHP ?. PHP to nie tylko język do młócenia
    > stronek za 100 zł. To łatwy, szybki język skryptowy o bardzo
    > uniwersalnym zastosowaniu.

    C też jest łatwym, szybkim językiem (kompilowanym akurat) o bardzo
    uniwersalnym zastosowaniu. I wiesz co? Nie do wszystkiego jest używany.

    > Wrzucę tu taka perełkę jaką znalazłem, no napisz to w innym języku tak
    > prosto w kilku linijkach.

    Może być Perl?

    > To tabelka tekstowa robiona z tablicy
    > dwuwymiarowej :
    >
    > +-----+----+----------------------+
    > | Pos | No | Driver |
    > +-----+----+----------------------+
    > | 1 | 1 | Kimi Räikkönen |
    > +-----+----+----------------------+
    > | 2 | 2 | Felipe Massa |
    > +-----+----+----------------------+
    > | 3 | 22 | Lewis Hamilton |
    > +-----+----+----------------------+
    > | 4 | 4 | Robert Kubica |
    > +-----+----+----------------------+
    >
    > function text_table($data) {
    > $keys = array_keys(end($data));
    > $size = array_map('strlen', $keys);
    > foreach(array_map('array_values', $data) as $e)
    > $size = array_map('max', $size,
    > array_map('strlen', $e));
    > foreach($size as $n) {
    > $form[] = "%-{$n}s";
    > $line[] = str_repeat('-', $n);
    > }
    > $form = '| ' . implode(' | ', $form) . " |\n";
    > $line = '+-' . implode('-+-', $line) . "-+\n";
    > $rows = array( vsprintf($form, $keys) );
    > foreach($data as $e)
    > $rows[] = vsprintf($form, $e);
    > return $line . implode($line, $rows) . $line;
    > }

    A fuj, jakie brzydkie spaghetti.
    #v+
    sub text_table {
    my ($two_dim_table) = @_;

    my ($position, $number, $driver);

    format STDOUT_TOP =
    +-----+----+----------------------+
    | Pos | No | Driver |
    +-----+----+----------------------+
    .
    format STDOUT =
    | @>> | @> | @<<<<<<<<<<<<<<<<<<< |
    $position, $number, $driver
    +-----+----+----------------------+
    .

    for my $r (@$two_dim_table) {
    ($position, $number, $driver) = @$r;
    write;
    }
    }
    #v-

    --
    Secunia non olet.
    Stanislaw Klekot

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: