segunda-feira, 27 de junho de 2011

Ex. 07 - Multiplicação entre Vetores

Escreva um algoritmo que leia dois vetores de 5 posições e faça a multiplicação dos elementos de mesmo índice, colocando o resultado em um terceiro vetor. Mostre o vetor resultante.

Entendendo...

Vamos criar 3 vetores, cada um com 5 posições, dois deles vamos preencher com valores inteiros.
O terceiro sera preenchido com a multiplicação dos outros dois. Como?

vetor1 x vetor2? Sim isso mesmo!

vetor1 na posição(1) x vetor2 na posição(1) preencherá o valor do vetor3 na posição(1) e assim por diante.

Uma possível solução:

algoritmo "Multiplicação entre vetores"

// Autor : Eduardo V. de Souza
// Data : 27/06/2011

var vet_1:vetor[1..5]de inteiro
vet_2:vetor[1..5]de inteiro
vet_3:vetor[1..5]de inteiro
i:inteiro

inicio

aleatorio 1,10 // ativa opção aleatoria do visualg


// nesse bloco criamos e preenchemos com valores
//randomicos o primeiro vetor
para i de 1 ate 5 faca
escreval("Preenchendo o ",i, "º campo do primeiro vetor")
leia(vet_1[i])
fimpara
// nesse bloco criamos e preenchemos com valores
//randomicos o segundo vetor
para i de 1 ate 5 faca
escreval("Preenchendo o ",i, "º campo do segundo vetor")
leia(vet_2[i])
fimpara

// nesse ultimo eu preencho o terceiro vetor com
//a multiplicação do 1º com o 2º e logo em seguida
//efetuo a leitura do mesmo mostrando na tela o resultado

para i de 1 ate 5 faca
escreval("mult do 1º com o 2º na pos",i, "º campo do 3º vetor")
//preenchendo o terceiro vetor
vet_3[i]<- vet_1[i] * vet_2[i]
escreval(vet_3[i])
fimpara
fimalgoritmo

Em execução:

3 comentários:

  1. pode me ajudar fazer este programa em algoritmo (visualg)

    usar para testes o Real e o Euro. As cotações diárias, referentes a um mês, deverão ser armazenadas num vetor.
    Nesse passo será necessário realizar:
    1. especificar os novos dados a serem incorporados no algoritmo;
    2. definir o processamento necessário para encontrar o valor médio para apresentar a cotação do Euro;
    3. definir o processamento para encontrar o menor e o maior valor da cotação dentro de um mês;
    main()
    {
    float vreal,veuro,convert,euro;
    float media=0;
    float cotacao[30];
    int x,maior,menor,moeda;
    //O usuario escolhe 1 ou 2 para converter moedas

    printf("Digite 1 para converter Real para Euro\n");
    printf("Digite 2 para converter Euro para Real\n");
    scanf("%d",&moeda);

    switch(moeda)
    {
    //Caso o usuario escolha 1 o programa executa o comando a seguir
    case 1:
    printf("Digite quantos Reais deseja converter...\n");
    scanf("%f",&vreal);
    printf("Digite o valor do Euro\n");
    scanf("%f",&veuro);
    convert=vreal/veuro;
    printf("O valor convertido e=%.2f Euros\n",convert);
    break;
    //Caso o usuario escolha 2 o programa executa o comando a seguir
    case 2:
    printf("Digite quantos Euros deseja converter...\n");
    scanf("%f",&euro);
    printf("Digite o valor do Euro\n");
    convert=euro*veuro;
    printf("O valor convertido e=%.2f Reais\n",convert);
    break;
    //Caso o usuario digite um numero diferente de 1 ou 2 o programa e interrompido pela mesagem a seguir
    default:
    printf("Valor invalido\n");
    }
    for(x=0;x<30;x++){//A primeira posicao e a posicao zero
    printf("Digite a cotacao do Dolar no dia %d:",x+1);//Aqui o programa ira repetir 30x
    scanf("%f",&cotacao[x]);
    media=media+cotacao[x];
    }
    media=media/30;
    system("cls");{
    maior=cotacao[0];
    menor=cotacao[0];
    for(x=0;x<30;x++){
    if (cotacao[x]>maior)
    maior=cotacao[x];
    }
    if(cotacao[x]<menor)
    menor=cotacao[x];
    }
    printf("O maior valor e:%d\n",maior);
    printf("O menor valor e:%d\n",menor);
    printf("Media das cotacoes diarias:%.2f\n\n",media);
    system("pause");
    }

    ResponderExcluir
  2. Podia ter colocado em c++ ou c ja em -_-

    ResponderExcluir
  3. como posso colocar um nome que multiplique o algoritmo?

    ResponderExcluir