Ir para conteúdo
Fórum Script Brasil
  • 0

Ponteiros[ordenação]


Isabella

Pergunta

Estou com uma duvida neste exercicio

. Usando ponteiros, faça um programa que dado o vetor unidimensional [2; 4; 35; 50; 23; 17; 9; 12; 27; 5] retorne:

* o maior valor

* a média dos valores

* os valores dispostos em ordem crescente

* o sub conjunto de valores primos que está contido no vetor.

Eu fiz o de maior valor e o dos valores primos, mas foi mais ou menos uma coisa "manual", achei q ficou feio,e os outras duas partes, não consegui.Aceito sugestões no meu programa, obrigado desde já

#include <stdio.h>
#include <stdlib.h>


int main()
{
     int v[10] ={2,4,35,50,23,17,9,12,27,5},i,j,aux;//Declaracao de váriaveis
     int *p;
     p=v; 
      
  
     printf("---------Primeira Parte---------\n\n");
     printf("Descobrir o maior valor\n\n");
     printf("O maior valor do vetor e:%d\n\n",p[3]);//Aponta o maior valor para a posição 3, onde encontra-se o maior valor
                                                    //pelo uso de ponteiros
printf("----------------------------------------\n\n");

     printf("---------Segunda Parte---------\n\n");
     printf("Descrobrir a media dos valores\n\n");
     
printf("----------------------------------------\n\n");

     printf("---------Terceira Parte---------\n\n");
     printf("Valores dispostos em ordem crescente\n\n");
     
printf("----------------------------------------\n\n");

     printf("---------Quarta Parte---------\n\n");
     printf("Sub conjuntos de valores primos\n\n");
     printf("Os valores primos são:%d,%d,%d,%d\n\n",p[0],p[4],p[5],p[9]);
     system("pause");
     }

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

printf("O maior valor do vetor e:%d\n\n",p[3]);//Aponta o maior valor para a posição 3, onde encontra-se o maior valor

for (cont=0;cont<=10;cont=cont+1)

{

if (p[cont]>maior)

{

maior = p[cont];

}

}

não sei si tá certo só estou te dando uma dica para achar o maior.

A media você poderia fazer um contador..

reser = media + p[cont]

media = reser / cont

Por ordem.

int cres[20];

for (cont=0;cont<=10;cont++)

{

if (cres[cont]<p[cont])

cres[cont] = p[cont];

else

cres[cont+1] = cres[cont];

cres[cont] = p[cont];

Não te afirmo se ta certo fiz pela lógica nem testei nada...

Só pa você ter uma base!

Abc

Link para o comentário
Compartilhar em outros sites

  • 0

Olha, fica fácil de perceber que existe uma dificuldade grande nos fundamentos de programação.

Eu acho que o problema maior está na logica e estruturação do problema.

Vou tentar ajudar, mas procure estudar:

* Logica de Programação;

* Funções e Procedimentos;

* Vetores;

* Metodo de Ordenação Bolha e/ou Metodo de Ordenação por Seleção.

Beijos.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...