Ir ao conteúdo
  • Cadastre-se

Duvida no algoritmo


Renanzinthhh

Posts recomendados

Construir um programa em C que leia 10 números e armazene em um vetor e inverta e imprima a ordem desses valores dentro do vetor.

#include <conio.h>#include <stdio.h>int main (){	int i, n = 5;	int vet [5];	printf("Digite os Numeros: ");	for ( i = 0; i < n; i++){		scanf("%d", &vet [i] );	}	printf("Numeros Digitados: ");	for ( i = 0; i < n; i++){		printf(" %d ",vet [i] );	}	printf("\n");	printf("Vetor invertido: ");	for ( i = n - 1; i >= 0; i--)		printf(" %d ", vet [i]);	printf("\n");	getche();}

Fiz isso, mas me falaram que está errado, pois tenho que alterar os valores dentro do vetor, alguém da uma luz?

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

@Renanzinthhh

A leitura está certa. Só que você inverteu a ordem no printf e não no vetor rsrs.

 

Em um vetor de 5 posições você trabalha dessa forma:

 

vet 0 troca com vet 4

vet 1 troca com vet 3

vet 2 permanece.

 

Você precisa transformar a lógica em código. Use um 'for' e uma variável auxiliar para armazenar o valor de um vetor para não sobrescrevê-lo. 

Link para o comentário
Compartilhar em outros sites

Use um método de ordenação, apesar de ser um vetor pequeno, o mesmo método se aplicará a vetores gigantes.

Pesquise sobre: bubble sort, Quick sort.

bom aprendizado...

já pra inverter o vetor você tem que usar uma variavel auxiliar(pode ser um vetor auxiliar).

Exemplo de inversão com vetor auxiliar:
 

#include<stdio.h>int main() {  int v[5], aux[5], n = 5, i;  for (i = 0; i < n ; i++)    scanf("%d", &v[i]);  for (i = 0; i < n ; i++)    aux[n-i-1] = v[i] ;//preenche o vetor auxiliar inversamente  for (i = 0; i < n ; i++)     v[i] = aux[i];//iguala o vetor ao vetor auxiliar      system("pause");  return 0;}


 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...