• Viernes 8 de Noviembre de 2024, 17:30

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - dooky_titay

Páginas: [1]
1
C/C++ / Re: Prograama Que Muestra Promedio De Alumno Y Gral
« en: Sábado 23 de Octubre de 2004, 09:53 »
es todo!!!! ahi la llevo en mi logica chicharronera, y aki les va el codigo
Código: Text
  1.  
  2. #include <stdlib.h>
  3. #include <stdio.h>
  4. #include <conio.h>
  5.  
  6. struct nodo{
  7.   int c1,c2,c3;
  8.   struct nodo *p;}a,*aux;
  9.  
  10.   void main()
  11.   {
  12.     char op='s';
  13.     int x=1,y=1;
  14.     float prom=0;
  15.     clrscr();
  16.     printf("\nAlumno 1 Calificacion 1: ");
  17.     scanf("%i",&a.c1);
  18.     printf("\nAlumno 1 Calificacion 2: ");
  19.     scanf("%i",&a.c2);
  20.     printf("\nAlumno 1 Calificacion 3: ");
  21.     scanf("%i",&a.c3);
  22.     aux=&a;
  23.     while(op=='s')
  24.     {
  25.       aux->p=(struct nodo*)malloc(sizeof(struct nodo));
  26.       aux=aux->p;
  27.       aux->p=NULL;
  28.       x=x+1;
  29.       printf("\nAlumno %i Calificacion 1: ",x);
  30.       scanf("%i", &aux->c1);
  31.       printf("\nAlumno %i Calificacion 2: ",x);
  32.       scanf("%i", &aux->c2);
  33.       printf("\nAlumno %i Calificacion 3: ",x);
  34.       scanf("%i", &aux->c3);
  35.       printf("\nOtro Alumno (S/N): ");
  36.       op=getche();
  37.     }
  38.     aux=&a;
  39.     for(y=1;y<=x;y++)
  40.     {
  41.       printf("\nPromedio del Alumno %i es: %i",y,(aux->c1+aux->c2+aux->c3)/3);
  42.       prom+=((aux->c1+aux->c2+aux->c3)/3);
  43.       aux=aux->p;
  44.     }
  45.     printf("\nPromedio del Grupo es: %f",prom/x);
  46.     getch();
  47.   }
  48.  
  49.  
  50.  
:D  lo hice jajajajaj ni yo me la creo  <_<

2
C/C++ / Ayudenme Por Favor!!!!
« en: Jueves 21 de Octubre de 2004, 09:29 »
Amigos, que tal,  :huh: necesito ayuda con este programa, que tengo que exponer el viernes <_< , me pidieron que hiciera una captura de n alumnos y calculara su promedio y despues el promedio general de los alumnos capturados
pero ya me hice bolas :blink: , espero y puedan darme algunos tips para poder sacar el promedio general :rolleyes:
GRACIAS!!! :D
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

struct nodo{
int c1,c2,c3;
struct nodo *p;}a,*aux;

void main()
{
char op='s';
clrscr();
&a==NULL;
aux=&a;
   while(op=='s')
   {
   aux->p=(struct nodo*)malloc(sizeof(struct nodo));
   aux=aux->p;
   aux->p=NULL;
   printf("\nCalificacion 1: ");
   scanf("%i", &aux->c1);
   printf("\nCalificacion 2: ");
   scanf("%i", &aux->c2);
   printf("\nCalificacion 3: ");
   scanf("%i", &aux->c3);
   printf("\nOtro Alumno (S/N): ");
   op=getche();
   }
   aux=&a;
   while(aux!=NULL)
   {
   printf("\npromedio del alumno es: %i",(aux->c1+aux->c2+aux->c3)/3);
   aux=aux->p;
   }

getch();
}

3
C/C++ / Re: Tengo Problemas Para Acomodar Una Lista Circular
« en: Domingo 10 de Octubre de 2004, 19:06 »
Amigos tengo un programa de lista enlazada el cual hicimos en equipo pero ahora tenemos que hacer uno de lista circular lo malo ;)  es que nos cambiaron a todos del equipo &lt;_&lt;  y mis compañeros pues no me ayudan  :angry:  chequen este codigo del programa espero que puedan darme unos tips para poder arreglar este codigo para que sea de lista circular, en verdad apreciaria mucho su ayuda
GRACIAS :hola:  :D

/* Operando y manteniendo una lista */
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

struct ListaNodo
{  /* estructura auto-referenciada */
   char dato;
   struct ListaNodo *proximoPtr;
};

typedef struct ListaNodo LISTANODO;
typedef LISTANODO *LISTANODOPTR;

void insertar(LISTANODOPTR *, char);
char suprimir(LISTANODOPTR *, char);
int EstaVacia(LISTANODOPTR);
void ImprimeLista(LISTANODOPTR);
void instrucciones(void);

main()
{
   LISTANODOPTR IniciaPtr = NULL;
   int eleccion=1;
   char item;

   instrucciones();  /* despliega el menu */

   while (eleccion != 3)
   {
      do
      {
        printf("? ");
        scanf("%d", &eleccion);
      }while(eleccion<1 || eleccion>3);
      switch (eleccion)
      {
         case 1: printf("Dame un caracter: ");
                 scanf("\n%c", &item);
                 insertar(&IniciaPtr, item);
                 ImprimeLista(IniciaPtr);
                 break;
         case 2: if (EstaVacia(IniciaPtr))
                 printf("La lista esta vacia.\n\n");
                 else
                 {
                    printf("Dame el caracter a ser suprimido: ");
                    scanf("\n%c", &item);
                    if (suprimir(&IniciaPtr, item))
                    {
                       printf("%c suprimido.\n", item);
                       ImprimeLista(IniciaPtr);
                    }
                    else printf("%c no encontrado.\n\n", item);
                 }
                 break;
         default:printf("Invalida eleccion.\n\n");
                 instrucciones();
                 break;
      }
   }
   printf("Fin de la ejecucion.\n");
   return 0;
}

/* Imprime las instrucciones */
void instrucciones(void)
{
   printf("Dame tu eleccion:\n"
          "   1 para insertar un elemento en la lista.\n"
          "   2 para suprimir un elementa desde la lista.\n"
          "   3 para terminar.\n");
}

/* Inserta a un nuevo valor en la lista ordenada*/
void insertar(LISTANODOPTR *sPtr, char valor)
{
   LISTANODOPTR nuevoPtr, anteriorPtr, actualPtr;

   nuevoPtr = malloc(sizeof(LISTANODO));

   if (nuevoPtr != NULL)/* es espacio disponible */
   {
      nuevoPtr->dato = valor;
      nuevoPtr->proximoPtr = NULL;
      anteriorPtr = NULL;
      actualPtr = *sPtr;
      while (actualPtr != NULL && valor > actualPtr->dato)
      {
         anteriorPtr = actualPtr;          /* camina a ...   */
         actualPtr = actualPtr->proximoPtr;  /* ... proximo node */
      }
      if (anteriorPtr == NULL)
      {
         nuevoPtr->proximoPtr = *sPtr;
         *sPtr = nuevoPtr;
      }
      else
      {
         anteriorPtr->proximoPtr = nuevoPtr;
         nuevoPtr->proximoPtr = actualPtr;
      }
      printf("\n%-25s%-25s%-25s","sPtr","anteriorPtr","actualPtr");
      printf("\n%-25p%-25p%-25p",sPtr,anteriorPtr,actualPtr);
      getch();
   }
   else printf("%c no insertado. No hay memoria disponible.\n", valor);
}

/* Suprimiendo un elemento de la lista */
char suprimir(LISTANODOPTR *sPtr, char valor)
{
   LISTANODOPTR anteriorPtr, actualPtr, tempPtr;

   if (valor == (*sPtr)->dato)
   {
      tempPtr = *sPtr;
      *sPtr = (*sPtr)->proximoPtr;  /* suprimiendo el nodo */
      free(tempPtr);             /* liberando la memoria del nodo suprimido */
      return valor;
   }
   else
   {
      anteriorPtr = *sPtr;
      actualPtr = (*sPtr)->proximoPtr;
      while (actualPtr != NULL && actualPtr->dato != valor)
      {
         anteriorPtr = actualPtr;          /* caminando a ...   */
         actualPtr = actualPtr->proximoPtr;  /* ... proximo node */
      }

      if (actualPtr != NULL)
      {
         tempPtr = actualPtr;
         anteriorPtr->proximoPtr = actualPtr->proximoPtr;
         free(tempPtr);
         return valor;
      }
   }
   return '\0';
}

/* Regresa un 1 si la lista esta vacia, 0 en cualquier otro caso */
int EstaVacia(LISTANODOPTR sPtr)
{
   return sPtr == NULL;
}

/* Imprime la lista */
void ImprimeLista(LISTANODOPTR actualPtr)
{
   if (actualPtr == NULL)
      printf("\nLa lista esta vacia.\n\n");
   else
   {
      printf("\nLa lista es:\n");
      while (actualPtr != NULL)
      {
         printf("%c --> ", actualPtr->dato);
         actualPtr = actualPtr->proximoPtr;
      }
      printf("NULL\n\n");
   }
}

4
C/C++ / Serie Fibonacci Usando Un Arreglo De 20 Posiciones
« en: Martes 5 de Octubre de 2004, 10:26 »
tengo problemas a la hora de efectuar la operacion usando el arreglo :P
ya tengo el programa hecho con un for y con un while pero me falta el del arreglo
ke muestre las primeras 20 posiciones de la serie de fibonacci  &lt;_&lt; si alguien puede echarme la mano se los agradeceria :D, creo ke me estoy volviendo loco  :blink:

Páginas: [1]