to ficando doidinha ja!!!
olhem e que eu fiz:
for (int i = 0; i < A.length; i++){
C[0] = A;
}
for (int i = 0; i < B.length; i++ ){
C[1] = B;
}
String saida="";
for (int i = 0; i < 7; i++) {
for(int j = 0; j < 2; j++) {
saida += "C[" +i+ "][" +j+ "]=" + C[i][j] + "\n";
}
}
JOptionPane.showMessageDialog(null,saida);
}
}
So que ele imprime errado…
[quote=cristianequeiroz1]to ficando doidinha ja!!!
olhem e que eu fiz:
for (int i = 0; i < A.length; i++){
C[0] = A;
}
for (int i = 0; i < B.length; i++ ){
C[1] = B;
}
String saida="";
for (int i = 0; i < 7; i++) {
for(int j = 0; j < 2; j++) {
saida += "C[" +i+ "][" +j+ "]=" + C[i][j] + "\n";
}
}
JOptionPane.showMessageDialog(null,saida);
}
}
So que ele imprime errado…
[/quote]
Se você vai usar
C[0] = A;
não precisa do FOR antes…
E o que imprime errado?? Você que imprima em colunas?? Mais bonitinho?? Porque ficou certo aqui…
Voce fez algo meio doido ai msm…
voce está atribuindo o array A na posição 0 várias vezes e atribuindo o array B na posição 1 várias vezes…
olha os posts denovo… acho que sua questão está respondida… ![:slight_smile: :slight_smile:](https://www.guj.com.br/images/emoji/twitter/slight_smile.png?v=9)
thegoergen ,
a solução de colocar
C[0] = A;
C[1] = B;
não faz sentido se voce quiser colocar os valores de A na coluna 0 de C e valores de B na coluna 1 de C.
Nesse caso voce está colocando os valores de A na linha 0 de C e valores de B na linha 1 de C.
Sendo que o array C só tem 2 colunas por linha e voce está inserindo 7 colunas em cada linha, não vai dar certo.
pense no exemplo, C[3][0].
O que vai imprimir?
Fica assim entao???
Vou printar a tela e mandar pra vcs!
[code]import javax.swing.JOptionPane;
class Exercicio8 {
public static void main(String arg[]) {
int A[] = new int[7];
int B[] = new int[7];
int C[][] = new int [7][2];
for (int i = 0; i < 7; i++) {
String a = JOptionPane.showInputDialog(null, "Digite o valor A ["
+ i + "]");
A[i] = Integer.parseInt(a);
}
for (int i = 0; i < 7; i++) {
String b = JOptionPane.showInputDialog(null, "Digite o valor B ["
+ i + "]");
B[i] = Integer.parseInt(b);
}
C[0]=A;
C[1]= B;
String saida="";
for (int i = 0; i < 7; i++) {
for(int j = 0; j < 2; j++) {
saida += "C[" +i+ "][" +j+ "]=" + C[i][j] + "\n";
}
}
JOptionPane.showMessageDialog(null,saida);
}
}
[/code]
Cris!
Você está errando na hora de montar a String de saída, os FORS estão invertidos. Tenta isso aqui:
String saida="";
for (int i = 0; i < 2; i++) { // Primeiro o 2
for(int j = 0; j < 7; j++) { // Depois o 7
saida += "" + C[i][j] + " "; // Coloca tudo numa linha
}
saida += "\n"; // Acabou isso, então começa uma nova linha
}
Assim vai ficar mais legível.
[quote=GustavoLaguna]thegoergen ,
a solução de colocar
C[0] = A;
C[1] = B;
não faz sentido se voce quiser colocar os valores de A na coluna 0 de C e valores de B na coluna 1 de C.
Nesse caso voce está colocando os valores de A na linha 0 de C e valores de B na linha 1 de C.
Sendo que o array C só tem 2 colunas por linha e voce está inserindo 7 colunas em cada linha, não vai dar certo.
pense no exemplo, C[3][0].
O que vai imprimir?[/quote]
Realmente estranho… mas funcionou :shock:
Tenho certeza, porque testei isso. Mas eu acho que a matriz tem 2 linhas e 7 colunas, não??
Boa, mas coloca uma vírgula no final, pra separar…
saida += “” + C[i][j] + ", ";
thegoergen ,
teu código funciona se
int[][] C = new int[2][7];
mas no exemplo tava
int[][] C = new int[7][2];
[quote=GustavoLaguna]thegoergen ,
teu código funciona se
int[][] C = new int[2][7];
mas no exemplo tava
int[][] C = new int[7][2];
[/quote]
É verdade… eu fiz invertido… =)
Eu criei de um jeito, inverti para colocar os valores, e depois inverti para mostrar o resultado de novo… hehehhehe
O que importa é que o resultado final ficou bom! =)
public static void main(String arg[]) {
int A[] = new int[7];
int B[] = new int[7];
int C[][] = new int [7][2];
for (int i = 0; i < 7; i++) {
A[i] = i;
}
for (int i = 0; i < 7; i++) {
B[i] = i+10;
}
C[0] = A;
C[1] = B;
String saida="";
for (int i = 0; i < 2; i++) {
for(int j = 0; j < 7; j++) {
saida += "" + C[i][j] + " ";
}
saida += "\n";
}
JOptionPane.showMessageDialog(null,saida);
System.exit(0);
}
Mais eu preciso imprimir em coluna…
ele ta imprimindo so em linha o que eu tenho que mudar?
[quote=GustavoLaguna]Da pra melhorar bastante esse código ainda…
[code]
import javax.swing.JOptionPane;
class Exercicio8 {
public static void main(String arg[]) {
int A[] = new int[7];
int B[] = new int[7];
int C[][] = new int [7][2];
for (int i = 0; i < 7; i++) {
A[i][j] = Integer.parseInt(JOptionPane.showInputDialog("Digite o valor A [" + i + "]"));
}
for (int i = 0; i < 7; i++) {
B[i][j] = Integer.parseInt(JOptionPane.showInputDialog("Digite o valor B ["+ i + "]"));
}
for (int i = 0; i < 7; i++) {
C[i][0] = A[i];
C[i][1] = B[i];
}
for (int i = 0; i < 7; i++) {
for(int j = 0; j < 2; j++) {
System.out.println("C["+i+"]["+j+"] = "+ C[i][j]);
}
}
}
}
[/code][/quote]
Não testei o código, mas deve funcionar assim.
[quote=cristianequeiroz1]Mais eu preciso imprimir em coluna…
ele ta imprimindo so em linha o que eu tenho que mudar?[/quote]
Você vai ter quer ver isso melhor… Realmente o código que eu fiz tem 2 linhas e 7 colunas… você vai ter que trocar esses valores.
É um ótimo teste para ver se sua “lógica com matrizes” está boa. ![:wink: :wink:](https://www.guj.com.br/images/emoji/twitter/wink.png?v=9)
[EDIT]
Mas uma dica, você vai ter que tirar aquela parte de colocar os vetores inteiros sobre a matriz…
Tente mais uma vez, se mesmo assim não conseguir, poste aqui de novo