Autor
|
Tema: ayuda con este ejercicio, por favor (Leído 4,383 veces)
|
alexandra.vargas
Desconectado
Mensajes: 3
|
Hola, soy alexandra vargas y tengo que hacer este ejercicio en lenguaje c, utilizando "archivos de texto", si alguien pudiera a ayudarme apelando a su sabiduría en la programación. El ejercicio dice asi:
Por favor ayuda, tengo que entregarlo el jueves 9 de enero del 2014 en el dev-c
Se lee un archivo de texto, cuyo tamaño tiene como mínimo 200 palabras distintas y como máximo 300 palabras distintas. Todas las palabras distintas son reconocidas y almacenadas en una matriz E S T O E S U N E J E M P L O
SE TIENE además un segundo archivo de texto, que es la copia del primero, salvo que tiene 100 a 150 apalabras con errores ortográficos, estos errores oscilan entre 1 y n caracteres mal escritos por palabras (siendo n el largo de alguna de las palabras). Su programa deberá autocorregir el segundo archivo de texto considerando que el primero las tiene correctas. Cuando una palabra con error puede ser corregida con más de una del texto original (el primero de los archivos), se deberá consultar al usuario mostrando la palabra con el error, y todas las alternativas posibles. De esta manera el usuario podrá elegir la alternativa que debe quedar en el texto corregido. El programa deberá imprimir todas las palabras distintas del original, el texto con errores, y el texto corregido, permitiendo al usuario elegir entre estas alternativas mediante un menú.
|
|
|
En línea
|
|
|
|
do-while
Desconectado
Mensajes: 1.276
¿Habra que sacarla de paseo?
|
Solo te quedan tres días y no sabes por donde empezar. Suerte. Por cierto, no se hacen trabajos. Si no pones el código que llevas hecho no podemos decirte donde tienes los errores.
Además, faltan datos. ¿Que tipo de errores hay en el segundo fichero? ¿ transposicion? ¿sustitucion? ¿inserción? ¿deleción? ¿Cualquiera de los anteriores?
¡Saludos!
|
|
|
En línea
|
- Doctor, confundo los números y los colores. - Vaya marrón. - ¿Marrón? ¡Por el culo te la hinco!
|
|
|
|
leosansan
Desconectado
Mensajes: 1.314
|
¡¡¡Y encima con esas!!! ¿Y un cafetito también no se te apetece? Perdona, igual no lo sabes por no haberte leído las reglas del foro: no se hacen tareas desde cero, sólo se resuelven dudas sobre un código que previamente has tenido que hacer tú. ¿Lo pillas?. Y para cuando postees el código elige las etiquetas GeSHi y toma la C++ y en medio de las etiquetas Code que aparecen "pegas" tu código. Al no hacerlo de esta manera parte del código no sale correcta, especialmente las matrices.¡¡¡¡ Saluditos! ..... !!!!
|
|
|
En línea
|
|
|
|
dato000
Desconectado
Mensajes: 3.034
|
ayudame tu!!!
mujeres verdad??
|
|
|
En línea
|
|
|
|
do-while
Desconectado
Mensajes: 1.276
¿Habra que sacarla de paseo?
|
ayudame tu!!!
Igual en carne y hueso tienes escote suficiente como para pedir así las cosas y que las hagan. Lastima que en el foro no podamos apreciarlo. Volviendo al tema: ayudame tu!!!
Deja que me lo piense... uhm.... NO Buenas noches y suerte con tu trabajo. ¿Y un cafetito también no se te apetece? Ya que insistes tanto con el tema, vale. C/Falsa Nº 123 (Que grandes Los Simpson) Un cortadito con leche del tiempo, por favor, y un solo azucarillo si puede ser. ¡Saludos!
|
|
« Última modificación: 7 Enero 2014, 00:22 am por do-while »
|
En línea
|
- Doctor, confundo los números y los colores. - Vaya marrón. - ¿Marrón? ¡Por el culo te la hinco!
|
|
|
jaxoR
Desconectado
Mensajes: 93
?
|
Igual en carne y hueso tienes escote suficiente como para pedir así las cosas y que las hagan. Lastima que en el foro no podamos apreciarlo.
Apoyo la moción, con toda violencia.
|
|
|
En línea
|
|
|
|
alexandra.vargas
Desconectado
Mensajes: 3
|
Muchas gracias, por su buena buena onda y comentarios, ha sido muy lindo leerlos, pero miren esto es lo que llevo
LA IDEA QUE EL PROGRAMA EN UN ARCHIVO DE TEXTO TENGO 200 PALABRAS ESCRIBAS CORRECTAMENTE Y EN OTRO ARCHIVO DE TEXTO TENGO 150 PALABRAS MAL ESCRITAS Y BIEN ESCRITAS Y QUE ESTE ME CORRIJA LAS PALABRAS MAL ESCRITAS.
#include <stdio.h> #include<stdlib.h> #include<string.h> #include <conio.h>
char pbueno[300]; char pmalo[300];
void deletrearcorre(char[], char[]);//deletrear letra por letra int noletra(char c);// caracter que no correspondfa void remover(char pmalo[]);// remover puntuaciones ,. void mayuscula( char pmalo[]);// mayuscula void minusculabueno( char pbueno[]); //parecido int largomalo( char pmalo[]);//medir palabra delñ articulo void nextpmaloWord(char pmalo[], char pmaloWord[], int pmaloLength, char dictionaryWord[], char pbueno[]);
int main(void) { FILE* palabras;//llamo los textos el bueno y el malo FILE* palabras2; int bytes_read; char* p; char* z; char caracter, caracter2; char mat1[300][40], mat2[300][40];
palabras = fopen("palabras.txt", "r"); if (palabras == 0) { printf("no se puede abrir archivo \"palabras.txt\"\n"); return -1; }
palabras2 = fopen("palabras2.txt", "r"); if (palabras2 == 0) { printf("no se puede abrir archivo \"palabras2.txt\"\n"); return -1; }
/* leo el diccionario */ z = pbueno; printf(" palabras bien escritas \n\n"); printf("%s", z); z = fgets(z, 1000, palabras); printf("%s", z); while (z != 0) { z = fgets(z, 1000, palabras); printf("%s", z); while (*z != '\0') { z += 1; } z = fgets(z, 1000, palabras); }
/* read pmalo */ p = pmalo; bytes_read = fread(p, 1, 1000, palabras2); printf("\n palabras mal escritas \n"); printf("%s", p); p += bytes_read; while (bytes_read != 0) { bytes_read = fread(p, 1, 1000, palabras2); p += bytes_read; } *p = 0;
deletrearcorre(pmalo, pbueno); }
int pmaloPosition =0; //posisicoon la palanbra del articulo int dictionaryPosition = 0;
void deletrearcorre(char pmalo[], char pbueno[]) { char pmaloWord[50]; char dictionaryWord[50]; int pmaloLength = largomalo(pmalo); remover(pmalo); mayuscula(pmalo); minusculabueno(pbueno); nextpmaloWord(pmalo, pmaloWord, pmaloLength, dictionaryWord, pbueno);
}
void nextDictionaryWord(char pbueno[], char dictionaryWord[]){ int i; for(i =0; pbueno[dictionaryPosition] != '\n'; i++){ dictionaryWord = pbueno[dictionaryPosition]; dictionaryPosition++; } } int noletra(char c){ if ( (c>='a'&&c<='z') || (c>='A'&&c<='Z')) return 1; return 0; }
void remover(char pmalo[]){ int i, j=0; for ( i =0; pmalo != 0; i++){ if (noletra(pmalo)){ pmalo[j] = pmalo; j++; } else if (!noletra(pmalo)){ pmalo[j] = ' '; j++; } } }
void mayuscula( char pmalo[]){ int i=0; for( i; pmalo != 0; i++){ if ( pmalo >= 'A' && pmalo <='Z') pmalo = pmalo + 32; } }
void minusculabueno( char pbueno[]){ int i=0; for(i; pbueno != 0; i++){ if (pbueno >= 'A' && pbueno <= 'Z'){ pbueno = pbueno + 32; } } }
int largomalo( char pmalo[] ){ int count=0; while (pmalo[count] != 0) count++; return count; }
void nextpmaloWord(char pmalo[], char pmaloWord[], int pmaloLength, char dictionaryWord[], char pbueno[]){ int j, i; comienzo: while(!noletra(pmalo[pmaloPosition])){ if (pmalo[pmaloPosition] == 0){ return; } pmaloPosition++; } for(j=0; pmalo[pmaloPosition] != ' ' || pmaloPosition == pmaloLength; j++){ pmaloWord[j] = pmalo[pmaloPosition]; pmaloPosition++; }
if (strlen(pmaloWord)<2){ goto comienzo; } pmaloWord[j+1] = 0; //dictionary search while (!strncmp(pmaloWord, dictionaryWord,strlen(pmaloWord))){ nextDictionaryWord(pbueno, dictionaryWord); } if(strncmp(pmaloWord, dictionaryWord,strlen(pmaloWord))) printf(pmaloWord); }
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Ayuda con este ejercicio incompleto,por favor.
Programación C/C++
|
xboxone007
|
2
|
2,346
|
17 Diciembre 2013, 22:27 pm
por xboxone007
|
|
|
Por favor ayuda con este ejercicio gracias
Programación C/C++
|
panda45
|
2
|
2,380
|
11 Octubre 2014, 00:35 am
por b7
|
|
|
Por favor me puede ayudar a explicarme este ejercicio
Programación C/C++
|
panda45
|
1
|
2,183
|
23 Octubre 2014, 23:36 pm
por Eternal Idol
|
|
|
Necesito ayuda con este ejercicio!! por favor.
Programación C/C++
|
Alguienberal003
|
2
|
3,167
|
24 Mayo 2021, 02:02 am
por Danielㅤ
|
|
|
ayuda con este ejercicio de c++ por favor
Programación C/C++
|
kufanda
|
6
|
4,152
|
3 Octubre 2022, 22:59 pm
por K-YreX
|
|