• Lunes 29 de Abril de 2024, 12:24

Autor Tema:  Sicologo  (Leído 1135 veces)

padfo0tcita

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Sicologo
« en: Viernes 16 de Diciembre de 2005, 20:59 »
0
hola queria pedirles como favor que me ayudaran con el siguiente problema
acontinuacion les dejo el problema para luego continuar con el codigo:

En una consulta de un psicólogo, este sienta a sus pacientes en forma circular hacia la derecha a las mujeres y hacia la izquierda a los hombres, además sienta más cerca de él a las personas de mayor edad y a los más jóvenes más lejos de él, cada vez q llegue alguien nuevo tendrá que sentarse a la derecha o a la izquierda dependiendo del sexo y tendrá que posicionarse dependiendo de su edad.  


codigo(esto es lo que e hecho pero como no entiendo mucho no se si esta bueno)

#include <stdio.h>
void main()
typedef struct nodo
{
   char sexo;
   int Edad;          
    struct Nodo *ant;
    struct Nodo *sig;
 }nodo;

float IngresoTerapia(struct nodo*Persona, Psi)
   if(Psi == Null)
   {
      Psi = Persona;
      Psi*ant=Psi;
       Psi*sig=Psi;
    }
    else
    {
      if (Persona*Sexo==M)
      {
         I=Psi*sig;
             while ((I*Edad > Persona*Edad) && (I*Sexo==M) && (I<>Psi))
            {
                          I=I*sig;
                          Persona*sig=I;
                          Persona*ant=I*ant;
              }
       }      
       else
       {
         I=Psi*ant;
         while ((I*Edad > Persona*Edad) && (I*Sexo==F) && (I<>Psi))
          {
                 I=I*ant;
                 Persona*ant=I;
                 Persona*sig=I*sig;
           }
       }    
            Persona*sig*ant=Persona;
            Persona*ant*sig=Persona;
     }        
}

bueno el problema es el siguiente
dev c++ me arroja 2 errores que dicen algo de las dimensiones de las variables

ademas debo hacer el respectivo menu para el ingreso de datos
y lo necesito urgente
porfavor si alguien puede ayudarme se lo agradeceria enormemente gracias!!!  :hola:

silverfox

  • Miembro MUY activo
  • ***
  • Mensajes: 280
    • Ver Perfil
Re: Sicologo
« Respuesta #1 en: Lunes 19 de Diciembre de 2005, 14:44 »
0
Hola.

Siento decirte que, a mi entender, estás planteando mal tu programa:

Contu estructura nodo, te resulta imposible saber dónde está situado el psicólogo en cada momento, dónde empiezan los hombres y dónde las mujeres.


La cuestión que hablas de la lista circular y de todos los datos me hacen suponer que sería más correcto usar 2 listas, una para hombres y otra para mujeres (a la derecha y a la izquierda del psicólogo), relacionar ambas listas para recorrerlas como si fuesen una sola y no meter al psicólogo.

La otra opción es meter un nodo 'Psicólogo' e insertar a izquierda y derecha del mismo.

Para ambas opciones necesitarás una estructura de cabecera donde almacenar los datos que precisas.


Como última opción, te diría que implementases una lista doblemente enlazada normal, donde tuvieses operaciones para recorrerla en ambos sentidos y pudieses insertar ordenadamente desde el principio y desde el final.


No tengo ni idea de si me he explicado correctamente, espero que sí.

Suerte



Silverfox