Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ericj

Limpar um vetor

Recommended Posts

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

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

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
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
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

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

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.