Informatici problematici?

Leggevo questo articolo sul blog di antirez. Sembra che negli USA molti provetti programmatori, ai colloqui non riescano a rispondere positivamente al seguente quesito:

Scrivere un programma che stampa i numeri da 1 a 100, scrivendo Fizz al posto del numero se il numero e’ multiplo di 3, Buzz se il numero e’ multiplo di 5 e per finire FizzBuzz se il numero e’ sia multiplo di 3 che di 5.

Io non ho studiato informatica all’università, ma ho fatto (senza mai pentirmene) Economia e Commercio. C’ho messo 5 minuti a scrivere questo:

<?php

  function re($i){
    $div3 = ($i % 3);
    $div5 = ($i % 5);
    if($div3 == 0 && $div5 == 0){
      $i = "FizzBuzz";
    }elseif($div3 == 0 && $div5 != 0){
      $i = "Fizz";
    }elseif($div3 != 0 && $div5 == 0){
      $i = "Buzz";
    }
   
    echo $i . "<br />";
  }

  $i = 1;

  for ($i; $i <= 100; $i++){
    re($i);
  }
?>

Consultabile qui.

So benissimo che è una mezza cagata di codice. L’ho fatto come se fossi li ad un colloquio, senza avere la possibilità di cercare o consultare manuali. Dovendo fare tutto di getto.

Ricordo ancora con orrore quando, da una laureanda in Informatica (un futuro 110 e Lode), mi fu chiesto come si apriva e cos’era quel coso .tar.gz che gli avevo mandato…

11 thoughts on “Informatici problematici?”

  1. In effetti fai 2 controllini in più del dovuto 😛

    PS: Sono in uni e aspetto il mio turno per discutere il progetto… che sia in giro a rompere le balle è comprensibile direi.

  2. Eh, lo so che si poteva scrivere più snello, ma l’ho fatto volutamente di botto…

    Che progetto devi discutere? La conquista dell’univers(ità)ò?

  3. Così al volo, non l’ho controllato quindi potrebbe anche non funzionare… (io l’università l’ho abbandonato dopo 1 anno buttato)

    for ($i = 0; $i <= 100; $i++){
    $to_print = ($i % 3) ? ” : ‘Fizz’;
    $to_print .= ($i % 5) ? ” : ‘Buzz’;
    echo $to_print;
    }

  4. Molto bello quello di claudio.

    Comunque, donzo, era la discussione di una serie di algoritmi per un esame chiamato Analisi Numerica. Odio gli esami di matematica… ho dovuto utilizzare tutta la mia sopraffina intelligenza per riuscire a copiare il tutto 😀

  5. Quello di claudio sostituisce il numero nel caso la condizione sia soddisfatta, ma nel caso non lo sia ritorna una variabile vuota.

    @ ilSilente: spero il tuo prof legga questo blog 😀

  6. Non sarà il massimo dell’eleganza ma funziona : - P

    <code><?php
    for ($numero=1;$numero<=100;$numero++) {
    $risultato = “”;
    if (($numero % 3) == 0) {$risultato=”fizz”;}
    if (($numero % 5) == 0) {$risultato.=”buzz”;}
    if ($risultato==””) {$risultato=$numero;}
    echo $risultato . “<br />”;
    }
    ?></code>

    Partorito in 6 minuti da un programmatore a tempo perso E - )

    @anonimo: oltre a chiedere aiuto nei posti giusti, scaricati 7zip

  7. @ Pseudo: non c’è bisogno del code. Anzi è proprio superfluo. I tag vengono tradotti automaticamente in html ; - )

    E forse non serviva nemmeno rispondere all’anonimo. IMHO è uno scherzone…

Comments are closed.