SLBGlorioso Posted December 27, 2012 at 04:51 PM Report #488624 Posted December 27, 2012 at 04:51 PM (edited) Ajudem-me a resolver este problema, o charAt não dá para usar num string de array multimensional, o que utilizo? public class contarConsoantes { public static void main(String[] args) { String [][] linhas = new String [2][4]; linhas[0][0] = "a"; linhas[0][1] = "b"; linhas[0][2] = "c"; linhas[0][3] = "a"; linhas[1][0] = "v"; linhas[1][1] = "a"; linhas[1][2] = "f"; linhas[1][3] = "a"; int letra = 0, contar = 0; for(int i = 0; i < linhas.length; i++){ for(int j = 0; j < linhas[i].length; j++){ letra=linhas[i][j].charAt(i);// o charAt não dá para usar num string de array multimensional, o que utilizo? if(letra=='a'|| letra=='e'||letra== 'i'||letra== 'o'||letra=='u'||letra=='A'||letra=='E'||letra=='I'||letra=='O'||letra=='U') contar++; } } System.out.println(contar); } } Edited December 28, 2012 at 12:22 AM by apocsantos geshi
HappyHippyHippo Posted December 27, 2012 at 05:02 PM Report #488628 Posted December 27, 2012 at 05:02 PM (edited) ui ... que confusão que prai vai .... antes do mais o que tens não é um string de arrays multidimensionais é sim uma matrix ou um array multidimensional de strings. é ao contrário e o significado é muito diferente !! o primeiro não faz sentido agora: String [][] linhas = new String [2][4]; // array de dimensão 2x4 de strings for(int i = 0; i < linhas.length; i++) // para todos os graus da primeira dimensão do array multidimensional (de 0 a 1) { for(int j = 0; j < linhas[i].length; j++) // para todos os graus da segunda dimensão do array multidimensional (de 0 a 3) { linhas[i][j]; // <-------- tens a string guardada na posição ixj da matrix / array multidimensional } } Edited December 27, 2012 at 05:03 PM by HappyHippyHippo IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
SLBGlorioso Posted December 27, 2012 at 05:17 PM Author Report #488636 Posted December 27, 2012 at 05:17 PM Eu ainda estou no inicio de aprendizagem de Java, por isso desculpe estas perguntas basicas 🙂 . O problema que tenho neste caso é a contar consoantes na array multidimensional de strings! Eu num array de string sei, e é fácil contar. Podia ajudar/explicar como ei-de fazer? Obrigado
HappyHippyHippo Posted December 27, 2012 at 05:32 PM Report #488640 Posted December 27, 2012 at 05:32 PM pega no código de contar num array de strings : for (int i = 0; i < lista.length; i++) { // fazer o que tens de fazer ... } basta adicionar-lhe uma nova dimensão : for (int i = 0; i < lista.length; i++) { for (int j = 0; j < lista[i].length; j++) { // fazer o que tens de fazer ... } } IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
SLBGlorioso Posted December 27, 2012 at 07:46 PM Author Report #488671 Posted December 27, 2012 at 07:46 PM (edited) Dentro de // fazer o que tens de fazer ... coloquei o seguinte codigo, tem um problema que so conta neste caso as vogais que estão em coluna, as que estao em linha nao conta :S chr=linhas[l][c].charAt(0); if(chr=='a'||chr=='e'||chr=='i'||chr=='o'||chr=='u'||chr=='A'||chr=='E'||chr=='I'||chr=='O'||chr=='U'){ vogais++; Edited December 30, 2012 at 01:05 PM by apocsantos geshi
HappyHippyHippo Posted December 27, 2012 at 08:02 PM Report #488677 Posted December 27, 2012 at 08:02 PM novamente o a acabaste de dizer não tem muito sentido o que é "linha" e o que é "coluna" ??? estas a percorrer todos os elementos do array multidimensional, agora só falta percorrer todos os caracteres da string IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
SLBGlorioso Posted December 27, 2012 at 11:47 PM Author Report #488746 Posted December 27, 2012 at 11:47 PM Muito obrigado HappyHippyHippo. Já consegui resolver o meu problema 😄
scoelli Posted December 30, 2012 at 06:34 AM Report #488978 Posted December 30, 2012 at 06:34 AM (edited) Estou com o mesmo problema, não conta: int vogais=0; char letra; for (int i = 0; i < fim; i++) { for (int j = 0; j < linhas[i].length; j++) { { letra=linhas[i][j].charAt(i); if(letra=='a'||letra=='e'||letra=='i'||letra=='o'||letra=='u'||letra=='A'||letra=='E'||letra=='I'||letra=='O'||letra=='U'){ vogais++; } } } System.out.println ("Número e vogaisA: " + vogais); Edited December 30, 2012 at 01:06 PM by apocsantos geshi
scoelli Posted December 30, 2012 at 08:25 AM Report #488979 Posted December 30, 2012 at 08:25 AM (edited) Dé sempre o seguinte erro: Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0 int vogais=0; int letra=0;; for (int i = 0; i < fim; i++) { for (int j = 0; j < linhas[i].length; j++) { { letra=linhas[i][j].charAt(0); //??????? if(letra=='a'|| letra=='e'||letra== 'i'||letra== 'o'||letra=='u'||letra=='A'||letra=='E'||letra=='I'||letra=='O'||letra=='U') vogais++; } System.out.println ("Número de vogais: " + vogais); } } Edited December 30, 2012 at 01:05 PM by apocsantos geshi
HappyHippyHippo Posted December 30, 2012 at 11:37 AM Report #488981 Posted December 30, 2012 at 11:37 AM Dé sempre o seguinte erro: Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0 ou tens a variável "fim" a ser mal incrementada ou andas a gravar strings vazias IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
SLBGlorioso Posted December 30, 2012 at 06:44 PM Author Report #489019 Posted December 30, 2012 at 06:44 PM Assim vais conseguir contar 🙂 for(int l = 0; l < fim; l++){ for(int c = 0; c < linhas[l].length; c++){ for(int i = 0; i < linhas[l][c].length(); i++){ chr=linhas[l][c].charAt(i); if(chr=='a'||chr=='e'||chr=='i'||chr=='o'||chr=='u'||chr=='A'||chr=='E'||chr=='I'||chr=='O'||chr=='U'){ vogais++; } } } }
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now