<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.18.2">
</HEAD>
<BODY>
Gracias por la corrección, Steven; ahora me ha quedado bastante claro.<BR>
<BR>
Un saludo,<BR>
<BR>
Rubén.<BR>
<BR>
-----Mensaje original-----<BR>
<B>De</B>: Steven Davidson <<A HREF="mailto:Steven%20Davidson%20%3csrd4121@njit.edu%3e">srd4121@njit.edu</A>><BR>
<B>Responder a</B>: Lista de correo sobre C y C++ <<A HREF="mailto:Lista%20de%20correo%20sobre%20C%20y%20C++%20%3ccconclase@listas.conclase.net%3e">cconclase@listas.conclase.net</A>><BR>
<B>Para</B>: Lista de correo sobre C y C++ <<A HREF="mailto:Lista%20de%20correo%20sobre%20C%20y%20C++%20%3ccconclase@listas.conclase.net%3e">cconclase@listas.conclase.net</A>><BR>
<B>Asunto</B>: Re: [C con Clase] De vueltas con if<BR>
<B>Fecha</B>: Tue, 12 Aug 2008 15:20:09 -0400<BR>
<BR>
<PRE>
Hola Rubén,

Rubén wrote:

> Hola David.

> Me ha ido perfecto!!! Muchas gracias, aunque no tenga ni idea de 
> programación, me estoy enviciando.


Nos alegramos que te vaya gustando todo esto.

> El código me ha quedado así:

> #include<iostream>
> #include<cstring>
> using namespace std;

> int main()

> {
> char palabra[32];
> char platano[32];
> cout<<"Oro parece plata no es, quien no lo adivine muy tonto es... "<<endl;
> cout<<"Escribe la respuesta:"<<endl;
> cin>>palabra;
> cout<<" "<<endl;

>     if( strcmp( palabra, "platano" ) == 0 )
> cout<<"bravo. Acertaste."<<endl;
> if( strcmp( palabra, "platano" ) != 0 )
> cout<<"La respuesta es incorrecta"<<endl;

Aunque esto sea correcto, no es muy lógico. Fíjate en las condiciones 
que estás haciendo:

Si palabra = "platano", entonces
   correcto
Si palabra != "platano", entonces
   incorrecto

El resultado de este tipo de condiciones es binario; es decir, o es 
verdadero o es falso. Por lo tanto, si sabemos que es verdadero, no 
tiene sentido comprobar si también es falso; ya lo sabemos. Por esta 
razón tenemos el vocablo 'else' junto con 'if'. El resultado es el 
siguiente:

if( strcmp( palabra, "platano" ) == 0 )
   cout << "bravo. Acertaste." << endl;
else
   cout << "La respuesta es incorrecta" << endl;

Con esto, sólo hacemos una comprobación, en lugar de dos, la cual una de 
ellas era innecesaria.


> };



Espero que esto te ayude.

Steven


_______________________________________________
Lista de correo Cconclase <A HREF="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</A>
<A HREF="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</A>
Bajas: <A HREF="http://listas.conclase.net/index.php?gid=2&mnu=FAQ">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</A>
</PRE>
</BODY>
</HTML>