ericj 0 Denunciar post Postado Abril 2, 2011 tenho que gerar os numeros numeros 100 a 200 e pegar os numeros impares e mostrar na tela public class Exercicios6 { public static void main(String[] args) { int vetor[] = new int[200], cont; for (cont = 100; cont <= 200; cont++) { if (cont % 2 > 0) { vetor[cont] = cont; } } // for(int i = 0; i < x.length; i++) for (cont = 100; cont <= 200; cont++) { System.out.println("vetor[" + cont + "]" + vetor[cont]); // if() } } } O RESULTADO É ESSE QUE TIRAR OS ZEROS E ARMAZENAR NUMEROS MAIORES QUE ZERO COMO EU FAÇO ISSO ? vetor[100]0 vetor[101]101 vetor[102]0 vetor[103]103 vetor[104]0 vetor[105]105 vetor[106]0 vetor[107]107 vetor[108]0 vetor[109]109 vetor[110]0 vetor[111]111 vetor[112]0 vetor[113]113 vetor[114]0 vetor[115]115 vetor[116]0 vetor[117]117 vetor[118]0 vetor[119]119 vetor[120]0 vetor[121]121 vetor[122]0 vetor[123]123 vetor[124]0 vetor[125]125 vetor[126]0 vetor[127]127 vetor[128]0 vetor[129]129 vetor[130]0 vetor[131]131 vetor[132]0 vetor[133]133 vetor[134]0 vetor[135]135 vetor[136]0 vetor[137]137 vetor[138]0 vetor[139]139 vetor[140]0 vetor[141]141 vetor[142]0 vetor[143]143 vetor[144]0 vetor[145]145 vetor[146]0 vetor[147]147 vetor[148]0 vetor[149]149 vetor[150]0 vetor[151]151 vetor[152]0 vetor[153]153 vetor[154]0 vetor[155]155 vetor[156]0 vetor[157]157 vetor[158]0 vetor[159]159 vetor[160]0 vetor[161]161 vetor[162]0 vetor[163]163 vetor[164]0 vetor[165]165 vetor[166]0 vetor[167]167 vetor[168]0 vetor[169]169 vetor[170]0 vetor[171]171 vetor[172]0 vetor[173]173 vetor[174]0 vetor[175]175 vetor[176]0 vetor[177]177 vetor[178]0 vetor[179]179 vetor[180]0 vetor[181]181 vetor[182]0 vetor[183]183 vetor[184]0 vetor[185]185 vetor[186]0 vetor[187]187 vetor[188]0 vetor[189]189 vetor[190]0 vetor[191]191 vetor[192]0 vetor[193]193 vetor[194]0 vetor[195]195 vetor[196]0 vetor[197]197 vetor[198]0 vetor[199]199 Compartilhar este post Link para o post Compartilhar em outros sites
Giovanni Ritchie 0 Denunciar post Postado Abril 3, 2011 Se quer colocar outros valores onde tem zero eh soh percorrer todo array e colocar esses valores nas posicoes pares. Repare q soh tem zero em 100,102, 104... sao todas posicoes pares.. Compartilhar este post Link para o post Compartilhar em outros sites
LCS 0 Denunciar post Postado Abril 3, 2011 Porque você não economiza memória e deixa de usar esse array e usa os laços while e for? Abcx, LCS Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Abril 3, 2011 tenho que gerar os numeros numeros 100 a 200 e pegar os numeros impares e mostrar na tela Eu faria de uma forma diferente. A sequência dos números naturais pares ou ímpares forma uma progressão aritmética de razão 2. Isso quer dizer que você pode usar apenas 1 for p/ "gerar" (na verdade percorrer a sequência) os números ímpares: [/size][/color] [color="#555753"][size="2"]public static void main(String[] args) { final int inicioIntervalo = 100; final int finalIntervalo = 200; int primeiroElemento = (inicioIntervalo % 2 > 0) inicioIntervalo : inicioIntervalo + 1; int ultimoElemento = (finalIntervalo % 2 > 0) finalIntervalo : finalIntervalo - 1; for (int i = primeiroElemento; i <= ultimoElemento; i+=2) System.out.println(i);[/size][/color] [color="#555753"][size="2"]} Se você precisa mesmo armazenar isso num array, você pode calcular a quantidade de números utilizando a fórmula da progressão aritmética: an = a1 + (n - 1) * r No seu caso, a1 = 101, an = 199 e r = 2 : 199 = 101 + (n - 1) * 2 = 98 = 2*n - 2 = 100 = 2*n = n = 50. Então seu programa ficaria parecido com isso: public static void main(String[] args) { final int inicioIntervalo = 101; final int finalIntervalo = 199; int qtdImpares = (finalIntervalo - inicioIntervalo + 2) / 2; int arrayImpares[] = new int[qtdImpares]; int i,j; for (j = 0, i = inicioIntervalo; j < qtdImpares; j++, i += 2) arrayImpares[j] = i; } Compartilhar este post Link para o post Compartilhar em outros sites
luxu 0 Denunciar post Postado Abril 3, 2011 public static void main(String args[]){ int vetor[] = new int[100], cont = 0; for (int i = 100 ; i < 200; i++){ if(i % 2 != 0) vetor[cont++] = i; } cont = 0; for (int i=0;i < 50;i++){ if(vetor[i] != 0) System.out.println("Vetor["+i+"]="+vetor[i]); } } Compartilhar este post Link para o post Compartilhar em outros sites
ericj 0 Denunciar post Postado Abril 5, 2011 Nossa nunca tinha pensado nessas colocações, valeu gente, obrigado pela ajuda tenho que estudar muito sobre o vetor Compartilhar este post Link para o post Compartilhar em outros sites