Ir para conteúdo

POWERED BY:

Arquivado

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

aphaaa

[Resolvido] matriz - Visualg

Recommended Posts

consegui o 3..

 

ficou assim:

 

algoritmo "exercício 3 cap 16 matriz"
// Função :
// Autor :Raphael T. reis
// Data : 27/4/2009
// Seção de Declarações 
var
   m: vetor [1..5,1..5] de inteiro
   lin, col:inteiro
   diag_princ:inteiro
   diag_secun:inteiro
   somalin4:inteiro
   somacol2:inteiro
   somatudo:inteiro
   
   
inicio
   // Seção de Comandos
   somalin4<-0
   somacol2<-0
   diag_princ<-0
   diag_secun<-0
   somatudo<-0

   //escreva e leia os valores da matriz
   para lin de 1 ate 5 faca
	 para col de 1 ate 5 faca
	   escreva ("entre com os valores da matriz: ")
	   leia (M[lin,col])
	   somatudo<- somatudo + m[lin, col]

	 fimpara



   fimpara



   //soma da linha 4 de M.
   somalin4<-m[4,1]+m[4,2]+m[4,3]+m[4,4]+m[4,5]

   //soma da coluna 2
   somacol2<-m[1,2]+m[2,2]+m[3,2]+m[4,2]+m[5,2]
   
   
   //soma da diagonal principal
   diag_princ<- m[1,1]+m[2,2]+m[3,3]+m[4,4]+m[5,5]
   
   
   //soma da diagonal secundaria
   diag_secun<- m[1,5]+m[2,4]+m[3,3]+m[4,2]+m[5,1]
   



   //escreva todos esses elementos
   escreval(" a soma da linha 4 é: ",somalin4)
   escreval(" a soma da coluna 2 é: ", somacol2)
   escreval(" a soma da diagonal principal é: ", diag_princ)
   escreval(" a soma da diag_secund é: ", diag_secun)
   escreval(" a soma de todos elementos é: ", somatudo)

   //escreva os elementos que compoem esta matriz
   para lin de 1 ate 5 faca
	 para col de 1 ate 5 faca
	 escreva (m[lin, col])
	 fimpara
   fimpara
   
fimalgoritmo
amanha eu volto tentando o 4

Compartilhar este post


Link para o post
Compartilhar em outros sites

valew peal ajuda aee..

 

agora o negocio esta fluindo..

 

exercicio 4 ficou assim:

 

algoritmo "exercício 4 cap 16 matriz"
// Função :
// Autor :raphael T. Reis
// Data : 28/4/2009
// Seção de Declarações 
var
   m:vetor [1..5,1..5] de inteiro
   lin, col,i: inteiro
   SL:vetor [1..5] de inteiro
   SC:vetor [1..5] de inteiro

inicio
   // Seção de Comandos
   
   
   //escreva e leia os valores da matriz
   para lin de 1 ate 5 faca
	 para col de 1 ate 5 faca
	   escreva ("entre com os valores da matriz: ")
	   leia (M[lin,col])
	 fimpara
   fimpara
   
   //soma das linhas de M.
   sl[1]<-m[1,1]+m[1,2]+m[1,3]+m[1,4]+m[1,5]
   sl[2]<-m[2,1]+m[2,2]+m[2,3]+m[2,4]+m[2,5]
   sl[3]<-m[3,1]+m[3,2]+m[3,3]+m[3,4]+m[3,5]
   sl[4]<-m[4,1]+m[4,2]+m[4,3]+m[4,4]+m[4,5]
   sl[5]<-m[5,1]+m[5,2]+m[5,3]+m[5,4]+m[5,5]
   
   
   //soma das colunas
   sc[1]<-m[1,1]+m[2,1]+m[3,1]+m[4,1]+m[5,1]
   sc[2]<-m[1,2]+m[2,2]+m[3,2]+m[4,2]+m[5,2]
   sc[3]<-m[1,3]+m[2,3]+m[3,3]+m[4,3]+m[5,3]
   sc[4]<-m[1,4]+m[2,4]+m[3,4]+m[4,4]+m[5,4]
   sc[5]<-m[1,5]+m[2,5]+m[3,5]+m[4,5]+m[5,5]

   
   
   //escreva a matriz
   para lin de 1 ate 5 faca
	 para col de 1 ate 5 faca
	 escreval (m[lin, col])
	 fimpara
   fimpara
   
   //escrevas os dois vetores

   escreval ("os valores da soma das linhas são: ")
   para i de 1 ate 5 faca
	 escreval (sl[i])
   fimpara
   escreval ("os valores da soma das colunas são: ")
   para i de 1 ate 5 faca
	 escreval (sc[i])
   fimpara
   
fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

o exercício 5:

 

algoritmo "exercício 5 cap 16 matriz"
// Função :
// Autor : Raphael T.Reis
// Data : 28/4/2009
// Seção de Declarações 
var
   n1:vetor [1..4,1..6] de inteiro
   n2:vetor [1..4,1..6] de inteiro
   lin, col:inteiro

   m1:vetor [1..4,1..6] de inteiro
   i,j:inteiro

   m2:vetor [1..4,1..6] de inteiro

inicio
   // Seção de Comandos

   //escreva e leia os valores da matriz
   para lin de 1 ate 4 faca
	 para col de 1 ate 6 faca
	   escreva ("entre com os valores da matriz: ")
	   leia (n2[lin,col])
	 fimpara
   fimpara

   para lin de 1 ate 4 faca
	 para col de 1 ate 6 faca
	   escreva ("entre com os valores da matriz: ")
	   leia (n1[lin,col])
	 fimpara
   fimpara

   //fazer a soma das matrizes
   
   m1[1,1]<-n1[1,1]+n2[1,1]
   m1[1,2]<-n1[1,2]+n2[1,2]
   m1[1,3]<-n1[1,3]+n2[1,3]
   m1[1,4]<-n1[1,4]+n2[1,4]
   m1[1,5]<-n1[1,5]+n2[1,5]
   m1[1,6]<-n1[1,6]+n2[1,6]
   m1[2,1]<-n1[2,1]+n2[2,1]
   m1[2,2]<-n1[2,2]+n2[2,2]
   m1[2,3]<-n1[2,3]+n2[2,3]
   m1[2,4]<-n1[2,4]+n2[2,4]
   m1[2,5]<-n1[2,5]+n2[2,5]
   m1[2,6]<-n1[2,6]+n2[2,6]
   m1[3,1]<-n1[3,1]+n2[3,1]
   m1[3,2]<-n1[3,2]+n2[3,2]
   m1[3,3]<-n1[3,3]+n2[3,3]
   m1[3,4]<-n1[3,4]+n2[3,4]
   m1[3,5]<-n1[3,5]+n2[3,5]
   m1[3,6]<-n1[3,6]+n2[3,6]
   m1[4,1]<-n1[4,1]+n2[4,1]
   m1[4,2]<-n1[4,2]+n2[4,2]
   m1[4,3]<-n1[4,3]+n2[4,3]
   m1[4,4]<-n1[4,4]+n2[4,4]
   m1[4,5]<-n1[4,5]+n2[4,5]
   m1[4,6]<-n1[4,6]+n2[4,6]
   

   //criar uma matriz M1 que seja a soma de N1 e N2

   escreval (" resultado de m1 e: ")
   para lin de 1 ate 4 faca
	 para col de 1 ate 6 faca
	   escreval (m1[lin, col])
	 fimpara
   fimpara

   //calculo para achar a diferença de n1 e n2

   m2[1,1]<-n1[1,1]-n2[1,1]
   m2[1,2]<-n1[1,2]-n2[1,2]
   m2[1,3]<-n1[1,3]-n2[1,3]
   m2[1,4]<-n1[1,4]-n2[1,4]
   m2[1,5]<-n1[1,5]-n2[1,5]
   m2[1,6]<-n1[1,6]-n2[1,6]
   m2[2,1]<-n1[2,1]-n2[2,1]
   m2[2,2]<-n1[2,2]-n2[2,2]
   m2[2,3]<-n1[2,3]-n2[2,3]
   m2[2,4]<-n1[2,4]-n2[2,4]
   m2[2,5]<-n1[2,5]-n2[2,5]
   m2[2,6]<-n1[2,6]-n2[2,6]
   m2[3,1]<-n1[3,1]-n2[3,1]
   m2[3,2]<-n1[3,2]-n2[3,2]
   m2[3,3]<-n1[3,3]-n2[3,3]
   m2[3,4]<-n1[3,4]-n2[3,4]
   m2[3,5]<-n1[3,5]-n2[3,5]
   m2[3,6]<-n1[3,6]-n2[3,6]
   m2[4,1]<-n1[4,1]-n2[4,1]
   m2[4,2]<-n1[4,2]-n2[4,2]
   m2[4,3]<-n1[4,3]-n2[4,3]
   m2[4,4]<-n1[4,4]-n2[4,4]
   m2[4,5]<-n1[4,5]-n2[4,5]
   m2[4,6]<-n1[4,6]-n2[4,6]


   //mostrar a diferença de n1 e n2
   escreval ("resultado de m2: ")
   para lin de 1 ate 4 faca
	 para col de 1 ate 6 faca
	   escreval (m2[lin,col])
	 fimpara
   fimpara

fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse foi complicado, mas rolou..

 

 

exercício 6:

 

algoritmo "exercício 6 cap 16 matriz"
// Função :
// Autor :Raphael T.Reis 
// Data : 28/4/2009
// Seção de Declarações 
var
   m: vetor [1..6,1..6] de inteiro	 //matriz
   lin, col: inteiro				   //linha e coluna
   a: inteiro						  //referente a soma do 1° desenho
   cf: inteiro						 //coluna final
   b:inteiro						   //referente a soma do 2° desenho
   c:inteiro						   //referente a soma 3° desenho
   x, y:inteiro						//variaveis para aumentar e diminuir a quantia de colunas a serem somadas
   d:inteiro						   //referente a soma do 4° desenho
   f:inteiro						   //referente a soma do 5° desenho
   f1,f2:inteiro					   //variavel para armazenar os dois resultados que serao somados ao F
   g:inteiro						   //referente a soma do 6° desenho
   g1,g2:inteiro					   //variavel para armazenar os dois resultados que serao somados ao G
   H:inteiro						   //referente a soma do 7° desenho
   h1,h2:inteiro					   //variavel para armazenar os dois resultados que serao somados ao H
   I: inteiro						  //referente a soma do 8° desenho
   i1,i2:inteiro					   //variavel para armazenar os dois resultados que serao somados aoI


inicio
   // Seção de Comandos
   x<-0
   //escreva e leia os valores da matriz
   para lin de 1 ate 6 faca
	 para col de 1 ate 6 faca
	   //escreva ("entre com os valores da matriz: ")
	   //leia (M[lin,col])
	   x<-x+1
	   m[lin,col]<-x
	   escreva (m[lin,col])
	 fimpara
	  escreval ("")
   fimpara

   //calcular imagem A

   a<-0
   cf<-1

   para lin de 1 ate 6 faca
	 para col de cf ate 6 faca
	   a<-a+m[lin,col]
	 fimpara
	 cf<-cf+1
   fimpara

   
   //calcular imagem b

   b<-0
   cf<-6

   para lin de 1 ate 6 faca
	 para col de 1 ate cf faca
	   b<-b+m[lin,col]
	 fimpara
	 cf<-cf-1
   fimpara
   
   //calcular imagem C

   c<-0
   x<-1
   y<-6

   para lin de 1 ate 6 faca
	 para col de x ate y faca
	   c<-c+m[lin,col]
	 fimpara
	 x<-x+1
	 y<-y-1
   fimpara

   //calcular imagem D
   d<-0
   x<-1
   y<-6
   
   para col de 1 ate 3 faca
	 para lin de x ate y faca
	   d<-d+m[lin,col]
	 fimpara
	   y<-y-1
	   x<-x+1

   fimpara
   
   //calcular imagem f
   f1<-0
   x<-1
   y<-6

   para col de 1 ate 3 faca
	 para lin de x ate y faca
	   f1<-f1+m[lin,col]
	 fimpara
	   y<-y-1
	   x<-x+1

   fimpara
   
   f2<-0
   x<-3
   y<-4

   para col de 4 ate 6 faca
	 para lin de x ate y faca

	   f2<-f2+m[lin,col]
	 fimpara
	   y<-y+1
	   x<-x-1

   fimpara
   
   f<- f1 + f2
   
   
   //calcular imagem g
   
   g1<-0
   x<-1
   y<-6

   para lin de 1 ate 6 faca
	 para col de x ate y faca
	   g1<-g1+m[lin,col]
	 fimpara
	 x<-x+1
	 y<-y-1
   fimpara
   
   
   g2<-0
   x<-3
   y<-4

   para lin de 4 ate 6 faca
	 para col de x ate y faca
	   g2<-g2+m[lin,col]
	 fimpara
	 x<-x-1
	 y<-y+1
   fimpara
   
   g<-g1+g2
   
   
   //calcular imagem H
   
   h1<-0
   x<-1
   y<-6

   para lin de 1 ate 6 faca
	 para col de x ate y faca
	   h1<-h1+m[lin,col]
	 fimpara
	 x<-x+1
	 y<-y-1
   fimpara
   
   
   h2<-0
   x<-3
   y<-4

   para lin de 4 ate 6 faca
	 para col de x ate y faca
	   h2<-h2+m[lin,col]
	 fimpara
	 x<-x-1
	 y<-y+1
   fimpara


   H<-h1+h2
   
   //soma da imagem I

   i1<-0
   x<-1
   y<-6

   para col de 1 ate 3 faca
	 para lin de x ate y faca
	   i1<-i1+m[lin,col]
	 fimpara
	   y<-y-1
	   x<-x+1

   fimpara
   

   i2<-0
   x<-1
   y<-6

   para lin de x ate y faca
	 para col de 4 ate 6 faca
	   i2<-i2+m[lin,col]
	 fimpara
	 x<-x+1
	 y<-y-1
   fimpara

   I<-i1+i2
   
   
   
   
   
   //escrever resultados
   escreval("soma da imagem A: ", A)
   escreval("soma da imagem B: ", B)
   escreval("soma da imagem c: ", C)
   escreval("soma da imagem d: ", d)
   escreval("soma da imagem f: ", f)
   escreval("soma da imagem G: ", G)
   escreval("soma da imagem H: ",H)
   escreval("soma da imagem I: ",I)
fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

poste os enunciados dos exercicios q naum tiverem o msm.

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exercício 4

Escrever um algoritmo que lê uma matriz M(5,5) e cria 2 vetores SL(5), SC(5) que contenham

respectivamente as somas das linhas e das colunas de M. Escrever a matriz e os vetores criados.

Exercício 5

Escrever um algoritmo que lê duas matrizes N1(4,6) e N2(4,6) e cria:

a) Uma matriz M1 que seja a soma de N1 e N2

B) Uma matriz M2 que seja a diferença de N1 com N2

Escrever as matrizes lidas e calculadas.

Exercício 6

Escrever um algoritmo que lê uma matriz M(6,6) e calcula as somas das partes hachuradas. Escrever

a matriz M e as somas calculadas.

Exercício 7

Na teoria de Sistemas define-se elemento mínimax de uma matriz, o menor elemento da linha em que

se encontra o maior elemento da matriz. Escrever um algoritmo que lê uma matriz A(10,10) e determina

o elemento mínimax desta matriz, escrevendo a matriz A e a posição do elemento mínimax.

Exercício 8

Escreva um algoritmo que ordene os elementos de cada linha de uma matriz M[10,10].

ELABORADO POR BRUNO TONET 46

.: NAPRO :. NÚCLEO DE APOIO APRENDIZAGEM DE PROGRAMAÇÃO

Desafio

Escrever um algoritmo que gere e escreva o quadrado mágico de ordem 7.

Um quadrado mágico de ordem n (sendo n um número ímpar) é um arranjo de números de 1 até n2 em

uma matriz quadrada de tal modo que a soma de cada linha, coluna ou diagonal é a mesma.

5 4 7

6 4 3

2 0 3

1 9 2 0

5 8 1

A figura mostra um quadrado mágico de ordem 5. A regra de formação é relativamente fácil de ser

verificada: Comece com o 1 no meio da primeira linha. À partir daí siga para cima e para à esquerda

diagonalmente (quando sair do quadrado suponha que os lados superior e inferior estão unidos e os lados

esquerdo e direito da mesma forma). Em cada quadrado que passar coloque o valor do quadrado anterior

acrescido de uma unidade. Quando atingir um quadrado já preenchido, desça um quadrado e o preencha

e continue seguindo a diagonal até ter colocado o valor n2.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você testou os algoritmos estão tds certinhos?? tem + alguma dúvida?

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

testei sim...

 

porem eu travei no exercicio 7!

 

 

nao achei a formula para me entregar o minimax.

 

ate agora ele esta assim:

 

algoritmo "exercício 7 cap 16 matriz"
// Função :
// Autor :
// Data : 29/4/2009
// Seção de Declarações 
var
   A:vetor [1..10,1..10] de inteiro	   // matriz
   lin, col: inteiro					  //linha coluna da matriz
   n:inteiro							  //variavel para definir os numeros dentro da matriz
   maior:inteiro
   posicao:inteiro
   linha:inteiro
   minimax:inteiro
inicio
   // Seção de Comandos
	  n<-0
   //escreva e leia os valores da matriz
   para lin de 1 ate 10 faca
	 para col de 1 ate 10 faca
	   //escreva ("entre com os valores da matriz: ")
	   //leia (M[lin,col])
	   n<-n+1
	   a[lin,col]<-n
	   escreva (a[lin,col])
	 fimpara
	  escreval ("")
   fimpara

   maior<-0

   //nome da pessoa mais alta
   para lin de 1 ate 10 faca
	 para col de 1 ate 10 faca
	   se a[lin,col]> maior entao
		 maior<- A[lin, col]
		 linha<-lin
	   fimse
	 fimpara
   fimpara

eu achei o maior valor e separei a linha,

 

entao agora eu preciso conseguir uma formula para mostrar o menor numero da linha.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ta quase rolando, a base é essa mesmo que eu fi agora, porem ele ta armazenando o numero errado ainda se o loop rodasso ao contratio essa formula daia certo!

 

algoritmo "exercício 7 cap 16 matriz"
// Função :
// Autor :
// Data : 29/4/2009
// Seção de Declarações 
var
   A:vetor [1..10,1..10] de inteiro	   // matriz
   lin, col: inteiro					  //linha coluna da matriz
   n:inteiro							  //variavel para definir os numeros dentro da matriz
   maior:inteiro						  //variavel para incrementar a formula do maior valor da matriz
   posicao, posicao1:inteiro			  //variaveis para mostrar a posição do minimax
   linha:inteiro						  //variavel para separar a linha do maior valor
   minimax:inteiro						//menor valor da linha do mair valor da matriz
inicio
   // Seção de Comandos
	  n<-0
   //escreva e leia os valores da matriz
   para lin de 1 ate 10 faca
	 para col de 1 ate 10 faca
	   //escreva ("entre com os valores da matriz: ")
	   //leia (M[lin,col])
	   n<-n+1
	   a[lin,col]<-n
	   escreva (a[lin,col])
	 fimpara
	  escreval ("")
   fimpara

   maior<-0

   //nome da pessoa mais alta
   para lin de 1 ate 10 faca
	 para col de 1 ate 10 faca
	   se a[lin,col]> maior entao
		 maior<- A[lin, col]
		 linha<-lin
	   fimse
	 fimpara
   fimpara

   minimax<-0
   para lin de linha ate 10 faca
	 para col de 1 ate 10 faca
	   Se (a[lin,col] < maior) entao
		 minimax <- a[lin, col]
		 posicao<-lin
		 posicao1<-col
	   fimse
	 fimpara
   fimpara
   
   
   
   
   
   
   escreval ("O valor de minimax da matriz A é", minimax)
   escreval ("e a sua posição é: linha", posicao)
   escreval ("coluna:",  posicao1)

Compartilhar este post


Link para o post
Compartilhar em outros sites

bemmmmmmm...

 

 

demorei mas consegui!

 

 

o exercício 7 ficou assim:

 

 

 

algoritmo "exercício 7 cap 16 matriz"
// Função :
// Autor :Raphael T. Reis
// Data : 29/4/2009
// Seção de Declarações 
var
   A:vetor [1..10,1..10] de inteiro	   // matriz
   lin, col: inteiro					  //linha coluna da matriz
   n:inteiro							  //variavel para definir os numeros dentro da matriz
   maior:inteiro						  //variavel para incrementar a formula do maior valor da matriz
   posicao, posicao1:inteiro			  //variaveis para mostrar a posição do minimax
   linha:inteiro						  //variavel para separar a linha do maior valor
   minimax:inteiro						//menor valor da linha do mair valor da matriz
inicio
   // Seção de Comandos
	  n<-0
   //escreva e leia os valores da matriz
   para lin de 1 ate 10 faca
	 para col de 1 ate 10 faca
	   //escreva ("entre com os valores da matriz: ")
	   //leia (M[lin,col])
	   n<-n+1
	   a[lin,col]<-n
	   escreva (a[lin,col])
	 fimpara
	  escreval ("")
   fimpara

   maior<-0

   //nome da pessoa mais alta
   para lin de 1 ate 10 faca
	 para col de 1 ate 10 faca
	   se a[lin,col]> maior entao
		 maior<- A[lin, col]
		 linha<-lin
	   fimse
	 fimpara
   fimpara


   para lin de linha ate 10 faca
	 para col de 1 ate 10 faca
	   Se (a[lin,col] < maior) entao
		 maior <- a[lin, col]
		 posicao<-lin
		 posicao1<-col
	   fimse
	   minimax<- maior

	 fimpara
   fimpara
   
   
   
   
   
   
   escreval ("O valor de minimax da matriz A é", minimax)
   escreval ("e a sua posição é: linha", posicao)
   escreval ("coluna:",  posicao1)
fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

vamos tentar:

int linha_do_maior = 0; // guarda a linha do maior elemento da matriz
int coluna_do_maior = 0; // guarda a coluna do maior elemento da matriz
// a procura da linha que contem o maior elemento da matriz
para i de 1 até 10 faça
	para j de 1 até 10 faça
		se(matriz[i][j] > matriz[linha_do_maior][coluna_do_maior] ){
					linha_do_maior <- i;
					coluna_do_maior <- j;
		fim_se
fim_para				
// variável para guardar o minimax
int minimax <- matriz[linha_do_maior][0];
  
// encontrando o minimax
para j de 2 até 10 faça
	se(matriz[linha_do_maior][j] < minimax) então
				minimax <- matriz[linha_do_maior][j];
	fim_Se
fim_para

Escreva("O minimax da matriz e: "+minimax);

vi do site: http://www.alux.pro.br/eadcon/viewtopic.ph...648&start=0

 

veja c esta correto

Compartilhar este post


Link para o post
Compartilhar em outros sites

travei aqui, algoritmo que ordene os elementos de cada linha de uma matriz M[10,10].

 

 

cheguei ate aqui:

 

algoritmo "exercício 8 cap 16 matriz"
// Função :
// Autor :
// Data : 29/4/2009
// Seção de Declarações 
var
   m:vetor [1..10,1..10] de inteiro
   lin, col: inteiro



inicio
   // Seção de Comandos

   //escreva e leia os valores da matriz

   escreva ("entre com os valores da matriz: ")
   para lin de 1 ate 10 faca
	 para col de 1 ate 10 faca
	   leia (M[lin,col])
	   escreval (M[lin,col])
	 fimpara

   fimpara

to procurando uma formula!

Compartilhar este post


Link para o post
Compartilhar em outros sites

pesquise por algum método de ordenação..

veja sobre quicksort, tem varios + eu gosto + dele.

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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