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

Ajuda com matriz e vetor em C e C++


Pedro3

Pergunta

Boa noite gente. Tenho alguns exercícios em C ou C++ para entregar na faculdade e estou com algumas dúvidas. Alguém por favor me ajude :D. Desses 4 execícios eu consegui fazer apenas o número 1 por completo. Toda ajuda é bem vinda. Obrigado.

1. Ordene um vetor A em ordem decrescente, adotando o seguinte procedimento.
-Coloque na 1ª posição do vetor o maior elemento do mesmo.
-Coloque na 2ª posição do vetor o segundo maior elemento do mesmo
-Coloque na 3ª posição do vetor o terceiro maior elemento do mesmo e assim por diante.

OBS: Consegui fazer tranquilo.

#include <stdlib.h>
#include<stdio.h>
main (){
int x[10];
int i, j, temp;
/* Leitura do Vetor */
for (i = 0; i<10; i++){
printf("Digite um numero:");
scanf("%d",&x[i]);}
//ordenando o vetor
for (i=0;i<10; i++)
for(j=i+1;j<10;j++){
if (x[j]>x[i]){
temp=x[i];
x[i]=x[j];
x[j]=temp;}}
/* Impressão do Vetor Ordenado */
printf("Vetor em ordem decrescente: \n");
for(i=0;i<10;i++)
printf(" %d",x[i]);
return 0;
return 0;}

2. Elaborar um algoritmo que leia uma matriz A de dimensão 5x7 de inteiros e verifique qual é o seu maior elemento e o imprima juntamente com sua posição na matriz (linha e coluna).

OBS: Estou com problemas com esse código aqui na hora de imprimir o maior elemento e a sua posição na matriz.

#include <iostream>
using namespace std;

int main ()
{
    int i, j, Mat[5][7],maior;
    for(i=0;i<=5;i++)
    {
        for(j=0;j<=7;j++)
        {
            cout<<i<< ";" <<j<< ": ";
            cin>>Mat[i][j];
        }
    }

    maior=Mat[5][7];
    for(i=0;i<=5;i++)
    {
        for(j=0;j<=7;j++)

            if(Mat[i][j]>maior)
                maior=Mat[i][j];
    }

    cout<<"O maior valor é:\n"<< maior;

    return 0;

}

3. Modificar o exercício anterior para imprimir as posições de todas as ocorrências do maior elemento de A.

OBS: Como não consegui fazer o anterior não vou conseguir fazer esse aqui também. Dicas por favor.

4. Dados dois vetores A e B em ordem crescente, escreva um algoritmo para construir um vetor em C resultante da intercalação destes 2 vetores de modo que C já seja gerado em ordem crescente. Considere que a dimensão máxima desses vetores é 20. Entretanto, os vetores podem ter dimensões distintas( ex: A ter 6 elementos e B ter 3). Não é permitido colocar um vetor após o outro em C e fazer a ordenação em seguida.

OBS: Posso aproveitar parte do código da questão número 1 e criar outro vetor B. Agora não sei como faço essa intercalação entre A e B pra gerar o vetor C. Dicas por favor.
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

procure sempre pesquisar sobre o assunto em tutoriais e artigos

para lhe ajudar

http://pt.wikibooks.org/wiki/Programar_em_C++/Vetores

http://www.inf.pucrs.br/~pinho/LaproI/Vetores/Vetores.htm

OBS: Não tenho mais o C++ instalado no meu micro, então só posso lhe indicar onde achar a solução

abraço

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
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...