Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: josephb401 en 4 Abril 2016, 00:42 AM

Título: problema con el do while loop
Publicado por: josephb401 en 4 Abril 2016, 00:42 AM
alquien me podria decir cual es el problema con este codigo nose porque cuando lo ejecuto nunca me puedo salir del loop sin importar que entre

do
{
cout << "\nEnter AM/PM: ";
getline(cin, am_pm);

} while (am_pm != "AM" || am_pm != "PM");
Título: Re: ayuda C++
Publicado por: engel lex en 4 Abril 2016, 01:04 AM
primero el titulo de tu problema debe ser descriptivo, esto es un foro de informática, estás colocando tu tema en el subforo de c/c++, así que en lineas generales "ayuda c++" es cerca de 80% redundante al contexto, modifica el problema y da una descripción a tu problema específico

segundo recomiendo que uses las etique tas GeSHi en tu código para que sea más legible e indiques la linea del error (ya te modifiqué la etiqueta, pero no se la linea)
Título: Re: problema con el do while loop
Publicado por: josephb401 en 4 Abril 2016, 18:47 PM
me puedes ayudar?
Título: Re: problema con el do while loop
Publicado por: crack81 en 4 Abril 2016, 19:03 PM
No se esta cumpliendo la condicion, una forma de resolverlo  seria asi:

Código (cpp) [Seleccionar]
#include <iostream>

using namespace std;

int main()
{
    string am_pm;
    do
    {
        cout << "\nEnter AM/PM: ";
        getline(cin, am_pm);

    }
    while ((am_pm != "AM") && (am_pm != "PM"));
    return 0;
}


Otra:
Código (cpp) [Seleccionar]
while (!((am_pm == "AM") || (am_pm == "PM")));

Otra:
Código (cpp) [Seleccionar]
while (((am_pm == "AM") || (am_pm == "PM"))==false);