elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 [8] 9 10 11 12
71  Programación / Programación C/C++ / Re: duda c++ en: 1 Julio 2011, 18:53 pm
Ahhh que el codigo para las operaciones los tienes hechos...Solo quieres una opcion para saber que operacion hacer ¿no?.


Código
  1. #include <stdio.h>
  2. int main()
  3. {
  4. int c;
  5. char palabra [40];
  6.  
  7. printf("escriba la frase para la operacion");
  8.  
  9. gets(palabra);
  10.  
  11.  
  12. printf("elija una opcion,1/2/3: ");
  13. scanf("%d",&c);
  14. switch(c){
  15. case 1:
  16.     //haz esta operacion.
  17.     break;
  18.     case 2:
  19.          //haz esto;
  20.          break;
  21.          case 3:
  22.               //haz lo otro;
  23.               break;
  24.               default:
  25.                       printf("esa opcion no es valida");
  26.                       break;
  27.                       }
  28.                       getchar();
  29. return 0;
  30. }
  31.  

Mira a ver  :xD Esto haria una serie de opciones,si es 1 haz esto,si es 2 haz lo otro...

Salu2
72  Programación / Programación C/C++ / Re: duda c++ en: 1 Julio 2011, 17:39 pm
Estoy dormido  :xD

Mira a ver si es esto lo que buscas,porque si es escribir una frase y transformarla en una ecuacion estamos listos:

Código
  1. #include <stdio.h>
  2. #include <string.h>
  3. int main (void){
  4.    int a,b,c,i;
  5.    char cadena1[40]="milmasmil";
  6.    char cadena2[50];
  7.    char cadena3[40];
  8.    printf("escriba la operacion:  ");
  9.    gets(cadena1);
  10.    i= strcmp(cadena1,"milmasmil");
  11.    if (i==0){
  12.                                    printf("el resultado es 2000");
  13.                                    }
  14.                                    getchar();
  15.                                    return 0;
  16.                                    }
  17.  
73  Programación / Programación C/C++ / Re: duda c++ en: 1 Julio 2011, 16:20 pm
Perdon por la interrupcion pero no pillo el codigo del programa¿que es lo que quieres hacer exactamente? :huh: Es que lo veo asi y no entiendo bien lo que quieres hacer,pero si es comparar cadenas ya te lo dijeron arriba,explicate un poco mejor y te digo donde van las sentencias.

Además tu programa es C pero utilizas la libreria de C++,luego para llamar al sistema tienes que utilizar la libreria cstdlib y para ahorrarte esta libreria y la llamada al sistema sustituye el system("pause") por getchar().

Salu2
74  Programación / Programación C/C++ / Re: funcion como argumento a otra funcion en: 29 Junio 2011, 20:52 pm
Osea,que inversos es un puntero a una funcion que acepta un int y devuelve un double¿no?

Y pf guarda la direccion de memoria de funcsuma¿no?

La verdad es que me esta costando aprenderlo,el otro ejemplo que puse que vi por el foro no era tan complicado  >:(

Un saludo y gracias
75  Programación / Programación C/C++ / Re: funcion como argumento a otra funcion en: 29 Junio 2011, 10:19 am
Gracias a ambos por contestar,he estado buscando y buscando y nada,que no me entra,he encontrado un ejemplo en este mismo foro:

Código
  1. int (*punt) (int,int);
  2.  
  3.  int suma(int a , int b){
  4.     return a+b;
  5.  }
  6.  
  7.  int resta(int a , int b){
  8.     return a-b;
  9.  }
  10.  
  11.  *punt=suma;
  12.   punt(2,3);
  13.  
  14.  *punt=resta;
  15.   punt(5,1);
  16.  

Este lo entiendo bien pero el que puse....Se me hace un poco complicado y eso que he buscado,incluso por youtube para ver si habia algun tutorial pero sin resultados...

Mis dudas principalmente son estas:

Dentro de la funcion double funcsuma (int n, double (*f) (int k))

No se que pinta ahi el f(i),deduzco que f es el puntero pero no se...

Y luego esto:
Código
  1. printf ("Suma de cinco inversos: %.3f \n", pf(5, inversos)); //Pasa la direccion de inversos
  2.    printf ("Suma de tres cuadrados: %.3f \n", pf(3, cuadrados)); //Pasa la direccion de cuadrados

Aunque Leo me ha pasado otro pero sigo sin entenderlo...

Código
  1.    printf ("Suma de cinco inversos: %.3f \n", pf(5, inversos)); //Pasa la direccion de inversos
  2.    printf ("Suma de tres cuadrados: %.3f \n", pf(3, cuadrados)); //Pasa la direccion de cuadrados

Gracias a ambos.

Un saludo
76  Programación / Programación C/C++ / funcion como argumento a otra funcion en: 29 Junio 2011, 00:15 am
Hola a todos,

Tenía una duda sobre este codigo:
Código
  1. #include <stdio.h>
  2. double inversos(int k);
  3. double cuadrados(int k);
  4. double funcsuma(int n,double (*f)(int k));
  5.  
  6. int main(){
  7. printf("Suma de cinco inversos: %.3f \n",funcsuma(5,inversos));
  8. printf("Suma de tres cuadrados: %.3f \n",funcsuma(3,cuadrados));
  9. }
  10. double funcsuma(int n,double(*f)(int k)){
  11. double s= 0;
  12. int i;
  13. for (i=1;i<=n;i++)
  14. s+=f(i);
  15. return s;
  16. }
  17. double inversos(int k){
  18. return 1.0/k;}
  19. double cuadrados(int k){
  20. return (double) k* k;
  21. }

Resulta que no tengo ni idea de que realiza funcsuma(osea,lo de dentro del codigo si,lo que no entiendo es como luego se puede unir a las otras dos funciones) y porque luego se pone:

Código
  1. printf("Suma de cinco inversos: %.3f \n",funcsuma(5,inversos));
  2. printf("Suma de tres cuadrados: %.3f \n",funcsuma(3,cuadrados));

Si alguien me lo pudiera explicar me haría un gran favor.

Gracias por adelantado.

Un saludo
77  Programación / Programación C/C++ / Re: Problema básico en c++ en: 28 Junio 2011, 19:40 pm
Para C fwrite y fread(escribir y leer respectivamente) primero abriendo el archivo con fopen

Para C++  ifstream para leer y ofstream para escribir

http://www.cplusplus.com/doc/tutorial/files/
http://c.conclase.net/ficheros/index.php?cap=002#inicio

Yo nunca he leido textos desde C++ siempre lo he hecho desde C que me resulta mas facil.

Salu2
78  Programación / Programación C/C++ / Re: Una pila en C en: 25 Junio 2011, 19:40 pm
No sabria que decirte Leo...Quiero ir acostumbrandome a C++ porque dentro de poco quiero dedicarme absolutamente a POO,no es que no quiera utilizar el codigo que me has puesto,sino que me gusta mas usar C++ asique quitare las cosas de C...

En cuanto a lo de exit,con windows.h me funciona perfecto,no sabria que decirte  :huh:
Pero a partir de ahora pondré lo que me has dicho sobre las constantes de exit.

Gracias por los consejos Leo  ::)

Cuídate
79  Programación / Programación C/C++ / Re: Una pila en C en: 25 Junio 2011, 19:31 pm
Gracias Leo te agradezco el comentario...Bueno en realidad tienes toda la razon,la pila esta compilada mayoritariamente por elementos de estructuras dinamicas en C++,pero es que las aprendi asi y me resultan mas faciles...¿Deberia cambiar el titulo del tema por una pila en C++?¿y cambiar el stdio.h por el iostream?.

Y sobre lo de windows.h ,es necesario para el exit(0)

Salu2 y gracias de nuevo.
80  Programación / Programación C/C++ / Una pila en C en: 25 Junio 2011, 18:37 pm
Hola a todos,

Me parecia interesante postear una pila que hice,para que los que se inicien en las pilas(yo no estoy diciendo que sea un experto,bastante lejos de la realidad  :xD )tengan un modelo de como es,si hay algun error o algo por mejorar,sea bueno o malo no dudeis en decirmelo:
Código
  1. #include <stdio.h>
  2. #include <windows.h>
  3. struct pila{
  4.       int dato;
  5.       struct pila *sig;
  6.       };
  7.  
  8. void inicializapila(struct pila **p){
  9.     *p =NULL;
  10.     }
  11.     void push(struct pila **p,int k){
  12.  
  13.     struct pila *n;
  14.     n = new pila;
  15.     if (n==NULL){
  16.  printf("\nError!No se ha podido crear un nodo en memoria");
  17. exit(0);
  18.  }else{
  19. printf("\nnuevo nodo en memoria creado");
  20.   n->dato = k;
  21.   n->sig = *p;
  22.   *p=n;
  23.    }
  24.    }
  25.  
  26.    int pop(struct pila **p){
  27.    struct pila *m;
  28.    int k;
  29.    m = *p;
  30.    k = m->dato;
  31.    *p = m->sig;
  32.     delete m;
  33.     return k;
  34.      }
  35.                            int verificarpila(struct pila *p){
  36.                                if (p == NULL){
  37.                                       printf("\n!!!!la pila esta vacia!!!");
  38.                                       getchar();
  39.                                       exit(0);
  40.                                       }else{
  41.                                             printf("\nla pila continua llena");
  42.                                             return 1;
  43.                                             }
  44.                                             }
  45.  
  46.                                             int main (){
  47.                                                 struct pila *p;
  48.                                                 int k;
  49.                                                 char res;
  50.                                                 int x;
  51.                                                 char res2;
  52.  
  53.  
  54.                                                 printf("\nvamos a practicar con nodos\n");
  55.                                                 printf("\nverificando si hay espacio en memoria...\n");
  56.                                                inicializapila(&p);
  57.                                                do{
  58.                                                    printf("\nintroduzca un numero: ");
  59.                                                 scanf("%d",&k);
  60.                                                 setbuf ( stdin, NULL );
  61.                                                 push(&p,k);
  62.                                                 printf("\n¿quiere introducir otro valor al nodo S/N: ");
  63.                                                 res = getchar();
  64.                                                }while ((res== 's') || (res=='S'));
  65.                                                do{printf("\nAhora vamos a quitar nodos");
  66.                                                x =  pop(&p);
  67.                                                printf("\nel valor del campo dato del nodo retirado es %d",x);
  68.                                                getchar();
  69.                                                verificarpila(p);
  70.                                                printf("\nquiere quitar otro nodo?(Importante:Si se quitan todos los nodos el programa terminara) S/N: ");
  71.                                                res2 =getchar();
  72.                                                }while ((res2 =='S') || (res2=='s'));
  73.  
  74.                                                 getchar();
  75.                                                 return 0;
  76.  
  77.                                       }

PD:Perdonad la tabulacion xD,si tengo un momento edito el mensaje y la mejoro.Si alguien quiere que ponga comentarios en el codigo que me avise.

Salu2
Páginas: 1 2 3 4 5 6 7 [8] 9 10 11 12
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines