Algoritmos básicos. Todas tus dudas.

^draco_malfoy^
16 de Mayo del 2006
Si tenés dudas con cualquier algoritmo hazmelo saber, soy estudiante de la Universidad de Ciencias Informáticas de Cuba.

yarboclo
16 de Mayo del 2006
Pues mira,yo tengo una duda:
Se trata de que necesito cargar un vector con una cadena pero de varias lineas,es decir,el programa te pide que le introduzcas un texto y ha de permitir que sea de varias lineas.

Ni siquiera estoy seguro de si se puede hacer,creo que con " getchar()!=EOF" o algo así me dejaría pero no domino "getchar" y no se usarlo.

Te dejo el enunciado completo del programa para que te orientes más en lo que hay que hacer:
GRACIAS ADELANTADAS

"Realiza un programa que ponga en mayúsculas el primer carácter de una cadena de caracteres (texto),introducida por la entrada estandar,y todo carácter que le siga a un punto.Utiliza un puntero llamado (ptexto).Una vez corregido el texto introducido el programa tendrá que calcular el número de linias (nl),el número de espacios en blanco (nb) y el número de vocales (nv),que tiene el texto.Por último,el programa tendrá que presentar en la salida estandar el texto corregido y también nl,nb y nv,con un mensage que indique que a continuación saldrá lo que se pide."

P.D:No es por agobiar pero es que lo necesitaría para este lunes y me URGE un pokín...

Saludos y gracias otra vez.

^draco_malfoy^
16 de Mayo del 2006
Mira mi forma de ayudar es decirte que con cualquier función que utilices én la entrada del texto dará igual. Luego en el recorrido por el texto es que tendrás que comprobar cada posición de cada letre, ej letra[34], con el uso correcto de condicionales comprovarás tantas veces alla una ocurrencia de un punto, vocal o cualquier cosa que busques y debes ir guardando cada vez que las encuentres en variables distintas que te ayudarán a mostrar su ocurrencia. Por otra parte te recomiendo guardar en un arreglo todas las posiciones donde se encuentre un punto más la de la letra inicial, luego ya guardado te será muy fácil cambiarlo.

yarboclo
16 de Mayo del 2006
Para lo de contar las cosas y encontrar los puntos creo que me las podré apañar, pero el problema está en que si por ejemplo uso la función \"gets(texto)\" para que introduzca el texto en el array,despúes,al ejecutar el programa,si la persona que está introduciendo el texto aprieta ENTER para cambiar de línea,el programa entiende que ya se ha acabado el texto que se quería escribir y lo mete en el array .
Es decir,que no deja que le metas un texto de varias líneas, no se si me explico.
A ver si tienes alguna idea,SALUDOS.

yarboclo
16 de Mayo del 2006
ya lo solucioné;

#include <stdio.h>
#include<conio.h>
#include<ctype.h>
main()
{
int c,nl=0,nb=0,nv=0,i=0,a;
char text[300];
char *ptext;

printf ("Introdueix el text.\n(Ctrl+Z per finalitzar)\n\n");

/*CARREGUEM EL VECTOR*/
while ((c=getchar())!=EOF)
{
ptext=&text[i];
i++;
*ptext=c;
}

/*CORRECCIÓ Y COMPTES*/
ptext=&text[0];
text[0]=toupper(text[0]);

while(*ptext)
{
if(*ptext==\'.\')
{
ptext++;
if (*ptext==\' \')/*per a que ho passi a Mayusc. encara que hi hagi un espai després del punt*/
ptext++;
*ptext=toupper(*ptext);
}
if (*ptext==\'\n\')
nl++;
if (*ptext==\' \')
nb++;
if (*ptext==\'a\'||*ptext==\'e\'||*ptext==\'i\'||*ptext==\'o\'||*ptext==\'u\')
nv++;

ptext++;
}

/*PRESENTACIÓ TEXT CORREGIT I DADES*/
printf ("\n\nCorrecci\x0E0:\n\n");
for (a=0;a<i;a++)
printf ("%c",text[a]);
printf("\n\nA continuaci\x0E0 sortiran les dades que es demanen:\n\n\tnl = %d\n\tnb = %d\n\tnv = %d",nl,nb,nv);

getch();
}

jandresaedo
16 de Mayo del 2006
Necesito saber como puedo extraer los decimales de un numero y tambien como contarlos, por ejemplo:
0.25 , serian 2 decimales y el 25. Gracias

miguele
16 de Mayo del 2006
Tengo dudas sobre el alineamiento de cadenas, tengo q hacer un programa q ponga una matriz q alinee 2 cadenas , q cuando le des al boton calcular te calcule el camino mas rapido. en esta pagina lo explica mejor. http://darwin.uvigo.es/people/fabascal/Teaching/Alineamiento_secuencias/teoria.html
es un programa q me han mandao aki en las practicas de empresa y sinceramente no tengo ni idea. ayuda!!!!

miguele
16 de Mayo del 2006
Por cierto el programa lo tengo q hacer en visual C++, mi version es la 2005