problemas con arreglos unidimensionales

niquin
08 de Octubre del 2005
[b]cheee, q hace java.io.IOException!??! estoy teniendo una duda con arreglos unidimensionales... para ser mas preciso tratamiento de caracteres. resulta que en ningun momento declaro, creo o inicializo el vector..., aver si alguien me da una mano con esto y me dice en que momento creo el vector...
lo que pienso es que con java.io.IOException no crea el vector xq no se la longitud del texto y al principio no le asigna una cantidad determinada de memoria, sino que le asigna "x" cantidad de memoria al terminar de escribir el texto[/b]

desde ya muchas gracias!


[quote]
import utn.frc.io.In;

class texto
{
private String cadena;

public texto()
{
System.out.print("ingresar texto: ");
cadena = In.readLine();
}

public int contarLetrasX(char car)
{
int L;
int c=0;
L=cadena.length();
for(int i=0; i< L;i++)
{if(cadena.charAt(i)==car)
c++;
}
return c;
}

public int contarTA()
{
int L;
int c=0;
L=cadena.length();
for(int i=0;i< L;i++)
{
if(i>0)
{
if(cadena.charAt(i-1)=='t'&& cadena.charAt(i)=='a')
c++;
}
}
return c;
}

public float calcularPromedioLetras()
{
float prom=0;
int cl,cp;
cl=contarLetras();
cp=contarPalabras();
if(cp>0)
prom=(float)cl/cp;
return prom;
}

public int contarLetras()
{
int i, cl;
cl=0;
for(i=0;i< cadena.length();i++)
{
if(caracter.esLetra(cadena.charAt(i)))
cl++;
}
return cl;
}

public int contarPalabras()
{
int i,cp;
cp=0;
for(i=1;i< cadena.length();i++) {
if(caracter.esLetra(cadena.charAt(i-1))&&!caracter.esLetra(cadena.charAt(i)))
cp++;
}
if(caracter.esLetra(cadena.charAt(cadena.length()-1)))
cp++;
return cp;
}

public int contarVocales(){
int i,cv;
cv=0;
for(i=0;i< cadena.length();i++) {
if(caracter.esVocal(cadena.charAt(i)))
cv++;
}
return cv;
}
}
[/quote]

[quote]
import java.io.IOException;

class caracter
{
public static boolean esLetra(char car)
{
boolean letra = false;
if(esLetMay(car))letra = true;
if(esLetMin(car))letra = true;
return letra;
}

public static boolean esLetMay(char car)
{
boolean mayus = false;
String mayu = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for(int i=0; i< mayu.length();i++)
if(mayu.charAt(i)==car)mayus=true;
return mayus;
}

public static boolean esLetMin(char car)
{
boolean minus = false;
String minu = "abcdefghijklmnopqrstuvwxyz";
for(int i=0; i< minu.length();i++)
if(minu.charAt(i)==car)minus=true;
return minus;
}

public static boolean esVocal(char car)
{
boolean vocal = false;
String voca = "aeiouAEIOU";
for(int i=0; i< voca.length();i++)
if(voca.charAt(i)==car)vocal=true;
return vocal;
}

public static boolean esConso(char car)
{
boolean conso = false;
if(esLetra(car)&&!esVocal(car))conso= true;
return conso;
}

public static boolean esSigPun(char car)
{boolean sigPun = false;
String punct = ".,;:";
for(int i=0; i< punct.length();i++)
if(punct.charAt(i)==car)sigPun=true;
return sigPun;
}
}
[/quote]

[quote]
import utn.frc.io.In;

class pruebatexto
{
public static void main(String args[])
{
texto a;
char car;
a = new texto();
System.out.println("ingrese un caracter: ");
car = In.readChar();
System.out.println("la cantidad del texto es: " +a.contarLetras());


System.out.println("RESULTADOSn");

System.out.println("la cantidad de silabas 'ta' ingresadas son: " + a.contarTA());
System.out.println("la cantidad de letras ingresadas es: " +a.contarLetras());
System.out.println("la cantidad de palabras ingresadas es: " +a.contarPalabras());
System.out.println("la cantidad promedio de letras por palabra es: " +a.calcularPromedioLetras());
System.out.println("la cantidad de " + car + " ingresadas es: " +a.contarLetrasX(car));
}

}
[/quote]