Ver Mensaje Individual
  #1  
Antiguo 04-10-2006
axelbb axelbb is offline
Miembro
 
Registrado: oct 2004
Posts: 127
Reputación: 20
axelbb Va por buen camino
Angry ¿¿¿Por mi culpa Bush Premio Nobel de la Paz???

O: "Cuando la culpa la tuvo Delphi"

¡Amigos del foro, me ha pasado algo terrible!

Resulta que The Nobel Foundation me encargó hacerles un programa para elegir al Premio Nobel de la Paz. Como siempre, hay tantos candidatos que decidieron al final tirar un dado y el que sale... sale.

La cosa era ponerlos en una lista (una matriz) y cuando tiraran los dados, se debía elegir en un combo desplegable el valor obtenido, y el sistema automáticamente debería enviar a todas las agencias noticiosas del mundo simultáneamente la buena nueva.

Para ello, hice un programa como el que sigue. Por favor, inicien un nuevo proyecto, y en el form arrojen un ComboBox y un Button. En los ítems del ComboBox, pongan los números del dado, del 1 al 6, en su propiedad Style: "csDropDownList", e ItemIndex: 0.

En el evento Button1Click, vá lo siguiente (copien y peguen ):

Código Delphi [-]
//**********************************************
procedure TForm1.Button1Click(Sender: TObject);
var
  NoInvitar: Array[1..3] of String;
  Candidatos: array[0..2] of string;
begin

  NoInvitar[1] := 'Tony Blair';
  NoInvitar[2] := 'George Bush';
  NoInvitar[3] := 'Condolezza Rice';
 
  Candidatos[0] := 'Nelson Mandela';
  Candidatos[1] := 'Madre Teresa de Calcuta';
  Candidatos[2] := 'Dalai Lama';
 
  Try
    ShowMessage('Y el ganador del Premio Nobel de la Paz es: ¡'+
                Candidatos[ComboBox1.ItemIndex]+'!'+
                #13+#13+'¡¡Se ha enviado este mensaje a todas las agencias '+
                'noticiosas del mundo!!');
  Except
    ShowMessage('Fuera de rango. Reintente...');
  end;
 
end;
//**********************************************

Me explico: Hace falta una lista de personajes que NO SE DEBEN INVITAR a la ceremonia, para evitar protestas y espectáculos bochornosos. En base a esa lista los organizadores deben tener especial cuidado de no invitar a esos personajes. Los puse en una matriz, llamada "NoInvitar".

Y para los candidatos, hice otra, "Candidatos". La idea es que al poner el valor del dado, se elige de la matriz "Candidatos" al ganador de la lista. Por supuesto, hay más números posibles que candidatos, así que protegí el acceso de errores mediante un Try...Except. Si ponen un valor más alto que los posibles de la lista, pedirá que reintenten, que tiren de nuevo el dado.

¿Todo Ok? Parece que sí, se los entregué y me senté a contar los jugosos 14.000 euros que me pagaron por esta obra de arte.

Cuando en la CNN ví la noticia que Bush era el nuevo Nobel de la Paz... ¡No lo podía creer! +

En el dado, había salido un 5. ¿No me creen? Hagan la prueba!!! Y que demanden a Borland...

Saludos, y cuidado con el acceso a arrays ...

Última edición por dec fecha: 04-10-2006 a las 16:18:12.
Responder Con Cita