• Domingo 19 de Mayo de 2024, 06:02

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.


Mensajes - Iganguli

Páginas: 1 [2] 3
26
C/C++ / Re: Dudas con C++ en Cadena de caracteres
« en: Viernes 1 de Agosto de 2008, 19:39 »
las cadenas no se comparan con == se usa strcmp

if( !strcmp(nombre, "leonardo") && !strcmp(Apellido,"trigos") )

strcmp regresa 0 si son iguales, -1 si es meno y 1 si es mayor

27
C/C++ / Re: Regresar una matriz en una funcion
« en: Jueves 31 de Julio de 2008, 17:44 »
si lo que quieres es declararla local ponle static asi al salir de la funcion te asegurara que siga ese espacio de memoria reservado

28
C/C++ / Re: crear una matriz puntero de dimensión variable
« en: Viernes 25 de Julio de 2008, 18:53 »
Citar
Pero recuerda que cuando definís un puntero con new, tenés que eliminarlo con delete

en este caso se hace asi
Código: Text
  1. for( int = 0; i < filas; ++i)
  2.     delete [] mat[filas]
  3.  delete [] mat
  4.  
  5.  

29
C/C++ / Re: QUE NECESITO SABER PARA HACER UN SISTEMA OPERATIVO EN C++?
« en: Viernes 25 de Julio de 2008, 04:48 »
bueno antes que nada necesitas saber que con el turbo c++ 3.0 no vas a llegar a algun lado, ya que es un compilador viejisimo, usa uno mas actual como el de gnu en s version para windows minigw, despues uno poco de ASM y un buen libro te recomiendo el de el creador de minix en ese libro esta el codigo fuente de es SO

30
C/C++ / Re: Consulta sobre C++
« en: Jueves 24 de Julio de 2008, 20:42 »
Citar
Bueno, como sabemos cuando trabajan con C++ hablamos de aspecto grafico, osea botones, barras etc.-
Cuando hablamos de C++ se habla de Programacion Orientada a Objetos

Eso de botones iy barras es GUI

y para lo que tu quieres usa librerias Qt Glade o las Winforms de Microsoft y para estas ultimas usa el VC++ express

31
C/C++ / Re: crear una matriz puntero de dimensión variable
« en: Miércoles 23 de Julio de 2008, 22:58 »
puedes probar con un puntero doble ej: float **mat, despues pides al usuario que determine el tamaño pidiendo filas y columnas, y con "new" o "malloc" creas la matriz en el double puntero;

Código: Text
  1. printf("da las filas");
  2. scanf("%d", &filas);
  3. printf("da las columnas");
  4. scanf("%d", &columnas);
  5. **mat = new float[filas];
  6. for( i = 0; i < filas; i++)
  7.  *mat[i] = new float[columnas];
  8.  
y asi haces la matriz

32
Inteligencia Artificial / Re: Prolog Busqueda De Un Elemento Por Posicion
« en: Viernes 11 de Julio de 2008, 06:43 »
Te paso este codigo que tal vez te pueda ayudar

Código: Text
  1. Domains
  2. lista = elemento*
  3. elemento = symbol
  4. N = integer
  5.  
  6. Predicates
  7. nondeterm elemento(elemento, N, lista).
  8.  
  9. Clauses
  10. elemento (X, 1, [X|_]).
  11. elemento (X, N, [_|C]) :- elemento(X, M, C), N = M + 1.
  12.  
  13. Goal
  14. %elemento (E,3,[a,b,c,d]).
  15. elemento (c,N,[a,b,c,d]).
  16.  

33
C/C++ / Re: una consulta.. sobre un algoritmo
« en: Miércoles 2 de Julio de 2008, 21:56 »
Pues la busqueda binaria se usa sobre vectores ordenados y generalmente se toma como pivote el elemento de enmedio y si es mayor el elemento que busco desecho la otra mitad  y asi no es necesario pasarlo a un arbol binario

34
C/C++ / Re: Problema para aprender C
« en: Miércoles 2 de Julio de 2008, 21:50 »
Citar
Cuando te refieres a Deitel es un a una guia de programacion un entorno de desarrollo o que?

Se refiere al libro escrito por Deitel padre e hijo es un buen libro para aprender a programar en C/C++

35
C/C++ / Re: Hola Buenas Tardes
« en: Jueves 19 de Junio de 2008, 05:30 »
si pones cual es el error que te arroja asi como las caracteristicas de la computadora o has proba instalando oto compilador por que podrian ser muchas cosas si fueras mas explicito te podrian ayudar mejor

36
C/C++ / Re: Listas Enlasadas
« en: Martes 17 de Junio de 2008, 04:48 »
si pones el codigo que llevas hecho te podrian ayudar mucho mas ya que se verian los errores que cometes y tratar de corregirlos, recuerda que no solo es pedir y espera a que alguien haga el trabajo por ti

37
C/C++ / Re: Como Puedo Hacer Que No Me Tire Error?
« en: Domingo 15 de Junio de 2008, 04:48 »
te has olvidado de hacer lo que dijo eternal cuando usas scanf te hace flata &usuario modificalo y haber que tal

38
C/C++ / Re: Limpiar Pantalla En C++
« en: Sábado 14 de Junio de 2008, 23:33 »
bueno una forma estandar creo que no existe (creo ;) ) y tomalo como un consejo no uses el borlnad ya que es un compilador de 16 bits aparte de viejisimo no esta actualizado al c++ puedes probar con otros compiladores como el vc++ en su version express si no quieres pagar licencia :D  o usar los de gnu como el minigw o el codeblocks o es el dev cpp y dejar atras el borland

39
C/C++ / Re: Limpiar Pantalla En C++
« en: Viernes 13 de Junio de 2008, 05:48 »
si estas usando c++ entonces la libreria es la  

Código: Text
  1. #include &#60;cstdlib&#62;
  2.  

y si usas c entonces es la

Código: Text
  1. #include &#60;stdlib.h&#62;
  2.  

40
C/C++ / Re: Limpiar Pantalla En C++
« en: Domingo 8 de Junio de 2008, 02:07 »
puedes usar
Citar
system("cls");
que esta en la  stdlib.h

41
C/C++ / Re: Conversion De Hexadecimal A Decimal
« en: Lunes 19 de Mayo de 2008, 04:40 »
revisa esta linea
Código: Text
  1. char cad[1]={' '};
  2.  
declaras cad de tamaño 1 por ende cuando ingresas datos no lo reconoce bien , lo podrias solucionar declarando cad de mayor tamaño recuerda reservar 1 mas para el '\0' que es el de terminacion de cadena

42
C/C++ / Re: Numero Reflejo!!
« en: Miércoles 7 de Mayo de 2008, 19:47 »
Código: Text
  1. paso= x-10*(x/10);
  2.  

en esta linea lo que hace es dividir entre 10 y multiplicar por 10 pero como son enteros no da el mismo resultado ejemplo x = 1234 si divido (1234 / 10) como los dos numeros son enteros entonces me da como resultado 123 el cual es multiplicado por 10 y da 1230 si se lo resto al valor de x me da el 4 el cual es el valor que adquiere paso en el la primera vez que se ejecuta el ciclo entonces no da infinitamente 0

Código: Text
  1. reflejo= reflejo*potencia+paso;
  2.  

en esta linea reflejo aduqiere el valor de 4 con lo cual tampoco es infinitamente 0

Código: Text
  1. x=x/10;
  2.  

aqui lo que hace es quitarle las unidades al numero x es como en el paso 1 como se divide entre enteros se elimina el residuo

ahora digo que el detalle esta en
Código: Text
  1. potencia= potencia*10;
  2.  
por que a la tercera vuelta en reflejo esta 43 peo potencia es 100 entonces 43 * 100 es 4300 y si le sumamos el paso que seria 2 me da 4302 deberia que checar esta linea de codigo

43
C/C++ / Re: Numero Reflejo!!
« en: Miércoles 7 de Mayo de 2008, 05:11 »
Deberias checar esta linea en esta podria estar el error te sugiero que hagas el ejercicio e papel y lo vayas haciendo paso  a paso ahi te daras cuenta del error

Código: Text
  1. potencia= potencia*10;
  2.  
  3.  

44
C/C++ / Re: Argumentos Con C (linux)
« en: Viernes 11 de Abril de 2008, 20:49 »
puedes usar

Código: Text
  1. int main(int argc, char *argv[])
  2.  

45
C/C++ / Re: Tengo Problemas Con Ese Codigo
« en: Miércoles 9 de Abril de 2008, 19:51 »
checate estas lineas

Código: Text
  1. long double p;
  2. scanf(&#34;%d %d&#34;,&n,&p);
  3.  

estas tratando de leer 2 numero enteros cuando p es un long double

46
C/C++ / Re: Problema Guardar Registros
« en: Domingo 16 de Marzo de 2008, 07:29 »
bueno ahora si creo que ya encontre el problema y le cambie el fwrite al fpintf les anexo el codigo por si ha alguien le interesa

Código: Text
  1.  
  2. #include &#60;stdio.h&#62;
  3. #include &#60;conio.h&#62;
  4. #include &#60;string.h&#62;
  5. #include &#60;stdlib.h&#62;
  6. #define MAX 125
  7.  
  8. char archivo1[]=&#34;C:&#092;&#092;empleados.txt&#34;;
  9. char archivo2[]=&#34;C:&#092;&#092;departamento.txt&#34;;
  10. char archivo3[]=&#34;C:&#092;&#092;bueno.txt&#34;;
  11. char *tmp;
  12.  
  13. typedef struct {
  14.  int ID;
  15.  char nombre[20];
  16.  int depto;
  17.  }empleado;
  18.  
  19. typedef struct {
  20.  int depto;
  21.  char nom_dep[20];
  22.  }departamento;
  23.  
  24. typedef struct {
  25.  int ID;
  26.  char nombre[20];
  27.  char depa[20];
  28.  }combina;
  29.  
  30. empleado separar(char *temporal)
  31. {
  32. empleado emp;
  33. tmp=strtok(temporal,&#34;,&#34;);
  34. emp.ID=atoi(tmp);
  35. tmp=strtok(NULL,&#34;,&#34;);
  36. strcpy(emp.nombre,tmp);
  37. tmp=strtok(NULL,&#34;&#092;n&#34;);
  38. emp.depto=atoi(tmp);
  39. printf(&#34;&#092;n%d %s %d&#34;,emp.ID,emp.nombre,emp.depto);
  40. return emp;
  41. }
  42.  
  43. departamento separar2(char *temporal)
  44. {
  45. departamento dep;
  46. tmp=strtok(temporal,&#34;,&#34;);
  47. dep.depto=atoi(tmp);
  48. tmp=strtok(NULL,&#34;&#092;n&#34;);
  49. strcpy(dep.nom_dep,tmp);
  50. printf(&#34;&#092;n%d %s&#34;,dep.depto,dep.nom_dep);
  51. return dep;
  52. }
  53.  
  54. int main()
  55. {
  56.    FILE *arch1, *arch2, *arch3;
  57.    char temporal[MAX];
  58.    int i=0,j,k,tame=0,tamd=0,band;
  59.    empleado tempor[10];
  60.    departamento tempo[10];
  61.    combina aux[10];
  62.    arch1=fopen(archivo1,&#34;r+&#34;);
  63.    arch2=fopen(archivo2,&#34;r+&#34;);
  64.    if(arch1==NULL || arch2==NULL)
  65.     printf(&#34;Error de apertura&#34;);
  66.    else
  67.    {
  68.    fgets(temporal,MAX,arch1);
  69.    printf(&#34;leyendo empleados&#092;n&#34;);
  70.    while(!feof(arch1))
  71.    {
  72.    tempor[i]=separar(temporal);
  73.    fgets(temporal,MAX,arch1);
  74.    i++;
  75.    }
  76.    //fgets
  77.    tame=i++;
  78.    i=0;
  79.    fgets(temporal,MAX,arch2);
  80.       printf(&#34;leyendo depto&#092;n&#34;);
  81.    while(!feof(arch2))
  82.    {
  83.    tempo[i]=separar2(temporal);
  84.    fgets(temporal,MAX,arch2);
  85.    i++;
  86.    }
  87.    tamd=i++;
  88.    }
  89.    printf(&#34;&#092;n&#092;n&#34;);
  90.    for(i=0;i&#60;tame;i++)
  91.    printf(&#34;%d %s %d &#092;n&#34;,tempor[i].ID,tempor[i].nombre,tempor[i].depto);
  92.    printf(&#34;&#092;n&#092;n&#34;);
  93.    for(i=0;i&#60;tamd;i++)
  94.    printf(&#34;%d %s &#092;n&#34;,tempo[i].depto,tempo[i].nom_dep);
  95.    printf(&#34;&#092;n&#092;n&#34;);
  96.    for(j=0;j&#60;tame;j++)
  97.    {
  98.    aux[j].ID = tempor[j].ID;
  99.    memset(aux[j].nombre,' ',21);
  100.    memset(aux[j].depa,' ',21);
  101.    strcpy(aux[j].nombre ,tempor[j].nombre);
  102.    band=0;
  103.    for(k=0;k&#60;=tamd;k++)
  104.    {
  105.     if(tempor[j].depto==tempo[k].depto)
  106.     {
  107.     strcpy(aux[j].depa,tempo[k].nom_dep );
  108.     band=1;
  109.     }
  110.    }
  111.    if(band==0)
  112.   strcpy(aux[j].depa,&#34;Desconocido&#34;);
  113.    }
  114.    for(i=0;i&#60;tame;i++)
  115.    {
  116.     printf(&#34;%s %s %d &#092;n&#34;,aux[i].nombre,aux[i].depa,aux[i].ID);
  117.    }
  118.    arch3=fopen(archivo3,&#34;w+&#34;);
  119.    if(arch3!=NULL)
  120.    {
  121.    for(j=0;j&#60;tame;j++)
  122.      {
  123.      fprintf(arch3,&#34;%s %s %d &#092;n&#34;,aux[j].nombre,aux[j].depa,aux[j].ID);
  124.      }
  125.    }
  126.    else printf(&#34;No se pudo abrir el 3 archivo&#092;n&#34;);
  127.    fclose(arch1);
  128.    fclose(arch2);
  129.    fclose(arch3);
  130.    system(&#34;pause&#34;);
  131.    return EXIT_SUCCESS;
  132. }
  133.  
  134.  

47
C/C++ / Re: Problema Guardar Registros
« en: Viernes 14 de Marzo de 2008, 14:04 »
al paracer tenia mal mas que eso pero ya lo resolvi pero ahora como lo guardo ya que nada mas guarda el nombre y el area pero el id no de nuevo alguien que me eche la mano

Código: Text
  1.  
  2. #include &#60;stdio.h&#62;
  3. #include &#60;conio.h&#62;
  4. #include &#60;string.h&#62;
  5. #include &#60;stdlib.h&#62;
  6. #define MAX 125
  7.  
  8. char archivo1[]=&#34;C:&#092;&#092;empleados.txt&#34;;
  9. char archivo2[]=&#34;C:&#092;&#092;departamento.txt&#34;;
  10. char archivo3[]=&#34;C:&#092;&#092;bueno.txt&#34;;
  11. char *tmp;
  12.  
  13. typedef struct {
  14.   int ID;
  15.   char nombre[20];
  16.   int depto;
  17.   }empleado;
  18.  
  19. typedef struct {
  20.   int depto;
  21.   char nom_dep[20];
  22.   }departamento;
  23.  
  24. typedef struct {
  25.   int ID;
  26.   char nombre[20];
  27.   char depa[20];
  28.   }combina;
  29.  
  30. empleado separar(char *temporal)
  31. {
  32.  empleado emp;
  33.  memset(emp.nombre,' ',20);
  34.  tmp=strtok(temporal,&#34;,&#34;);
  35.  emp.ID=atoi(tmp);
  36.  tmp=strtok(NULL,&#34;,&#34;);
  37.  strcpy(emp.nombre,tmp);
  38.  tmp=strtok(NULL,&#34;,&#34;);
  39.  emp.depto=atoi(tmp);
  40.  printf(&#34;&#092;n%d %s %d&#34;,emp.ID,emp.nombre,emp.depto);
  41.  return emp;
  42. }
  43.  
  44. departamento separar2(char *temporal)
  45. {
  46.  departamento dep;
  47.  memset(dep.nom_dep,' ',20);
  48.  tmp=strtok(temporal,&#34;,&#34;);
  49.  dep.depto=atoi(tmp);
  50.  tmp=strtok(NULL,&#34;&#092;n&#34;);
  51.  strcpy(dep.nom_dep,tmp);
  52.  printf(&#34;&#092;n%d %s&#34;,dep.depto,dep.nom_dep);
  53.  return dep;
  54. }
  55.  
  56.  
  57.  
  58. int main()
  59. {
  60.     FILE *arch1, *arch2, *arch3;
  61.     char temporal[MAX];
  62.     int i=0,j,k,tame=0,tamd=0;
  63.     empleado tempor[10];
  64.     departamento tempo[10];
  65.     combina aux[10];
  66.     arch1=fopen(archivo1,&#34;r+&#34;);
  67.     arch2=fopen(archivo2,&#34;r+&#34;);
  68.     if(arch1==NULL || arch2==NULL)
  69.      printf(&#34;Error de apertura&#34;);
  70.     else
  71.     {
  72.   fgets(temporal,MAX,arch1);
  73.   while(!feof(arch1))
  74.   {
  75.   tempor[i]=separar(temporal);
  76.   fgets(temporal,MAX,arch1);
  77.   i++;
  78.   }
  79.   tempor[i]=separar(temporal);
  80.   tame=i++;
  81.   i=0;
  82.   fgets(temporal,MAX,arch2);
  83.   while(!feof(arch2))
  84.   {
  85.   tempo[i]=separar2(temporal);
  86.   fgets(temporal,MAX,arch2);
  87.   i++;
  88.   }
  89.   tempo[i]=separar2(temporal);
  90.   tamd=i++;
  91.     }
  92.     for(i=0;i&#60;=tame;i++)
  93.     printf(&#34;%d %s %d &#092;n&#34;,tempor[i].ID,tempor[i].nombre,tempor[i].depto);
  94.     for(i=0;i&#60;=tamd;i++)
  95.     printf(&#34;%d %s &#092;n&#34;,tempo[i].depto,tempo[i].nom_dep);
  96.     for(j=0;j&#60;=tame;j++)
  97.     {
  98.     aux[j].ID = tempor[j].ID;
  99.     memset(aux[j].nombre,' ',21);
  100.     memset(aux[j].depa,' ',21);
  101.     strcpy(aux[j].nombre ,tempor[j].nombre );
  102.     for(k=0;k&#60;=tamd;k++)
  103.      if(tempor[j].depto==tempo[k].depto)
  104.       strcpy(aux[j].depa,tempo[k].nom_dep );
  105.     }
  106.     for(i=0;i&#60;tame;i++)
  107.     {
  108.      printf(&#34;%s %s %d &#092;n&#34;,aux[i].nombre,aux[i].depa,aux[i].ID);
  109.  
  110.     }
  111.     arch3=fopen(archivo3,&#34;w+&#34;);
  112.     if(arch3!=NULL)
  113.     {
  114.     for(j=0;j&#60;tame;j++)
  115.       {
  116.       fwrite(&aux[j],sizeof(combina),1,arch3);
  117.       }
  118.     }
  119.     else printf(&#34;No se pudo abrir el 3 archivo&#092;n&#34;);
  120.     fclose(arch1);
  121.     fclose(arch2);
  122.     fclose(arch3);
  123.     system(&#34;pause&#34;);
  124.     return EXIT_SUCCESS;
  125. }
  126.  
  127.  

48
C/C++ / Problema Guardar Registros
« en: Viernes 14 de Marzo de 2008, 13:53 »
hola tengo dudas en este programa lo que tiene que hacer es leer datos de 2 archivos y combinarlos en uno mismo asi por ejemplo el archivo empleados  tiene
1,jose,10
2,luisa,20
3,juan,5
y el archivo departamento tiene
10,sistemas
5,administracion
20,soporte
entonces en el archivo bueno.txt deberia guardar
1,jose,sistemas
2,luisa,soporte
3,juan,administracion
el prolema es que si lee bien los registros del archivo empleado y departamento pero al momento de guardarlos al 3 archivo ya no lo guarda si alguien e echa una mano gracias


Código: Text
  1.  
  2. #include &#60;stdio.h&#62;
  3. #include &#60;conio.h&#62;
  4. #include &#60;string.h&#62;
  5. #include &#60;stdlib.h&#62;
  6. #define MAX 125
  7.  
  8. char archivo1[]=&#34;C:&#092;&#092;empleados.txt&#34;;
  9. char archivo2[]=&#34;C:&#092;&#092;departamento.txt&#34;;
  10. char archivo3[]=&#34;C:&#092;&#092;bueno.txt&#34;;
  11.  
  12. typedef struct {
  13.   int ID;
  14.   char nombre[30];
  15.   int depto;
  16.   }empleado;
  17.  
  18. typedef struct {
  19.   int depto;
  20.   char nom_dep[30];
  21.   }departamento;
  22.  
  23. typedef struct {
  24.   int ID;
  25.   char nombre[30];
  26.   char depa[30];
  27.   }combina;
  28.  
  29. empleado separar(char *temporal)
  30. {
  31.  empleado emp;
  32.  memset(emp.nombre,' ',30);
  33.  char aux[]=&#34;,&#34;;
  34.  char *tmp;
  35.  tmp=strtok(temporal,aux);
  36.  emp.ID=atoi(tmp);
  37.  tmp=strtok(NULL,aux);
  38.  strcpy(emp.nombre,tmp);
  39.  tmp=strtok(NULL,aux);
  40.  emp.depto=atoi(tmp);
  41.  printf(&#34;&#092;n%d %s %d&#34;,emp.ID,emp.nombre,emp.depto);
  42.  return emp;
  43. }
  44.  
  45. departamento separar2(char *temporal)
  46. {
  47.  departamento dep;
  48.  memset(dep.nom_dep,' ',30);
  49.  char aux[]=&#34;,&#34;;
  50.  char *tmp;
  51.  tmp=strtok(temporal,aux);
  52.  dep.depto=atoi(tmp);
  53.  tmp=strtok(NULL,aux);
  54.  strcpy(dep.nom_dep,tmp);
  55.  printf(&#34;&#092;n%d %s&#34;,dep.depto,dep.nom_dep);
  56.  return dep;
  57.  }
  58.  
  59.  
  60.  
  61. int main()
  62. {
  63.     FILE *arch1, *arch2, *arch3;
  64.     char temporal[MAX];
  65.     int i=0,k,tame=0,tamd=0;
  66.     empleado tempor[10];
  67.     departamento tempo[10];
  68.     combina aux[10];
  69.     arch1=fopen(archivo1,&#34;r+&#34;);
  70.     arch2=fopen(archivo2,&#34;r+&#34;);
  71.     if(arch1==NULL || arch2==NULL)
  72.      printf(&#34;Error de apertura&#34;);
  73.     else
  74.     {
  75.   fgets(temporal,MAX,arch1);
  76.   while(!feof(arch1))
  77.   {
  78.   tempor[i]=separar(temporal);
  79.   fgets(temporal,MAX,arch1);
  80.   i++;
  81.   }
  82.   tempor[i]=separar(temporal);
  83.   tame=i++;
  84.   i=0;
  85.   fgets(temporal,MAX,arch2);
  86.   while(!feof(arch2))
  87.   {
  88.   tempo[i]=separar2(temporal);
  89.   fgets(temporal,MAX,arch2);
  90.   i++;
  91.   }
  92.   tempo[i]=separar2(temporal);
  93.   tamd=i++;
  94.     }
  95.     for(int j=0;j&#60;tame;j++)
  96.     {
  97.    
  98.     aux[i].ID = tempor[i].ID&#59;
  99.     strcpy(aux[i].nombre ,tempor[i].nombre );
  100.     for(int k=0;k&#60;10;k++)
  101.       if(tempor[i].depto==tempo[k].depto)
  102.         strcpy(aux[i].depa,tempo[k].nom_dep );
  103.   }
  104.     arch3=fopen(archivo3,&#34;w+&#34;);
  105.     if(arch3!=NULL)
  106.     {
  107.     for(int j=0;j&#60;tame;j++)
  108.       {
  109.       fwrite(&aux[j],90,1,arch3);
  110.       }
  111.     }
  112.     else printf(&#34;No se pudo abrir el 3 archivo&#092;n&#34;);
  113.     fclose(arch1);
  114.     fclose(arch2);
  115.     fclose(arch3);
  116.     system(&#34;pause&#34;);
  117.     return EXIT_SUCCESS;
  118. }
  119.  
  120.  
  121.  

49
C/C++ / Re: Permutaciones, Combinaciones Posibles
« en: Domingo 9 de Marzo de 2008, 20:25 »
el codigo que pusiste tenia muchos problemas  y diego nos hizo l favor de mostra algunos como por ejemplo que te falta el uso del ; ademas observe otors como que en el for usas , en lugar de ; ademas usas variables globales entonces el programa se puede liar un poco por que tambien las declaraste locales haciendo unas correciones quedaria asi

Código: Text
  1.  
  2. # include&#60;stdio.h&#62;
  3. # include&#60;conio.h&#62;
  4.  
  5. long factorial(int k)
  6. {
  7. long resultado=1;
  8. int i;
  9. for(i=1;i&#60;=k;i++)
  10. resultado*=i;
  11. return(resultado);
  12. }
  13.  
  14. int main(void)
  15. {
  16. int n,p,fx;
  17. printf(&#34;dame n,p&#34;);
  18. scanf(&#34;%d %d&#34;,&n,&p);
  19. if(n&#60;0)
  20. printf(&#34;numero invalido&#34;);
  21. else if(p&#60;0)
  22. printf(&#34;numero invalido&#34;);
  23. else if(p&#62;n)
  24. printf(&#34;numero invalido&#34;);
  25. else
  26. fx=factorial(n)/(factorial(n-p)*(factorial(p)));
  27. printf(&#34;f(x)=%ld&#34;,fx);
  28. getch();
  29. return 0;
  30. }
  31.  
  32.  

50
C/C++ / Re: Problema Con Dev Cpp
« en: Miércoles 20 de Febrero de 2008, 18:57 »
ok tanx por la ayuda

Páginas: 1 [2] 3