Recentemente mi son ritrovato a dover risolvere problemi tutt’altro che immediati che esulano fortemente dal mio ambito di lavoro standard.
Per esempio, come convincere i miei coinquilini che pagare 8 euro l’anno in più per avere il doppio non sia poi così malaccio.
Siccome io credo nell’Open Source e nel libero scambio di codice, pubblico di seguito l’algoritmo usato.
Una sua applicazione si può vedere nel log della chat MSN 2 post sotto.

public static void main()
{
  // Approccio pessimistico: i miei coinquilini sono 2 mentecatti restii alle novità
  bool propostaAccettata = false;
  // Finché non accettano...
  while (!propostaAccettata)
    // Controlla che siano ancora attivi i nodi di comunicazione
    if ((ping(cecil) == false) || (ping(hakai) == false))
    {
      // Evento imprevisto... (Possibile morte di uno dei tuoi amici)
      print('OMG. WTF? LOL. byez!!1');
      // Fine della conversazione
      break;
    }
    // ... altrimenti, se c'è dialogo ...
    else
    {
      // Di un frase a caso per attirare l'attenzione
      print(strFrasiSaluto[random(10)]);
      // Attendi 3 secondi
      sleep(3000);
      // Cerca di convincerli che la tua proposta è la cosa giusta da fare
      print(strFrasiChePeroranoLaTuaCausa[random(10)]);
      // Attendi 3 secondi
      sleep(3000);
      // Se hanno detto si...
      if (Convert.Bool(read(streamDialogo)) == true)
      {
        // ...Ce l'hai fatta!!!
        propostaAccettata = true;
        // Saluta i tuoi amici, felicemente.
        print('Ok, grazie. Ciao!');
      }
    }
}

2 Risposte a “Programmazione a livelli talmente alti che serve la bombola d’ossigeno.

  1. Ah, ecco come fai.
    Bene.
    La prossima volta vedrò di mandarti in deadlock il thread prima del ritorno dalla sleep.

    ;)

    hakai |
  2. che nerd

    cecil |

Lascia una Risposta