Red de conocimiento informático - Conocimiento sistemático - Buscamos orientación experta sobre cómo programar

Buscamos orientación experta sobre cómo programar

El siguiente contenido es de "C Fun Programming", la idea debería ser la misma/

/***************** ******* ******************************************* *****\

* Copyright (c) 2009 eryar Todos los derechos reservados *

* *

* Archivo: Main.cpp *

* Fecha: 2009-04-11 21:01 *

* Autor: eryar@163.com *

* *

* Descripción: *

* Tres parejas asistieron a una boda, los tres novios eran A, B y C, y las tres novias eran Tres, pero las respuestas que escuché*

* fueron de la siguiente manera: A dijo que se casaría con X; X dijo que su prometido era C; C dijo que se casaría con Z*

* Matrimonio Después de escuchar esto, esta persona se dio cuenta de que todos estaban bromeando y todo era. mentiras Por favor programe para descubrir quién *

* se casará con quién *

* *

\**********. *********************************** **************** *******/

#include lt;iostreamgt;

usando el espacio de nombres std;

inline char GetChar(int i); la declaración de la función debe ser antes de la llamada

int main(int argc, char *argv[])

{

for (int x=1; xlt; =3; x) { // Enumerar exhaustivamente todas las situaciones de { // Enumerar exhaustivamente todas las situaciones de Y

for (int z=1; zlt;=3; z) { // Enumerar exhaustivamente todas las situaciones de Z

if (x! =1 amp; amp; x!=3 amp; amp; z!=3 // Si se cumplen las condiciones, se encuentra la respuesta correcta

amplificador;

x!=z amp; y!=z) {

coutlt;lt;"¡Ajá! ¡Descubre la verdad por fin!"lt;lt;endl;

coutlt; GetChar(x)lt;lt;" se casará con X."lt;lt;endl;

coutlt;lt;GetChar(y)lt;lt;" se casará con Y."lt;lt ;endl ;

coutlt;lt;GetChar(z)lt;lt;" se casará con Z."lt;lt;endl;

}

}

}

}

return 0;

}

char GetChar(int i) // esto declarando en línea la compilación no se considera en línea

{

switch(i) {

caso 1: return 'A';

caso 2: devuelve 'B';

caso 3: devuelve 'C';

predeterminado:

devuelve 0; p> }

}

/*

Análisis de problemas y diseño de algoritmos

====== ===== =======

Represente las tres personas A, B y C como 1, 2 y 3, y exprese el matrimonio de X y A como "X = 1",

Expresa Y sin casarse con A como "Y!=1".

Según la descripción de la pregunta, puedes escribir la expresión:

X != 1 A No casarse con X

X != 3 , las tres novias Y y Z no pueden convertirse en esposas, entonces están:

X != Y

X ! = Z

Y != Z

p>

Enumere todas las situaciones posibles y sustitúyalas en las expresiones anteriores para operaciones de inferencia.

Si la situación asumida hace que la Todos los resultados de las expresiones anteriores son verdaderos, entonces la hipótesis es

es el resultado correcto.

==================== ===================== ===============

Considere usar operaciones de bits para resolver tales problemas.

*/