Ex_064 e Ex_065

Home Fóruns Programação Básica Ex_064 e Ex_065

Visualizando 6 respostas da discussão
  • Autor
    Posts
    • #106768
      Neander Fontes
      Participante

      Criei esse tópico porque são duas questões iguais, caso contrário entendo que possa apagar, obrigado!
      Aproveitando a circunstancias, gostaria de saber se está correto o meu código ficou bem diferentes do professor:
      Apesar dos valores finais estarem correto e a projeção acredito eu estar coerente, gostaria de alguém pra me avaliar ou dar dicas em relação ao código do professor.

      programa
      {/* 	Módulo04 Aula14 - Matrizes
      *	Portugol Exercício 064
       */
       	inclua biblioteca Util --> u
      	funcao inicio()
      	{
      //Exercício 064: - Somador de Linhas
      		escreva("{ EXERCÍCIO 64 - Somador de Linhas }")
      		/*Obs.:
      		 */
      		//Declarações de Variáveis:
      		inteiro posLinha, posColuna, somaLinha4, somaLinha1
      		inteiro somaLinha2, somaLinha3, somaLinha
      		inteiro matrizNum[4][4]
      		//Entrada de Dados:
      		escreva("\n\n=========================================")
      		escreva("\n\tSomador de Linhas")
      		escreva("\n=========================================\n")
      		//Declarações Fixas:
      		somaLinha  = 0
      		somaLinha1 = 0
      		somaLinha2 = 0
      		somaLinha3 = 0
      		somaLinha4 = 0
      		//Declarações da Matriz Principal:
      		escreva("Sorteando Matriz[4][4]:")
      		escreva("\n=========================================\n")
      		para (posLinha = 0; posLinha < u.numero_linhas(matrizNum); posLinha++) {
      			para (posColuna = 0; posColuna < u.numero_colunas(matrizNum); posColuna++) {
      				matrizNum[posLinha][posColuna] = sorteia(1, 10)
      				escreva("\t" + matrizNum[posLinha][posColuna])
      				u.aguarde(350)
      			}
      			escreva("\n")
      		}
      		
      		escreva("\n=========================================\n")
      		//Linha1 Indice0:
      		para (posColuna = 0; posColuna < u.numero_colunas(matrizNum); posColuna++) {
      			somaLinha1 += matrizNum[0][posColuna]
      		}
      		//Declaração para Soma das Linhas:
      		//Linha2 Indice1:
      		para (posColuna = 0; posColuna < u.numero_colunas(matrizNum); posColuna++) {
      			somaLinha2 += matrizNum[1][posColuna]
      		}
      		//Declaração para Soma das Linhas:
      		//Linha3 Indice2:
      		para (posColuna = 0; posColuna < u.numero_colunas(matrizNum); posColuna++) {
      			somaLinha3 += matrizNum[2][posColuna]
      		}
      		//Declaração para Soma das Linhas:
      		//Linha4 Indice3:
      		para (posColuna = 0; posColuna < u.numero_colunas(matrizNum); posColuna++) {
      			somaLinha4 += matrizNum[3][posColuna]
      		}
      		//Cálculos se Necessário:
      		//Declarações Finais:
      		escreva("\nA Soma dos Valores da 1ª linha do indice {" + (posLinha - 4) + "} = " + somaLinha1)
      		escreva("\nA Soma dos Valores da 2ª linha do indice {" + (posLinha - 3) + "} = " + somaLinha2)
      		escreva("\nA Soma dos Valores da 3ª linha do indice {" + (posLinha - 2) + "} = " + somaLinha3)
      		escreva("\nA Soma dos Valores da 4ª linha do indice {" + (posLinha - 1) + "} = " + somaLinha4)
      		escreva("\n\n---------------------------------- Fim ----------------------------------")
      	}
      }
    • #106769
      Neander Fontes
      Participante

      Aproveitando a circunstancias, gostaria de saber se está correto o meu código ficou bem diferentes do professor:
      Apesar dos valores finais estarem correto e a projeção acredito eu estar coerente, gostaria de alguém pra me avaliar ou dar dicas em relação ao código do professor.

      programa
      {/* 	Módulo04 Aula14 - Matrizes
      *	Portugol Exercício 065
      *   	Autor: Neander
      *	Data: 10/12/2022
      *	Local: Portugal-Braga
      *	Empresa: Estudonauta
       */
       	inclua biblioteca Util --> u
      	funcao inicio()
      	{
      //Exercício 065: - Somador de Colunas
      		escreva("{ EXERCÍCIO 65 - Somador de Colunas }")
      		/*Obs.:
      		 */
      		//Declarações de Variáveis:
      		inteiro posLinha, posColuna
      		inteiro somaColuna1, somaColuna2, somaColuna3, somaColuna4, somaColuna
      		inteiro matrizNum[4][4]
      		//Entrada de Dados:
      		escreva("\n\n==========================================")
      		escreva("\n\t   Somador de Colunas")
      		escreva("\n==========================================\n")
      		//Declarações Fixas:
      		somaColuna  = 0
      		somaColuna1 = 0
      		somaColuna2 = 0
      		somaColuna3 = 0
      		somaColuna4 = 0
      		//Declarações da Matriz Principal:
      		escreva("Os Números da Matriz[4][4] Sorteados são:\n")
      		escreva("==========================================\n")
      		para (posLinha = 0; posLinha < u.numero_linhas(matrizNum); posLinha++) {
      			para (posColuna = 0; posColuna < u.numero_colunas(matrizNum); posColuna++) {
      				matrizNum[posLinha][posColuna] = sorteia(1, 10)
      				escreva("\t" + matrizNum[posLinha][posColuna])
      				u.aguarde(350)
      			}
      			escreva("\n")
      		}
      		escreva("==========================================\n")
      
      		//Declaração para Soma dos elementos das colunas:		
      		//Coluna1 Indice0
      		para (posLinha = 0; posLinha < u.numero_linhas(matrizNum); posLinha++) {
      			somaColuna1 += matrizNum[posLinha][0]
      		}
      
      		//Coluna2 Indice1
      		para (posLinha = 0; posLinha < u.numero_linhas(matrizNum); posLinha++) {
      			somaColuna2 += matrizNum[posLinha][1]
      		}
      
      		//Coluna3 Indice2
      		para (posLinha = 0; posLinha < u.numero_linhas(matrizNum); posLinha++) {
      			somaColuna3 += matrizNum[posLinha][2]
      		}
      
      		//Coluna4 Indice3
      		para (posLinha = 0; posLinha < u.numero_linhas(matrizNum); posLinha++) {
      			somaColuna4 += matrizNum[posLinha][3]
      		}
      		//Cálculos se Necessário:
      		//Declarações Finais:
      		escreva("\nA Soma dos valores da 1ª Coluna do indice {" + (posLinha - 4) + "} = " + somaColuna1)
      		escreva("\nA Soma dos valores da 2ª Coluna do indice {" + (posLinha - 3) + "} = " + somaColuna2)
      		escreva("\nA Soma dos valores da 3ª Coluna do indice {" + (posLinha - 2) + "} = " + somaColuna3)
      		escreva("\nA Soma dos valores da 4ª Coluna do indice {" + (posLinha - 1) + "} = " + somaColuna4)  
      		escreva("\n\n---------------------------------- Fim ----------------------------------")
      	}
      }
    • #106847
      Tutora Jessica
      Moderador

      Ola Neander, o importante é o programa estar rodando conforme foi pedido no exercício.. você pode encontrar novas formas de resolver ele, não precisa ficar igualzinho ao do professor.
      Você viu o vídeo da resolução desses exercícios?

    • #107071
      Neander Fontes
      Participante

      Oi Jéssica, assisti sim!! Por isso mesmo fiquei um pouco na dúvida em relação ao meu código, mas é bom saber que a minha interpretação está correta também! Obrigado!!

    • #107079
      Tutora Jessica
      Moderador

      Bons estudos Neander, se precisar só retornar ao fórum 🖖🏼

    • #145598
      mauro carlos de souza
      Participante

      Ocorreu o mesmo no exer 64 como no 65 …. acumula a soma daas linhas e da coluna ,,,,nao identificar o erro …tem alguém que pode me ajudar????
      percebam da coluna anterior acumula para proxima ….pq???

      programa {
      inclua biblioteca Util –> u
      funcao inicio() {
      escreva (“{ Exercício 065 – Somador de Colunas } \n\n”)

      inteiro matriz[4][4] , l , c , somaC

      somaC=0

      escreva(“A Matriz gerada foi : \n\n”)

      para(c=0 ; c<u.numero_colunas(matriz) ; c++){
      para( l=0 ; l<u.numero_linhas(matriz) ; l++){
      matriz[l][c]=u.sorteia(0,9)
      u.aguarde(300)
      escreva(matriz[l][c] , ” \t\t”)
      }
      escreva(“\n\n”)
      }

      escreva(“———————————————\n”)

      para(c=0 ; c<u.numero_colunas(matriz) ; c++){
      escreva(“Somando a coluna “, c , ” : “)

      para(l=0 ; l<u.numero_linhas(matriz) ; l++){
      somaC+=matriz[c][l]
      escreva(matriz[c][l] , “\t”)
      se(l!=u.numero_linhas(matriz)-1){
      escreva(” + \t”)
      }senao{
      escreva(” = “)
      }

      }

      escreva(” “, somaC , “\n”)
      }
      escreva(“———————————————\n”)

      }

      }
      }

      percebam da coluna anterior acumula para proxima ….pq???

    • #145602
      Tutora Jessica
      Moderador

      Olá Mauro, trouxe a sua dúvida para um tópico já existente dos mesmos exercícios.
      Acima você encontra alguma a conclusão de um aluno , dê uma olhadinha acima por favor.
      Caso ainda tenha dúvidas me envie por favor o seu código completo para que eu possa analisar.

Visualizando 6 respostas da discussão
  • Você deve fazer login para responder a este tópico.