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

 

 


Tema destacado: Curso de javascript por TickTack


  Mostrar Mensajes
Páginas: 1 [2] 3 4 5
11  Programación / Programación C/C++ / Re: Error en la definición de una función en: 17 Abril 2016, 21:37 pm
CREO estas colocando mal la librería, no es "<complex.h>" solamente es "<complex>"  ;D

http://www.cplusplus.com/reference/complex/
12  Programación / Programación C/C++ / Re: Base de datos c++ en: 17 Abril 2016, 21:19 pm
El ciclo donde guardas los archivos está mal...
Código
  1. for(int i=0 ; i<cuantos; i++){
  2. fstream file("datos.txt");
  3. file <<"nombre: ";
  4. file <<data[i].nombre<<endl;
  5. file<<"cedula: ";
  6. file <<data[i].numero<<endl;
  7. file.close();
  8. }

Debe de ser así...
a) Primero se declara el fstream fuera del ciclo, si lo pones dentro es como si la inicializaras la variable en cada iteración.

b)Después, si solo quieres guardar los datos para volver a cargarlos luego, solamente debes de guardar el dato en sí, sin ninguna etiqueta antes ("nombre: " y cosas así...), si lo que quieres es crear una salida formateada si debe llevar las etiquetas.

c) Cuando pones "file.close();" estás cerando el buffer de salida, osea cierras el archivo, y si lo haces en cada iteración... pues bueno, como lo volvias a crear, solamente estabas abriendo y cerrando el mismo archivo para guardar un dato por iteración, al final solo se mostraría el ultimo dato ingresado.

Código
  1. fstream file("datos.txt"); //a)
  2. for(int i=0 ; i<cuantos; i++){ //b)
  3. file <<data[i].nombre<<endl;
  4. file <<data[i].numero<<endl;
  5. }
  6. file.close();//c)
13  Programación / Programación C/C++ / Re: Calcular Indice Estudiantil en: 17 Abril 2016, 06:16 am
No estás inicializando correctamente tus arreglos y algunas variables están de más...  :P

Código
  1. #include <stdio.h>
  2.  
  3. int main(){
  4.  
  5. int m, i, n, j, cant[i], calif[j], sumacant=0, sumacalif=0; // la variable "i" o "j" tienen basura, entonces esto genera arreglos indefinidos..
  6. float indice=0;
  7.  
  8. printf("Bienvenido a Indice Vale\n");
  9. printf("Datos a considerar: NOTA>> 4=A, 3=B, 2=C, D=1, 0=F\n");
  10. printf("\n");
  11. printf("Ingrese la cantidad de materias que esta tomando en este cuatrimestre: "); scanf("%d", &m);
  12.  
  13. printf("\n");
  14. printf("\n");
  15.  
  16. printf("\t \t \tRECUERDE LOS DATOS A CONSIDERAR DEL INICIO\n\n");
  17. for (n=0;n<m;n++){ //como no inicializas i o j practicamente accedes a nada dentro de los arreglos...
  18. printf("Ingrese la calificacion obtenida (A,B,C,D,F) de la materia %d: ", n+1); scanf("%d", &calif[j]);
  19. printf ("Ingrese la cantidad de creditos de la materia: ", n+1); scanf("%d", &cant[i]);
  20. sumacalif=+calif[j];
  21. sumacant=+cant[i];
  22.  
  23.  
  24. }
  25. indice=sumacalif/sumacant;
  26.  
  27. printf("Su indice cuatrimestral es: %f", indice);
  28.  
  29. return 0;
  30. }


Quedaría así... Aunque no entiendo que quieres hacer o que resultado debe de dar ojalá me apoyes con un ejemplo... xD
Código
  1. #include <stdio.h>
  2.  
  3. int main(){
  4.  
  5. int sumacant=0, sumacalif=0, m;
  6. float indice=0;
  7.  
  8. printf("Bienvenido a Indice Vale\n");
  9. printf("Datos a considerar: NOTA>> 4=A, 3=B, 2=C, D=1, 0=F\n");
  10. printf("\n");
  11. printf("Ingrese la cantidad de materias que esta tomando en este cuatrimestre: "); scanf("%d", &m);
  12.  
  13. int cant[m], calif[m];
  14.  
  15. printf("\n");
  16. printf("\n");
  17.  
  18. printf("\t \t \tRECUERDE LOS DATOS A CONSIDERAR DEL INICIO\n\n");
  19. for (int i = 0; i < m; i++){
  20. printf("Ingrese la calificacion obtenida (A,B,C,D,F) de la materia %d: ", i+1); scanf("%d", &calif[i]);
  21. printf ("Ingrese la cantidad de creditos de la materia: ", i+1); scanf("%d", &cant[i]);
  22. sumacalif=+calif[i];
  23. sumacant=+cant[i];
  24. }
  25.  
  26. indice=sumacalif/sumacant;
  27.  
  28. printf("Su indice cuatrimestral es: %f", indice);
  29.  
  30. return 0;
  31. }
  32.  
14  Programación / Programación C/C++ / Re: Tengo un problema con un programa que no encuentro la informacion en: 15 Abril 2016, 23:24 pm
Claro que puedes abrir y leer un archivo DOC / DOCX en C / C++, hay muchas librerias....


http://docxfactory.com/

y para .NET tienes esta:

https://github.com/WordDocX/DocX

Gracias hermano, yo no encontré nada así  :(
15  Programación / Programación C/C++ / Re: Tengo un problema con un programa que no encuentro la informacion en: 14 Abril 2016, 06:55 am
Muchas gracias Gunhack por ayudar a :D,  solo nesecitaba orientacion y consejos, ya que estas tareas son mas avanzado de lo que me enseñan.
Y aunque me hubieran acosenjado no hubiera entendido en su totalidad hay muchas cosas que no habia visto  :o :o :o :o, Ya solo tengo que entender el codigo que hiciste para aprender de ello.

voy en tercero y esto de estructura de datos y archivos. Son algo complicados ya veo porque nadie le habia entregado esa tarea al profe.En internet solo hay informacion basica sobre archivos.  

otra cosa en turbo c++ no me corre , solo corregi algunos detalles que conozco como que la libreria iostream y fstream no tengan la .h de encabezado XD
y en turbo c para limpiar pantalla es clrscr();

Si nesecitas un dibujo ,  un logo o una resmasterizacion  me mandas  un mensaje a facebook "Fera Core" ahi le hayo mas aunque estar programando eh perdido algo de practica.

por la escuela no eh tenido chance de hacer ilustraciones por eso tengo esos, pero ya en abril salgo de vacaciones ahi te puedo regresar el favor
aqui mi deviant art: http://feracore.deviantart.com/

Gracias por tu ayuda y tiempo :D

De nada jaja para eso estamos! Y no te preocupes lo hacemos por amor a arte :) Y si, olvidé mencionar que no estaba usando turbo c pero supiste arreglarlo  ;D

De hecho el objetivo es abrir un archivo doc XD
para eso nesecito convertirlo a txt y abre, despues hacer el respaldo en txt :D
el programa funciona  bien en dev c, busca los archivos de texto perfectamente. Que es mejor que turbo c++ para programar c++???
 
esta tarea es obligatorio usar turbo c++ , pero no me gusta turbo c.

Te digo que en c++ no se puede, de verdad x3 o bueno por lo menos no encontré nada, si lo haces, hasmelo saber!  :P
Yo uso codeblocks para programar en c y c++ no sé que tan bien recomendado esté pero a mi me sirve muy bien y me siento cómodo xD
16  Programación / Programación C/C++ / Re: invertir un vector en: 12 Abril 2016, 05:02 am
Aparte de lo que te comentan arriba, te has complicado mucho la vida...  ;D

Código
  1. #include <stdio.h>
  2.  
  3. int main() {
  4.  
  5.    int tam;
  6.  
  7.    printf("Ingrese cuantos numeros desea en el vector: ");
  8.    scanf("%d", &tam);
  9.  
  10.    int vec[tam];
  11.  
  12.    for(int i = 0; i < tam; i++) {
  13.  
  14.        printf("Ingresa el numero del vector[%d]: ", i);
  15.        scanf("%d", &vec[i]);
  16.    }
  17.  
  18.    printf("\n\nVector Inverso\n");
  19.    for(int i = tam-1; i >=0; i--) { //Se inicia desde el tamaño del vecotr -1 que es la posicion final
  20.                                     //y se va disminuyendo hasta 0 que es la posicion inicial
  21.        printf("%d\n", vec[i]);
  22.    }
  23.  
  24. }
  25.  
17  Programación / Programación C/C++ / Re: Tengo un problema con un programa que no encuentro la informacion en: 12 Abril 2016, 04:46 am
Hola soy estudiante en ing. de computación no se si alguien les ha pasado que en la escuela le enseñan lo basico y despues te dejan hacer algo avanzado que ni siquiera en libros puedo encontrar algo de información.  :-(

Bueno eh estado intentando hacer una tarea que solicite al usuario el documento de word (.doc)  a abrirlo desde una usb. Y de eso lo que esta en su contenido hay que crear un respaldo en texto.
 
Lo ultimo es lo de menos, lo que no logro es cambiar la extensión de doc a txt, para abrir el archivo , porque solo se pueden abrir archivos en txt y el bin entonces pense que lo mejor es cambiar la extensión para abrirlo.

Lo estoy haciendo en tubo c++, el profe no me deja utilizar otro compilador. Eh usado dev c++ pero me da muchos errores en las librerias conio, fstream ,windows y muchas mas , aparte que no me deja crear graficos. Si conocen uno mejor que estos 2 y que sistema operativo deberia de usar . por favor comentarlo ya que turbo c no me gusta mucho tiene muchos bugs en w7 y en dev c muchas librerias no funcionan.



El problema no se refiere a que el programa haga la conversión automáticamente, lo que pide es que el usuario mismo haga su copia del documento .doc a .txt para poder leerlo ahora sí desde el programa,ya que por sí solo C o C++ no pueden leer archivos de word, o almenos no que yo sepa... Te comento tu código para decirte en que estás mal...  :P

Código
  1. FILE *pf; // declaro mi archivo
  2. char *nombre;
  3. clrscr();

En "char* nombre " No estás creando más que un apuntador y es imposible copiarle algo, tendrías que darle un tamaño específico...

Código
  1. char nombre[50];

Código
  1. if(pf==NULL)
  2. {
  3.  perror("Error al abrir el archivo.doc"); // ".txt!!! xD
  4.  getch();
  5. }



Para leerlo, ya teniendo el archivo .txt yo haría lo siguiente...

Código
  1. FILE *pf;
  2. F = fopen(Nombre, "r");
  3. if(F == NULL) {
  4.  
  5.   printf("Error al abrir el archivo!");
  6.   return 0;
  7. }
  8. printf("Texto en: %s\n\n", Nombre);
  9.  
  10. while(!feof(F)) {
  11.  
  12.    char c = getc(F);
  13.    printf("%c", c);
  14. }
  15.  
  16. fclose(F);

Y lo implementaría de esta manera  :D

Código
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <iostream>
  4. #include <fstream>
  5. #include <windows.h>
  6.  
  7. using namespace std;
  8.  
  9. void limpriarCadena(char cad[], int n) {
  10.  
  11.    for(int i = 0; i < n; i++) {
  12.  
  13.        cad[i] = '\0';
  14.    }
  15. }
  16.  
  17. int main() {
  18.  
  19.    char Unidad[3];
  20.    char Ruta[150];
  21.    char RutaAbsoluta[150];
  22.    char NombreArchivo[50];
  23.    FILE* F;
  24.  
  25.    do {
  26.        system("cls");
  27.        limpriarCadena(Unidad, 3);
  28.        limpriarCadena(Ruta, 150);
  29.        limpriarCadena(RutaAbsoluta, 150);
  30.        limpriarCadena(NombreArchivo, 50);
  31.  
  32.        printf("-Ingresa la letra de la unidad de tu dispositivo(C,D,F...)\n-> ");
  33.        scanf("%c", &Unidad[0]);
  34.        strcat(Unidad, ":\\");
  35.        strcpy(RutaAbsoluta, Unidad);
  36.  
  37.        printf("\n-Ingresa la ruta del archivo(deja en blanco si esta en la raiz)\n-> %s", Unidad);
  38.        while(getchar()!='\n');
  39.        gets(Ruta);
  40.        if(strlen(Ruta)!=0) {
  41.  
  42.            strcat(RutaAbsoluta, Ruta);
  43.            strcat(RutaAbsoluta, "\\");
  44.        }
  45.  
  46.        printf("\nIngresa el nombre del archivo a abrir: ");
  47.        gets(NombreArchivo);
  48.        strcat(NombreArchivo, ".txt");
  49.        strcat(RutaAbsoluta, NombreArchivo);
  50.  
  51.        F = fopen(RutaAbsoluta, "r");
  52.        if(F == NULL) {
  53.  
  54.            printf("\n\nError al abrir el archivo! Intenta de nuevo...\nPresiona enter para continuar...");
  55.            while(getchar()!='\n');
  56.        }
  57.  
  58.    } while(F == NULL);
  59.  
  60.    system("cls");
  61.  
  62.    printf("Texto en: %s\n\n", RutaAbsoluta);
  63.  
  64.    while(!feof(F)) {
  65.  
  66.        char c = getc(F);
  67.        printf("%c", c);
  68.    }
  69.  
  70.    fclose(F);
  71. }
  72.  



18  Programación / Programación C/C++ / Re: NEcesito ayuda con un encriptador en: 12 Abril 2016, 02:40 am
Es un error pensar que los caracteres se guardan como enteros positivos. El estándar C dice que eso depende de la implementación. Para convertir una letra minúscula del alfabeto a un rango de 0 a 26 no se deben usar los números mágicos. Se debe usar la 'a' minúscula. El estándar ASCII nos asegura que 'a' estará al principio de los alfabetos de minúsculas.
ASCII en C puede tener un rango de -128 a 127 o de 0 a 255. Así para el número de la 'b', para que sea 1, se debe hacer 'b'-'a'.

Gracias por el dato! Eso no lo sabía  :( Y en el estándar de C++ sucede lo mismo?
19  Programación / .NET (C#, VB.NET, ASP) / Re: Ejercicio 6.3 Sin resolver en: 10 Abril 2016, 19:23 pm
Mi solución sería así  ;D No entendí lo de que el promedio debe de dar 300 o eso, pero espero te ayude con lo que hice.
Código
  1.  
  2. namespace SumaYPromedio {
  3.    public partial class Form1 : Form {
  4.  
  5.        Random nRandom;
  6.        int contClick; //Un contador de click para sacar el promedio
  7.        int suma;
  8.  
  9.        public Form1() {
  10.            InitializeComponent();
  11.            nRandom = new Random();
  12.            contClick = 0;
  13.            suma = 0;
  14.        }
  15.  
  16.        private void button1_Click(object sender, EventArgs e) {
  17.  
  18.            contClick++;
  19.  
  20.            int n = nRandom.Next(200, 400); //Variable auxiliar para no estar convirtiendo...
  21.            LbNum.Text = "" + n; //La sentencia ( "" + variable ) convierte automaticamente los numeros a cadena...
  22.            suma += n;
  23.            LbSuma.Text = "" + suma;
  24.            LbProm.Text = "" + (suma / contClick);
  25.        }
  26.    }
  27. }
  28.  
20  Programación / Programación C/C++ / Re: NEcesito ayuda con un encriptador en: 10 Abril 2016, 02:58 am
Date una idea, el lenguaje C convierte automáticamente los caracteres a su código ASCII correspondiente cuando guardas un tipo char en un tipo int, ahora, en el código ASCII, a la letra "a" le corresponde el numero 97, lo demás son sumas o restas ;D

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main() {
  6.  
  7.    int letra = 'a' - 97;
  8.    cout << letra << " " << endl;
  9.  
  10.    for(int i = 0; i < 25; i++) {
  11.  
  12.        cout << ('a' + i) - 97 << " ";
  13.    }
  14.  
  15.    cout << endl;
  16.  
  17.    for(int i = 0; i < 26; i++) {
  18.  
  19.        cout << (char)('a' + i) << " ";
  20.    }
  21. }
Páginas: 1 [2] 3 4 5
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines