Ir para conteúdo

Arquivado

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

Gadorran

Criar menu para operações com vetor

Recommended Posts

Escreva um programa em C que gerencie um vetor de números reais (float) de
até 50 posições. O programa deverá fornecer um menu de operações e permitir a
realização de cada uma das seguintes operações:
a. Limpar todo o vetor – Esta operação deve esvaziar todo o vetor (o total de
elementos passa a ser 0).
b. Retornar o total de elementos armazenados no vetor.
c. Inserir um elemento no final do vetor. Caso o vetor esteja completo, o
programa deve informar a impossibilidade de inclusão.
d. Remover um elemento do vetor a partir de uma posição informada. Se a
posição não estiver sendo utilizada, o programa deve informar a
impossibilidade de exclusão.
e. Analisar o vetor:
a. Calcular e exibir as medidas de tendência central (média, moda e
mediana) dos valores armazenados.
b. Calcular e exibir as medidas de dispersão (desvio absoluto médio,
variância e desvio padrão) dos valores armazenados.
f. Finalizar o programa.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

O básico tá aí!


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

 float g_vector[50];
 int   g_counter=0;
 void exibe()
 {
	 for (int k=0;k<50;k++)
	 {
		 printf("%f\n",g_vector[k]);
	 }
 }
 void limpa()
 {
	 memset(g_vector,0,50*sizeof(float));
 }
 void deleta()
 {
	 int num=0;
	 printf("posicao a ser deletada :\n");
	 scanf("%d",&num);
	 if(num>=g_counter)
	 {
		 printf("posicao indisponivel\n");
		 return;
	 }
	 float l_vector[50];
	 memcpy(l_vector,g_vector,50*sizeof(float));
	 for (int k=0;k<g_counter;k++)
	 {
		 if(k!=num)
			 g_vector[k]=l_vector[k];
	 }
	 g_counter--;
 }

 void insere()
 {
	 float num=0;
	 printf("numero a inserir :\n");
	 scanf("%f",&num);
	 if(g_counter>=50)
	 {
		 printf("vetor cheio!nao pode ser inserido\n");
		 return;
	 }
	 g_vector[g_counter++]=num;
 }


 int main()
 {


	 while(1)
	 {
		 int item = 0;
		 printf("O que deseja fazer:\n");
		 printf("inserir:1 deletar:2 limpar:3 exibir 4\n");
		 scanf("%d",&item);
		 switch(item)
		 {
		 case 1:
			 {
				 insere();
			 }
			 break;

		 case 2:
			 {
				 deleta();
			 }
			 break;

		 case 3:
			 {
				 limpa();
			 }
			 break;
		 case 4:
			 {
				 exibe();
			 }
			 break;
		 }



	 }

	 return 0;
 }

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.