Ir para conteúdo

Arquivado

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

felipecsamuel

Exercício de vetores

Recommended Posts

Boa tarde pessoal,

Estou tendo dificuldades com o seguinte exercício sobre vetores:

Citar

Desenvolva um algoritmo que leia um vetor de 30 posições de inteiros. Depois da leitura
localize o menor elemento do vetor e troque de posição com o primeiro elemento. Também
localize o maior elemento e troque de posição com o último elemento.

algoritmo "satanás"
var
   v : vetor[1..30] de inteiro
   i, j, menor, maior, tmp : inteiro
inicio
   para i de 1 ate 5 faca
      leia(v)
      se(i = 1) entao
         maior := v[1]
      fimse
      se ((i = 2) e (v > maior)) entao
         menor := v[1]
         maior := v[2]
      senao
         se ((i = 2) e (v < maior)) entao
            menor := v[2]
         fimse
      fimse
      se ((i <> 1) e (i <> 2) e (v > maior)) entao
         maior := v
      senao
         se ((i <> 1) e (i <> 2) e (v < menor)) entao
            menor := v
         fimse
      fimse
   fimpara
   tmp := v[1]
   v[1] := menor
   menor := tmp
   v[5] := tmp
   maior := tmp
   para i de 1 ate 5 faca
      escreva(v)
   fimpara
fimalgoritmo
 

Eu consegui fazer a troca do 1º número pela posição do  menor e do último pela posição do maior, mas o menor não vai para a primeira posição e do maior pelo último.

Por exemplo: o usuário informa 5 números: 5, 2, 3, 1, 4

A troca acontece: 1, 2, 3, 1, 5

Observe que foi o 1 foi pra posição do 5, mas o 5 não foi para a posição do 1, do mesmo jeito que o 5 foi para a última posição, mas o número da última posição não foi para o lugar do 5. :(

 

Obrigado desde já.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por alexdyna
      Prezados,
      Amigos tenho que fazer um trabalho da faculdade onde o professor me da um arquivo que vou colocar anexo e tenho que fazer um algoritmo que leia o arquivo e monte uma tabela com as informações.
      pelo que vejo ele tem na primeira linha 8 barra e nas demais linha 10 barras
      ate a ultima que seria sua parada onde temos 2 barras seguidas.
       
      ficaria muito grato com a ajuda de todos.
       
      No arquivo anexo esta o texto:
      Nome/telefone/nascimento/Horas Curso/vendas T1/vendas T2/vendas T3/vendas T4/
       Luiz Ranza Neo/99934-5255/05/12/1989/200/107099,072578621/76915,8996218681/100922,271239691/76372,9971916498/
      Richard de Barrissaia/99326-4689/18/03/1990/150/55123,0080621828/68062,2200055909/67233,9928593779/45236,5928531083/
      Rodrigo Abalâminos/99911-7413/09/08/1987/168/71697,3866071191/58063,5644108225/88183,6230762134/48160,3116315664/
      José Gigfrid/99658-7874/15/04/1997/135/48816,199086596/50086,3689415844/52916,3066872779/55232,0663463164/
      Luiza Celly Silva/99659-1214/01/02/2000/90/29208,8223591438/39361,8088384592/45062,056112236/38913,7237126574/
      Maria Kunlun/99686-7845/21/04/1984/182/92076,1053757689/80440,5339844205/87575,0546657182/79220,9398178354/
      //
       
    • Por JonasFloripa
      Bom dia pessoal..
      Estou com um problema e apareceu quando migrei o sistema ue tenho do php5 para o php7.
      Essa parte do sistema que está dando o problema seria quando quero adicionar o nome do pessoal em uma escala, mas quando seleciono os nomes partindo de quem começa com  a letra 'R', não envia as infomarções. Isso não acontecia no php5.
      Vou colocar o código abaixo e o que mostra quando seleciono o checkbox.
       
       
      <table width="100%" border="0" cellpadding="1" cellspacing="1"> <tr> <td width="9%" align="center"> <input name="conf[]" type="checkbox" value="<?PHP echo $login; ?>"/> </td> <td width="21%"><input name="login_<?PHP echo $login;?>" type="text" value="<?PHP echo $login; ?>" readonly class="negrito"/></td> <td width="13%"><input name="hora2_<?PHP echo $login;?>" type="text" value="<?PHP echo $hora2; ?>" size="4" readonly class="negrito"/></td> <td width="13%"><input name="somah2_<?PHP echo $login;?>" type="text" value="<?PHP echo $somah2; ?>" size="4"readonly="readonly" class="negrito"/></td> <td width="13%"><input name="quantidade_<?PHP echo $login;?>" type="text" value="<?PHP echo $total2; ?>" size="4"readonly="readonly" class="negrito"/></td> <td width="16%"><input name="data_<?PHP echo $login;?>" type="text" value="<?PHP echo $data; ?>" size="10" readonly class="negrito"/></td> <td width="15%"><input name="idescala_<?PHP echo $login;?>" type="text" value="<?PHP echo $idescala; ?>" size="5" readonly class="negrito"/></td> </tr> </table>  
    • Por cerejafalante
      Olá pessoal, estou com uma lista de exercício de funções para fazer no visualg mas não sei por onde começar, alguém pode me ajudar fazendo esse exercício? ai eu pego ele de exemplo e faço os outros, obrigada
       
      o exercício é 
      Escreva um programa que calcula área de figuras: quadrado, retângulo, triângulo e círculo. O usuário informa qual forma deseja calcular a área, informa os parâmetros necessários e a área da forma é calculada em uma função. 
    • Por cerejafalante
      Pessoal tenho que fazer um algoritmo de função no visualg de uma calculadora. Eu fiz o algoritmo mas não sei como fazer função, alguém me ajudaaa
      o código está aqui, tem que por em função, obrigada
       
      Var
      n1,n2,r:real
      operacao:inteiro
      inicio
      repita
      escreval ("1. Multiplicação ")
      escreval ("2. Divisão ")
      escreval ("3. Subtração ")
      escreval ("4. Soma ")
      escreval ("5. Sair ")
      leia (operacao)
      se ( operacao = 5 ) entao
      fimalgoritmo
      fimse
      limpatela
      escreva ("Diga o primeiro numero: ")
      leia ( n1 )
      ate ( operacao >= 1 ) e ( operacao <= 5 )
      se ( operacao <= 4 ) e ( operacao >= 1 ) entao
      escreva ("Diga o segundo numero: ")
      leia (n2)
      fimse
      escolha operacao
      caso 1
      r <- n1*n2
      caso 2
      r <- n1/n2
      caso 3
      r <- n1-n2
      caso 4
      r <- n1+n2
      outrocaso
      escreva ("escolha incorreta")
      fimescolha
      escreval ("O resultado é: ", r)
      escreval ("")
      ate ( operacao = 5 )
      fimalgoritmo
    • Por LeoCS2724
      Preciso que alguem faça esse exercicios para min, pois estou fazendo uma lista de 100 exercicios, e preciso entrega-los até hoje.
      São para ser feitos em VISUAL G.


      3- Uma loja tem 10 cadastrados e deseja enviar uma correspondência a cada um deles anunciando um bônus especial. Faça um programa que leia o nome do cliente e o valor de suas compras no ano passado. Calcule e mostre um bônus de 10% se o valor das vendas for menor que R$1000,00 e 15% caso contrário.

      5- Faça um programa que receba a idade, altura e peso de 25 pessoas. Calcule e mostre:

      - A quantidade de pessoas com idade superior a 50 anos.

      - A média das alturas das pessoas com idade entre 10 e 20 anos.

      - A porcentagem de pessoas com peso inferior a 40 kg entre todas as pessoas analisadas;


      6- Faça um programa que receba 10 números e que calcule e mostre a quantidade de números entre 30 e 90.

      8- Faça um programa que receba várias idades e que calcule e mostre a média das idades digitadas. Finalize digitando idade igual a zero.


      9- A prefeitura de uma cidade fez uma pesquisa entre seus habitantes, coletando dados sobre o salário e o número de filhos. A prefeitura deseja saber:

      a) a média do salário da população;

      b) a média do número de filhos;

      c) o maior salário


      10- Escrever um algoritmo que lê 5 valores para a, um de cada vez, e conta quantos destes valores são negativos, escrevendo esta informação.


      11- Chico tem 1,50 metro e cresce 2 centímetros por ano, enquanto Zé tem 1,10 metro e cresce 3 centímetros por ano. Construa um algoritmo que calcule e imprima quantos anos serão necessários para que Zé seja maior que Chico.

      14-Escrever um algoritmo que leia 20 valores para uma variável n e, para cada um deles, calcule a tabuada de 1 até n. Mostre a tabuada na forma:


      1 x n = n


      2 x n = 2n


      3 x n = 3n


      .......


      n x n = n2


      15- Faça um algoritmo que leia uma quantidade não determinada de números positivos. Calcule a quantidade de números pares e ímpares, a média de valores pares e a média geral dos números lidos. O número que encerrará a leitura será zero.


      16- Foi realizada uma pesquisa de algumas características físicas da população de uma certa região. Foram entrevistadas 500 pessoas e coletados os seguintes dados:

      a- Sexo: M (masculino) e F (feminino)

      b- cor dos olhos: A (azuis), V (verdes) e C (castanhos)

      c- cor dos cabelos: L (louros), C (castanhos) e P (pretos)

      d- Idade

      Deseja-se saber:

      a maior idade do grupo

      a quantidade de indivíduos do sexo feminino, cuja idade está entre 18 e 35 anos e que tenham olhos verdes e cabelos louros.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.