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:  
Adriano Mendonça

VisualG VisualG Finalizando o Código

Recommended Posts

Fala galera estou com uma dificuldade para calcular o fim do código...

 

Citação

Dada uma matriz MAT de 4 x 5 elementos, faça um algoritmo para somar os elementos de cada linha gerando o vetor SOMALINHA. Em seguida, somar os elementos do vetor SOMALINHA na variável TOTAL que deve ser impressa (escrita) no final.


Pois bem consigo calcular a soma de cada linha, porém depois o total q seria calcular a soma das 4 linhas não estou conseguindo...
Meu código esta assim:

 

algoritmo "semnome"
// Função :
// Autor :
// Data : 21/09/2017
// Seção de Declarações
var
l,c,somalinha, total : inteiro
numeros : vetor [1..4,1..5] de inteiro
inicio
// Seção de Comandos
para l de 1 ate 4 faca
para c de 1 ate 5 faca
  Escreval ("informa o valor da posicao : ",1,"-",c," : ")
  leia (numeros [l,c])
  fimpara
  fimpara
  limpatela
  para l de 1 ate 4 faca
  somalinha <-0;
  para c de 1 ate 5 faca
  somalinha <- somalinha+numeros[l,c]
  fimpara
  Escreval ("A soma da linha : ",l, "-", somalinha)
  fimpara
 
fimalgoritmo

asasasasa.thumb.jpg.b62c06c0cd9fef95e78b16bf1cde99d0.jpg

 

Editado por DiF
Botão CODE <>
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma variável total que receba SOMALINHA após calcular a somatória de uma linha respectiva. Por exemplo, após a conclusão da soma da linha 1 a variável total irá receber ela mesmo + SOMALINHA e assim respectivamente.

Dica: Use números aleatórios para preencher matriz ao invés de fazer isso manualmente.

 

var
l,c,somalinha, total : inteiro
numeros : vetor [1..4,1..5] de inteiro
inicio
// Seção de Comandos
para l de 1 ate 4 faca
para c de 1 ate 5 faca
  numeros[l,c] <- RANDI(100)  // NUMEROS ALEATORIOS DE 1 A 99
  fimpara
  fimpara
  limpatela
  para l de 1 ate 4 faca
  somalinha <-0;
  para c de 1 ate 5 faca
  somalinha <- somalinha+numeros[l,c]
  fimpara
 total <- total+somalinha   // TOTAL DA SOMA DAS LINHAS
  Escreval ("A soma da linha : ",l, "-", somalinha)
  fimpara
  Escreval ("A soma de todas as linhas : ", total)
fimalgoritmo

 

Editado por gabriel sabadini
  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • Obg ;) Era isso mesmo!!!
    Estava no caminho certo porém preenchendo aleatórios  ficou bem melhor =D
     

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Olá @Adriano Mendonça.

     

    1) VERSÃO DO VISUAL

    Pelo que observei, você está utilizando a verão 2.0 do Visualg (ou anterior). Sugiro que atualize para versão mais recente (3.0.6.5)., pois possui algumas atualizações e correções. A não ser que seja uma exigência do curso que esteja fazendo.

     

    Link para download:http://www.apoioinformatica.inf.br/produtos/visualg

     

     

     

    2) INDENTAÇÃO DE CÓDIGO

    É recomendado que o código sempre esteja indentado. Além de poder ser critério de avaliação, ajuda na análise do código.

     

    Tomando como base o código anterior:

    var
       l,c,somalinha, total : inteiro
       numeros : vetor [1..4,1..5] de inteiro
    
    inicio
    para l de 1 ate 4 faca
       para c de 1 ate 5 faca
          numeros[l,c] <- RANDI(100)  // NUMEROS ALEATORIOS DE 1 A 99
       fimpara
    fimpara
    limpatela
    para l de 1 ate 4 faca
       somalinha <-0;
       para c de 1 ate 5 faca
          somalinha <- somalinha+numeros[l,c]
       fimpara
       total <- total+somalinha   // TOTAL DA SOMA DAS LINHAS
       escreval ("A soma da linha : ",l, "-", somalinha)
       fimpara
    escreval ("A soma de todas as linhas : ", total)
    fimalgoritmo

    Desta forma, a estrutura do código fica visualmente explícita.

     

     

    Aproveitando, segue o código pequenas correções/sugestões:
     

    algoritmo "semnome"
    var
       l,c,somalinha, total : inteiro
       numeros : vetor [1..4,1..5] de inteiro
    inicio
    para l de 1 ate 4 faca
       para c de 1 ate 5 faca
          {numeros[l,c] <- RANDI(100)}  // NUMEROS ALEATORIOS DE 1 A 99
          numeros[l,c] <- RANDI(100)}  //NÚMEROS ALEATORIOS DE 0 A 99
       fimpara
    fimpara
    limpatela
    para l de 1 ate 4 faca
       somalinha <- 0;
       para c de 1 ate 5 faca
          somalinha <- somalinha+numeros[l,c]
       fimpara
       total <- total+somalinha   // TOTAL DA SOMA DAS LINHAS
       {escreval ("A soma da linha : ",l, "-", somalinha)}
       escreval ("Soma da linha",l,":",somalinha)
    fimpara
    escreval ("Soma de todas as linhas :",total)
    fimalgoritmo

     

     

     

    3) REQUISITOS DE SISTEMA

    Veja o que pede o enunciado:

    12 horas atrás, Adriano Mendonça disse:

    Dada uma matriz MAT de 4 x 5 elementos, faça um algoritmo para somar os elementos de cada linha gerando o vetor SOMALINHA. Em seguida, somar os elementos do vetor SOMALINHA na variável TOTAL que deve ser impressa (escrita) no final.

     

    Ou seja, está sendo solicitado que seja gerado um vetor.... mas no seu código não está sendo seguido.

     

    Vou tentar explicar...: vejam, todos os "requisitos de sistema" que o seu "patrão" pediu devem ser seguidos... ele não pode pedir uma vitamina de abacate e ser entregue um suco de laranja, mesmo que o suco de esteja muito bem feito, ou que é mais gostoso, ou mais barato, ou mais prático... etc... entende?

     

    Ou faz o que ele pede, ou "faz uma negociação para mudar". Só para deixar claro, também não deve funcionar assim: "ah! se ele pediu sal na vitamina, vou botar sal, mesmo você achando que pode estragar"... tudo é uma uma questão de bom senso... será que ele quer sal mesmo? basta entrar em acordo, ou mesmo "descobrir" que ele gosta de sal na vitamina...

     

    O principal ponto ao tentar fazer um algoritmo é entender o que está sendo pedido. Parece óbvio, mas muita vezes deixamos isso passar.. é comum confundirmos "algo bem feito" com "algo certo" (vide a questão da "vitamina x suco"). Nesse sentido também entra a questão do "certo, do modo certo". Não é só o resultado que importa, mas também o método... tipo "eu quero vitamina de abacate batido a mão", daí não adianta me entregarem uma vitamina feita no liquidificador... mesmo que em ambos métodos sejam entregues "uma vitamina".

     

    Em fim... você precisa de outro vetor... algo como:

    SOMALINHA :vetor [1..4] de inteiro

    obs.: eu particularmente sugiro a nomenclatura de vetores no plural, pois o plural meio que já sugere que é um vetor... (no singular fica parecendo que é uma variável simples), ex.:

    somaLinhas :vetor [1..4] de inteiro

    Ai entre a questão do "requisito". Será que necessariamente tem que ser SOMALINHA ou é apenas uma sugestão? Sugiro que use como no enunciando, rs.

     

     

     

    4) E A MATRIZ?

    12 horas atrás, Adriano Mendonça disse:

    Dada uma matriz MAT de 4 x 5 elementos

    O enunciado não diz como a matriz deve gerada... nesse sentido creio que ficou legal o uso da "geração automática"... facilita muitos nos testes...

     

    Mas além disso, acho que seria interessante também exibir os dados da matriz na tela. Algo como após gerar a matriz, desenhar ela a partir vetor... Por sinal, entendo que a matriz seja, inclusive, mais importante que a soma das linhas, ou seja, os pontos principais são "A matriz" e a "Soma das somas das linhas". A "soma de cada linha" seria mais secundária. Entende esse ponto de vista?

     

    Logo, deixe a soma das linhas, mas também exiba a matriz na tela.... até mesmo para ter referência. Como saber se a soma de cada linha está correta? quem garante que foi feito uma soma mesmo ou que você gerou a soma em si?

    Ex.:

    somalinha<-RANDI(150)+200

     

     

     

    ***

     

    No aguardo.

    Editado por Simon Viegas
    • Curtir 3

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Obrigado pelas dicas!!

    Como o exercicio tem q entregar agora na faculdade nao vou ter tempo d modificar muito nao rs...
    e ainda tenho outros 3 pra fazer...

    muito obg =D

    • Curtir 1

    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

    ×