Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Fiterman

C++ Armazenar valores de uma matriz em dois vetores

Recommended Posts

Boa noite, estava treinando alguns exercícios de programação em C quando me deparo com essa questão:

Citação

"Faça um programa C que carregue uma matriz 7 x 7 de números inteiros e crie dois vetores de sete posições cada um e que contenham, respectivamente, o maior elemento de cada uma das linhas e o menor elemento de cada uma das colunas. Escreva a matriz A e os dois vetores."

E percebi que não tenho ideia de como posso armazenar os valores da matriz em dois vetores.

 

Na verdade também não sei por onde começar essa:

Citação

Faça um programa C que dado um número e um vetor de 10 números, remove o número do vetor se ele existir no vetor. Na remoção, o programa deverá reorganizar o vetor para que não fique uma posição vazia. Após a remoção, o programa deverá exibir o vetor.

Se alguém puder me ajudar, ficarei grato!

  • Obrigado 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Fiterman    nesse primeiro enunciado  , para pegar um elemento da matriz você precisa de duas variáveis que indicam a linha e a coluna onde está o elemento ,  e depois  de pegar esse elemento faça a comparação com os outro elementos dessa mesma linha para ver qual é o maior , e para colocar no vetor você precisa de uma variável para indicar a posição do vetor  , e faça o mesmo para saber qual é o menor em cada coluna e coloque no outro vetor da mesma forma  . depois imprimir a matriz e os dois vetores  .   não podemos fazer o código para você pois é contra as regras do fórum , então faça e poste aqui para podermos ver como está e em que podemos ajudar  .

  • Obrigado 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

***[ Olá, sou estudante de Ciências-Física, e tenho dialeto C ANSI como hobby, C'hobby rsrs! ]

  • Esse problema aqui também é fácil
Em 10/07/2018 às 00:15, Fiterman disse:

Faça um programa C que dado um número e um vetor de 10 números, remove o número do vetor se ele existir no vetor. Na remoção, o programa deverá reorganizar o vetor para que não fique uma posição vazia. Após a remoção, o programa deverá exibir o vetor.

Tem que implementar uma! Uma função com 2 parâmetros: número --que é valor a ser investigado um vetor limitado de 10 números, e o ponteiro --o endereço do vetor na memória com 10 elementos. Funções em C assim como na matemática, são a grosso modo, identificados para um conjunto limitado de procedimentos e declarações que visão resolver um problema.

 

 1. Entrada --a entrada é de dois valores: Então um bom formato para identificarmos essa função é:

  • retorno excluir(x no conjunto A);

    Se x for localizado no vetor, então retorno confirma que x não faz mais parte do vetor.

Logo para que resolva essa questão é necessário que tenha estudo em: Estruturas de Repetição; tipos de dados e estruturas estática de dados, estruturas de decisão e funções. Sem essas informações fracassará, não podemos resolver para você sem sabermos o que você sabe o problema, isso é fato muito triste e recorrente, pois alguns novos membros do fórum chegam aqui sem base alguma, o que acaba gerando discussões supérfluas acerca de temas que podem ser facilmente encontrados na internet. 

 

Faça a sua parte.

Dúvidas, perguntas e sugestões? 

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Enunciado:

Em 10/07/2018 às 00:15, Fiterman disse:

Faça um programa C que dado um número e um vetor de 10 números, remove o número do vetor se ele existir no vetor. Na remoção, o programa deverá reorganizar o vetor para que não fique uma posição vazia. Após a remoção, o programa deverá exibir o vetor.

 

Por questões didáticas, e de consulta resolve:

Spoiler

Faça um programa C que dado um número, e um vetor de 10 números: De mediatos entendo com sendo uma função.

remove o número se ele existir no vetor: Remover é no sentido figurado, vetores são estruturas estáticas (não se remove).

Na remoção, o programa deverá reorganizar o vetor ...: É por meio da organização que se enxerga falsa remoção.

 

A questão mais séria do problema é definir NaN (Not a Number: não é um número), no caso para facilitar tal definição optei por usar a implementação da própria linguagem. Indexar o vetor é mais fácil só preciso determinar a posição e copiar por cima do valor o próximo valor, e atribuir NaN no fim da cola.

 


#include <math.h> /* ~incluir NAN */
/** função excluir: exclui o elemento 'elem' do vetor 'conjunto' */
char excluir (float elem, float conjunto[static 10]){
    char achou = 0;

        for (int index = 0; index < 10; index += 1){
                if (elem == conjunto[index]){
                        for (int j = 10 - 1; index < j; index += 1){
                                conjunto[index] = conjunto[index + 1];
                        }
                        conjunto[index] = NAN; /* ~Não é um Número */
                        achou =  1;
                        index = -1;
        }       }
    return achou;
}

No exemplo acima temos a busca do número 1,

localizado, rescrito e o vazio do conjunto é um valor não número no fim da lista! 

 

 

Dúvidas, Sugestões e crítica?

 

 

Editado por AnsiC
atualizado o algoritmo para múltiplas ocorrências

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×