domingo, 14 de agosto de 2011
Aula 26 - 11/068/11
Foram corrigidos os exercicios da aula 24, a correçao desses exercicios foi mais dinamica, alguns alunos sorteados tiveram que apresentar os exercicios, e explicar diante da turma sua soluçao, assim mostrando sua forma de intender e resolver o problema, as veses uma forma mais facil as veses de uma forma mais complexa.
Aula 24 - 04/08/11
1) Leia um conjunto com n números e informe se existe algum elemento repetido
no conjunto.
algoritmo "Exercicio_1_data_04-08-11"
var
repete: vetor [1..100] de real
cont: vetor [1..100] de real
conte,conti: real
a,b,n: inteiro
inicio
escreval ("Digite a quantidade de números que deseja digitar: ")
leia (n)
para a de 1 ate n faca
escreval ("Ordem: ",a,". Digite um número: ")
leia (repete[a])
fimpara
para a de 1 ate n faca
conte <- 0
para b de a+1 ate n faca
se (repete[a] = repete[b]) entao
conte <- conte + 1
cont[a] <- conte
fimse
fimpara
fimpara
para a de 1 ate n faca
se (cont[a] = 0) e (conti = 0) entao
escreval ("O número: ",repete[a]," Nao repete.")
fimse
se (repete[a] <> repete[a+1]) entao
conti <- 0
fimse
se (cont[a] >= 1) e (conti = 0)entao
escreval ("O número: ",repete[a],". Repetiu : ",cont[a]," veses.")
conti <- conti + 1
fimse
fimpara
2) Leia uma matriz quadrada de ordem 10 e calcule a sua transposta. Imprima as
duas matrizes.
algoritmo "Exercicio 2"
var
matriz,matriz1: vetor[1..3,1..3] de real
linha,coluna:inteiro
inicio
para linha de 1 ate 3 faca
para coluna de 1 ate 3 faca
escreval ("Linha: ",linha,". Coluna: ",coluna,". Numero: ")
leia (matriz[linha,coluna])
fimpara
fimpara
para linha de 1 ate 3 faca
para coluna de 1 ate 3 faca
matriz1[linha,coluna] <- matriz[coluna,linha]
fimpara
fimpara
escreval (" ")
para linha de 1 ate 3 faca
para coluna de 1 ate 3 faca
escreval ("Linha: ",linha,". Coluna: ",coluna,". Numero: ",matriz[linha,coluna])
fimpara
fimpara
escreval (" ")
escreval ("******** Matriz transposta ************")
para linha de 1 ate 3 faca
para coluna de 1 ate 3 faca
escreval ("Linha: ",linha,". Coluna: ",coluna,". Numero: ",matriz1[linha,coluna])
fimpara
fimpara
escreval ("******** Matriz transposta ************")
fimalgoritmo
3) Ler uma matriz 6 x 6 e atribuir o valor 0 para os valores negativos
encontrados fora das diagonais principal e secundaria
algoritmo "Exercicio 3"
var
matriz : vetor [1..10,1..10] de real
a,b,c:inteiro
inicio
para a de 1 ate 10 faca
para b de 1 ate 10 faca
escreval ("Linha: ",a,". Coluna: ",b,". Número: ")
leia (matriz[a,b])
fimpara
fimpara
para a de 1 ate 10 faca
c <- 4
para b de 1 ate 10 faca
c <- c - 1
se (matriz[a,b] < 0) e ((matriz[a,b] = matriz[a,a]) ou (matriz[a,b] = matriz[c,b])) entao
matriz[a,b] <- 0
fimse
escreval ("Linha: ",a,". Coluna: ",b,". Número: ",matriz[a,b])
fimpara
fimpara
fimalgoritmo
4) Leia matriz A de 8x8, depois preencha uma matriz B de mesma ordem,
trocando as linhas da matriz A pelas colunas da matriz B.
Exemplo:
1ª linha da matriz A, será a 1ª coluna da matriz B
2ª linha da matriz A, será a 2ª coluna da matriz B
e assim por diante. Escreva a matriz resultante.
algoritmo "Exercicio 4"
var
matrizA,matrizB: vetor [1..3,1..3] de real
a,b:inteiro
inicio
para a de 1 ate 3 faca
para b de 1 ate 3 faca
escreval ("Matriz A, Linha: ",a,". Coluna: ",b,". Número: ")
leia (matrizA[a,b])
fimpara
fimpara
para a de 1 ate 3 faca
para b de 1 ate 3 faca
matrizB[a,b] <- matrizA[b,a]
fimpara
fimpara
para a de 1 ate 3 faca
para b de 1 ate 3 faca
escreval ("Matriz B, Linha: ",a,". Coluna: ",b,". Número: ",matrizB[a,b])
fimpara
fimpara
fimalgoritmo
Sem muita dificuldade nesses exercicios, dificil lembrar o que era matriz transposta mais com o tempo vamo relembrando.
Aula 23 - 08/07/11
6- Crie um programa que preencha uma primeira matriz de ordem 4x5 e uma segunda matriz 5x2. O programa deverá, também, calcular e mostrar a matriz resultante do produto matricial das duas matrizes anteriores, armazenando-o em uma terceira matriz de ordem 4x2.
algoritmo "Exercicio 6"
var
matriz1 : vetor [1..4,1..5] de real
matriz2 : vetor [1..5,1..2] de real
matriz3 : vetor [1..4,1..2] de real
a,b,c:inteiro
inicio
para a de 1 ate 4 faca
para b de 1 ate 5 faca
escreval ("Primeira matrix 4x5, Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (matriz1[a,b])
fimpara
fimpara
para a de 1 ate 5 faca
para b de 1 ate 2 faca
escreval ("Segunda matrix 5x2, Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (matriz2[a,b])
fimpara
fimpara
para a de 1 ate 4 faca
para b de 1 ate 2 faca
para c de 1 ate 5 faca
matriz3[a,b] <- matriz3[a,b]+( matriz1[a,c]* matriz2[c,b] )
fimpara
fimpara
fimpara
para a de 1 ate 4 faca
para b de 1 ate 2 faca
escreval ("Linha: ",a,". Coluna: ",b,". Total: ",matriz3[a,b])
fimpara
fimpara
fimalgoritmo
7- Um elemento Aij de uma matriz é dito ponto de sela da matriz A se, e somente se , Aij for ao mesmo tempo o menor elemento da linha i e o maior elemento da coluna j. Faça um programa que carregue uma matriz de ordem 5x7, verefique se a matriz possui ponto de sela e , se possuir, mostre seu valor e sua localizaçao.
algoritmo "Exercicio 7"
var
matrizA : vetor [1..5,1..7] de real
a,b:inteiro
menor: vetor [1..5] de real
maior: vetor [1..7] de real
linhamenor,colunamaior,cont:real
inicio
para a de 1 ate 5 faca
para b de 1 ate 7 faca
escreval ("Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (matrizA[a,b])
fimpara
fimpara
menor[1] <- matrizA[1,1]
menor[2] <- matrizA[2,1]
menor[3] <- matrizA[3,1]
menor[4] <- matrizA[4,1]
menor[5] <- matrizA[5,1]
maior[1] <- matrizA[1,1]
maior[2] <- matrizA[1,2]
maior[3] <- matrizA[1,3]
maior[4] <- matrizA[1,4]
maior[5] <- matrizA[1,5]
maior[6] <- matrizA[1,6]
maior[7] <- matrizA[1,7]
linhamenor <- 0
colunamaior <- 0
para a de 1 ate 5 faca
para b de 1 ate 7 faca
se matrizA[a,b] < menor[a] entao
menor[a] <- matrizA[a,b]
linhamenor <- a
fimse
fimpara
fimpara
para a de 1 ate 7 faca
para b de 1 ate 5 faca
se matrizA[b,a] > maior[a] entao
maior[a] <- matrizA[b,a]
colunamaior <- a
fimse
fimpara
fimpara
cont = 0
para a de 1 ate 5 faca
para b de 1 ate 7 faca
se menor[a] = maior[b] entao
escreval ("Linha",a,". Coluna: ",b,". Numero: ",menor[a])
cont <- cont + 1
fimse
fimpara
fimpara
se cont = 0 entao
escreval ("Nos número digitados não possui ponto de sela.")
fimse
fimalgoritmo
8-Elabore um programa que preencha uma matriz de 6x4 com números inteiros, cacule e mostre quantos elementos dessa matriz são maiores que 30 e, em seguida, monte uma segunda matriz com os elementos diferentes de 30. No lugar do número 30 da segunda matriz, coloque o número zero.
algoritmo "Exercicio 8"
var
matriz1 : vetor [1..6,1..4] de inteiro
a,b,cont:inteiro
inicio
para a de 1 ate 6 faca
para b de 1 ate 4 faca
escreval ("Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (matriz1[a,b])
fimpara
fimpara
cont <- 0
para a de 1 ate 6 faca
para b de 1 ate 4 faca
se (matriz1[a,b] > 30 ) entao
cont <- cont + 1
escreval("Maior que 30: ",matriz1[a,b])
fimse
se (matriz1[a,b] = 30) entao
matriz1[a,b] <- 0
fimse
se (matriz1[a,b] <> 30) entao
escreval ("Linha: ",a,". Coluna: ",b,". Numero: ",matriz1[a,b])
fimse
fimpara
fimpara
escreval (cont," numeros sao maiores que 30.")
9-Crie um programa que preencha uma matriz 15 x 5 com números inteiros, calcule e mostre quais elementos da matriz se repetem e quantas veses cada um se repete.
algoritmo "Exercicio 9"
var
repete: vetor [1..15,1..5] de real
cont: vetor [1..15,1..5] de real
conte,conti: real
a,b,n,c,d: inteiro
inicio
para a de 1 ate 15 faca
para b de 1 ate 5 faca
escreval ("Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (repete[a,b])
fimpara
fimpara
para a de 1 ate 15 faca
para c de 1 ate 5 faca
conte <- 0
para b de a ate 15 faca
para d de c ate 5 faca
se (repete[a,c] = repete[b,d]) entao
conte <- conte + 1
cont[a,c] <- conte
fimse
fimpara
fimpara
fimpara
fimpara
para a de 1 ate 15 faca
para b de 1 ate 5 faca
se (cont[a,b] = 0) e (conti = 0) entao
escreval ("O número: ",repete[a,b]," Nao repete.")
fimse
se (a <= 14) e (b <= 4) entao
se (repete[a,b] <> repete[a,b+1]) entao
se (repete[a,b] <> repete[a+1,b]) entao
conti <- 0
fimse
fimse
fimse
se (cont[a,b] >= 1) e (conti = 0)entao
escreval ("O número: ",repete[a,b],". Repetiu : ",cont[a,b]," veses.")
conti <- conti + 1
fimse
fimpara
fimpara
fimalgoritmo
(Questao 9 nao esta 100% correta)
10-Elabore um programa que preencha uma matriz 10 x 10 com números inteiros, execute as trocas especificadas a seguir e mostre a matriz resultante:
- A linha 2 com a linha 8;
- A coluna 4 com a coluna 10;
- A diagonal principal com a diagonal secundária;
- A linha 5 com a coluna 10.
algoritmo "Exercicio 10"
var
matriz: vetor [1..10,1..10] de inteiro
a,b,c,troca:inteiro
inicio
para a de 1 ate 10 faca
para b de 1 ate 10 faca
escreval ("Linha: ",a,". Coluna: ",b,". Digite um número inteiro: ")
leia (matriz[a,b])
fimpara
fimpara
para a de 1 ate 10 faca
para b de 1 ate 10 faca
escreval ("Linha: ",a,". Coluna: ",b,". Número: ",matriz[a,b])
fimpara
fimpara
para a de 1 ate 10 faca
troca <- matriz[2,a]
matriz[2,a] <- matriz[8,a]
matriz[8,a] <- troca
fimpara
para a de 1 ate 10 faca
troca <- matriz[a,4]
matriz[a,4] <- matriz[a,10]
matriz[a,10] <- troca
fimpara
c <- 11
para a de 1 ate 10 faca
troca <- matriz[a,a]
c <- c - 1
matriz[a,a] <- matriz[c,a]
matriz[c,a] <- troca
fimpara
para a de 1 ate 10 faca
troca <- matriz[5,a]
matriz[5,a] <- matriz[a,10]
matriz[a,10] <- troca
fimpara
para a de 1 ate 10 faca
para b de 1 ate 10 faca
escreval ("Linha: ",a,". Coluna: ",b,". Número: ",matriz[a,b])
fimpara
fimpara
fimalgoritmo
Sem muita dificuldade, o mais dificil agora nao é fazer o algoritmo é intender o que realmente ele pede. Unico exercicio que tive mta dificuldade foi o exercicio 9, nao consegui terminalo corretamente.
algoritmo "Exercicio 6"
var
matriz1 : vetor [1..4,1..5] de real
matriz2 : vetor [1..5,1..2] de real
matriz3 : vetor [1..4,1..2] de real
a,b,c:inteiro
inicio
para a de 1 ate 4 faca
para b de 1 ate 5 faca
escreval ("Primeira matrix 4x5, Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (matriz1[a,b])
fimpara
fimpara
para a de 1 ate 5 faca
para b de 1 ate 2 faca
escreval ("Segunda matrix 5x2, Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (matriz2[a,b])
fimpara
fimpara
para a de 1 ate 4 faca
para b de 1 ate 2 faca
para c de 1 ate 5 faca
matriz3[a,b] <- matriz3[a,b]+( matriz1[a,c]* matriz2[c,b] )
fimpara
fimpara
fimpara
para a de 1 ate 4 faca
para b de 1 ate 2 faca
escreval ("Linha: ",a,". Coluna: ",b,". Total: ",matriz3[a,b])
fimpara
fimpara
fimalgoritmo
7- Um elemento Aij de uma matriz é dito ponto de sela da matriz A se, e somente se , Aij for ao mesmo tempo o menor elemento da linha i e o maior elemento da coluna j. Faça um programa que carregue uma matriz de ordem 5x7, verefique se a matriz possui ponto de sela e , se possuir, mostre seu valor e sua localizaçao.
algoritmo "Exercicio 7"
var
matrizA : vetor [1..5,1..7] de real
a,b:inteiro
menor: vetor [1..5] de real
maior: vetor [1..7] de real
linhamenor,colunamaior,cont:real
inicio
para a de 1 ate 5 faca
para b de 1 ate 7 faca
escreval ("Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (matrizA[a,b])
fimpara
fimpara
menor[1] <- matrizA[1,1]
menor[2] <- matrizA[2,1]
menor[3] <- matrizA[3,1]
menor[4] <- matrizA[4,1]
menor[5] <- matrizA[5,1]
maior[1] <- matrizA[1,1]
maior[2] <- matrizA[1,2]
maior[3] <- matrizA[1,3]
maior[4] <- matrizA[1,4]
maior[5] <- matrizA[1,5]
maior[6] <- matrizA[1,6]
maior[7] <- matrizA[1,7]
linhamenor <- 0
colunamaior <- 0
para a de 1 ate 5 faca
para b de 1 ate 7 faca
se matrizA[a,b] < menor[a] entao
menor[a] <- matrizA[a,b]
linhamenor <- a
fimse
fimpara
fimpara
para a de 1 ate 7 faca
para b de 1 ate 5 faca
se matrizA[b,a] > maior[a] entao
maior[a] <- matrizA[b,a]
colunamaior <- a
fimse
fimpara
fimpara
cont = 0
para a de 1 ate 5 faca
para b de 1 ate 7 faca
se menor[a] = maior[b] entao
escreval ("Linha",a,". Coluna: ",b,". Numero: ",menor[a])
cont <- cont + 1
fimse
fimpara
fimpara
se cont = 0 entao
escreval ("Nos número digitados não possui ponto de sela.")
fimse
fimalgoritmo
8-Elabore um programa que preencha uma matriz de 6x4 com números inteiros, cacule e mostre quantos elementos dessa matriz são maiores que 30 e, em seguida, monte uma segunda matriz com os elementos diferentes de 30. No lugar do número 30 da segunda matriz, coloque o número zero.
algoritmo "Exercicio 8"
var
matriz1 : vetor [1..6,1..4] de inteiro
a,b,cont:inteiro
inicio
para a de 1 ate 6 faca
para b de 1 ate 4 faca
escreval ("Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (matriz1[a,b])
fimpara
fimpara
cont <- 0
para a de 1 ate 6 faca
para b de 1 ate 4 faca
se (matriz1[a,b] > 30 ) entao
cont <- cont + 1
escreval("Maior que 30: ",matriz1[a,b])
fimse
se (matriz1[a,b] = 30) entao
matriz1[a,b] <- 0
fimse
se (matriz1[a,b] <> 30) entao
escreval ("Linha: ",a,". Coluna: ",b,". Numero: ",matriz1[a,b])
fimse
fimpara
fimpara
escreval (cont," numeros sao maiores que 30.")
9-Crie um programa que preencha uma matriz 15 x 5 com números inteiros, calcule e mostre quais elementos da matriz se repetem e quantas veses cada um se repete.
algoritmo "Exercicio 9"
var
repete: vetor [1..15,1..5] de real
cont: vetor [1..15,1..5] de real
conte,conti: real
a,b,n,c,d: inteiro
inicio
para a de 1 ate 15 faca
para b de 1 ate 5 faca
escreval ("Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (repete[a,b])
fimpara
fimpara
para a de 1 ate 15 faca
para c de 1 ate 5 faca
conte <- 0
para b de a ate 15 faca
para d de c ate 5 faca
se (repete[a,c] = repete[b,d]) entao
conte <- conte + 1
cont[a,c] <- conte
fimse
fimpara
fimpara
fimpara
fimpara
para a de 1 ate 15 faca
para b de 1 ate 5 faca
se (cont[a,b] = 0) e (conti = 0) entao
escreval ("O número: ",repete[a,b]," Nao repete.")
fimse
se (a <= 14) e (b <= 4) entao
se (repete[a,b] <> repete[a,b+1]) entao
se (repete[a,b] <> repete[a+1,b]) entao
conti <- 0
fimse
fimse
fimse
se (cont[a,b] >= 1) e (conti = 0)entao
escreval ("O número: ",repete[a,b],". Repetiu : ",cont[a,b]," veses.")
conti <- conti + 1
fimse
fimpara
fimpara
fimalgoritmo
(Questao 9 nao esta 100% correta)
10-Elabore um programa que preencha uma matriz 10 x 10 com números inteiros, execute as trocas especificadas a seguir e mostre a matriz resultante:
- A linha 2 com a linha 8;
- A coluna 4 com a coluna 10;
- A diagonal principal com a diagonal secundária;
- A linha 5 com a coluna 10.
algoritmo "Exercicio 10"
var
matriz: vetor [1..10,1..10] de inteiro
a,b,c,troca:inteiro
inicio
para a de 1 ate 10 faca
para b de 1 ate 10 faca
escreval ("Linha: ",a,". Coluna: ",b,". Digite um número inteiro: ")
leia (matriz[a,b])
fimpara
fimpara
para a de 1 ate 10 faca
para b de 1 ate 10 faca
escreval ("Linha: ",a,". Coluna: ",b,". Número: ",matriz[a,b])
fimpara
fimpara
para a de 1 ate 10 faca
troca <- matriz[2,a]
matriz[2,a] <- matriz[8,a]
matriz[8,a] <- troca
fimpara
para a de 1 ate 10 faca
troca <- matriz[a,4]
matriz[a,4] <- matriz[a,10]
matriz[a,10] <- troca
fimpara
c <- 11
para a de 1 ate 10 faca
troca <- matriz[a,a]
c <- c - 1
matriz[a,a] <- matriz[c,a]
matriz[c,a] <- troca
fimpara
para a de 1 ate 10 faca
troca <- matriz[5,a]
matriz[5,a] <- matriz[a,10]
matriz[a,10] <- troca
fimpara
para a de 1 ate 10 faca
para b de 1 ate 10 faca
escreval ("Linha: ",a,". Coluna: ",b,". Número: ",matriz[a,b])
fimpara
fimpara
fimalgoritmo
Sem muita dificuldade, o mais dificil agora nao é fazer o algoritmo é intender o que realmente ele pede. Unico exercicio que tive mta dificuldade foi o exercicio 9, nao consegui terminalo corretamente.
segunda-feira, 11 de julho de 2011
Aula 22 - 06/07/11
1- Faça um algoritmo que preencha uma matriz M (2x2), calcule e mostre a matriz R, resultante da multiplicação dos elementos de M pelo seu maior elemento.
algoritmo "Exercicio 1"
var
m,r : vetor [1..2,1..2] de real
maior:real
a,b,c,d,f,g:inteiro
inicio
para a de 1 ate 2 faca
para b de 1 ate 2 faca
escreval ("Linha",a,". Coluna",b,". Digite um número: ")
leia (m[a,b])
fimpara
fimpara
maior <- m[1,1]
para c de 1 ate 2 faca
para d de 1 ate 2 faca
se (maior < m[c,d]) entao
maior <- m[c,d]
fimse
fimpara
fimpara
escreval ("Maior número é",maior)
para f de 1 ate 2 faca
para g de 1 ate 2 faca
r[f,g] <- maior * m[f,g]
escreval ("Linha",f," coluna",g," Resultado : ",r[f,g])
fimpara
fimpara
fimalgoritmo
2 - Faça um programa que preencha:
" Um vetor com oito posições, contendo nomes de lojas;
" Outro vetor com quatro posições, contendo nomes de produtos;
" Uma matriz com os preços de todos os produtos em cada loja.
O programa deverá mostrar todas as relações (nome do produto - nome da loja) em que o preço não ultrapasse R$ 120,00.
algoritmo "Exercicio 2"
var
nome_loja : vetor [1..8] de caracter
nome_produto :vetor [1..4] de caracter
preco :vetor [1..8,1..4] de real
a,b,c,d,f,g:inteiro
inicio
para a de 1 ate 8 faca
escreval ("Escreva o nome da loja ",a," .")
leia (nome_loja[a])
fimpara
para b de 1 ate 4 faca
escreval ("Digite o nome do ",b," produto.")
leia (nome_produto[b])
fimpara
para c de 1 ate 8 faca
para d de 1 ate 4 faca
escreval ("Nome da loja: ",nome_loja[c],". Nome do produto: ",nome_produto[d],". Digite o preço desse produto: ")
leia (preco[c,d])
fimpara
fimpara
para f de 1 ate 8 faca
para g de 1 ate 4 faca
se (preco[f,g] <= 120) entao
escreval ("Nome da loja: ",nome_loja[f],". Nome do produto: ",nome_produto[g],".Preço do produto é: ",preco[f,g])
fimse
fimpara
fimpara
fimalgoritmo
3 - Na teoria dos sistemas, define-se o elemento MINMAX de uma matriz como o maior elemento da linha em que se econtra o menor elemento da matriz.
Elabore um programa que carregue uma matriz 4x7 com números reais, calcule e mostre seu MINMAX e sua posição (linha e coluna).
algoritmo "Exercicio 3"
var
minmax : vetor[1..4,1..7] de real
colunamaior,colunamenor,linha,a,b:inteiro
menor,maior:real
inicio
para a de 1 ate 4 faca
para b de 1 ate 7 faca
escreval ("Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (minmax[a,b])
fimpara
fimpara
menor <- minmax[1,1]
maior <- minmax[1,1]
linha <- 1
colunamenor <- 1
colunamaior <- 1
para a de 1 ate 4 faca
para b de 1 ate 7 faca
se (menor > minmax[a,b]) entao
menor <- minmax[a,b]
linha <- a
colunamenor <- b
fimse
fimpara
fimpara
para b de 1 ate 7 faca
se (maior < minmax[linha,b]) entao
maior <- minmax[linha,b]
colunamaior <- b
fimse
fimpara
escreval ("Minmax é: ",maior,". Linha: ",linha,". Coluna : ",colunamaior)
fimalgoritmo
Um pouco de dificuldade no exercício 2, mas deu para tirar as duvidas.
algoritmo "Exercicio 1"
var
m,r : vetor [1..2,1..2] de real
maior:real
a,b,c,d,f,g:inteiro
inicio
para a de 1 ate 2 faca
para b de 1 ate 2 faca
escreval ("Linha",a,". Coluna",b,". Digite um número: ")
leia (m[a,b])
fimpara
fimpara
maior <- m[1,1]
para c de 1 ate 2 faca
para d de 1 ate 2 faca
se (maior < m[c,d]) entao
maior <- m[c,d]
fimse
fimpara
fimpara
escreval ("Maior número é",maior)
para f de 1 ate 2 faca
para g de 1 ate 2 faca
r[f,g] <- maior * m[f,g]
escreval ("Linha",f," coluna",g," Resultado : ",r[f,g])
fimpara
fimpara
fimalgoritmo
2 - Faça um programa que preencha:
" Um vetor com oito posições, contendo nomes de lojas;
" Outro vetor com quatro posições, contendo nomes de produtos;
" Uma matriz com os preços de todos os produtos em cada loja.
O programa deverá mostrar todas as relações (nome do produto - nome da loja) em que o preço não ultrapasse R$ 120,00.
algoritmo "Exercicio 2"
var
nome_loja : vetor [1..8] de caracter
nome_produto :vetor [1..4] de caracter
preco :vetor [1..8,1..4] de real
a,b,c,d,f,g:inteiro
inicio
para a de 1 ate 8 faca
escreval ("Escreva o nome da loja ",a," .")
leia (nome_loja[a])
fimpara
para b de 1 ate 4 faca
escreval ("Digite o nome do ",b," produto.")
leia (nome_produto[b])
fimpara
para c de 1 ate 8 faca
para d de 1 ate 4 faca
escreval ("Nome da loja: ",nome_loja[c],". Nome do produto: ",nome_produto[d],". Digite o preço desse produto: ")
leia (preco[c,d])
fimpara
fimpara
para f de 1 ate 8 faca
para g de 1 ate 4 faca
se (preco[f,g] <= 120) entao
escreval ("Nome da loja: ",nome_loja[f],". Nome do produto: ",nome_produto[g],".Preço do produto é: ",preco[f,g])
fimse
fimpara
fimpara
fimalgoritmo
3 - Na teoria dos sistemas, define-se o elemento MINMAX de uma matriz como o maior elemento da linha em que se econtra o menor elemento da matriz.
Elabore um programa que carregue uma matriz 4x7 com números reais, calcule e mostre seu MINMAX e sua posição (linha e coluna).
algoritmo "Exercicio 3"
var
minmax : vetor[1..4,1..7] de real
colunamaior,colunamenor,linha,a,b:inteiro
menor,maior:real
inicio
para a de 1 ate 4 faca
para b de 1 ate 7 faca
escreval ("Linha: ",a,". Coluna: ",b,". Digite um número: ")
leia (minmax[a,b])
fimpara
fimpara
menor <- minmax[1,1]
maior <- minmax[1,1]
linha <- 1
colunamenor <- 1
colunamaior <- 1
para a de 1 ate 4 faca
para b de 1 ate 7 faca
se (menor > minmax[a,b]) entao
menor <- minmax[a,b]
linha <- a
colunamenor <- b
fimse
fimpara
fimpara
para b de 1 ate 7 faca
se (maior < minmax[linha,b]) entao
maior <- minmax[linha,b]
colunamaior <- b
fimse
fimpara
escreval ("Minmax é: ",maior,". Linha: ",linha,". Coluna : ",colunamaior)
fimalgoritmo
Um pouco de dificuldade no exercício 2, mas deu para tirar as duvidas.
terça-feira, 5 de julho de 2011
Aula 21 - 04/07/11
1). Faça um programa que preencha dois valores de cinco elementos numéricos cada um e mostre o vetor resultante da multiplicaçao dos valores deste vetores.
algoritmo "Exercicio 1"
var
vet1 : vetor [1..5] de inteiro
vet2 : vetor [1..5] de inteiro
a,b,c:inteiro
multi:real
inicio
para a de 1 ate 5 faca
escreval ("Digite um número")
leia (vet1[a])
fimpara
escreval ("*******************************")
para b de 1 ate 5 faca
escreval ("Digite um número")
leia (vet2[b])
fimpara
para c de 1 ate 5 faca
multi <- vet1[c] * vet2[c]
escreval ("O resultado é: ",multi)
fimpara
fimalgoritmo
2) Uma pequena loja de artesanato possui apenas um vendedor e comercializa dez tipos de objetos. Ovendedor recebe, mensalmente, salário de R$ 400,00, acrescido de 5% do valor total de suas vendas. O valor unitário dos objetos deve ser informado e armazenado em uma matriz; a quantidade vendida de cada peça deve ficar na mesma matriz, em outra coluna.
Crie um programa que receba os preços e as quantidades vendidas e armazenando-os na matriz.
Depois determine e mostre
- um relatório contendo quantidade vendida , valor unitário e valor de cada objeto. Ao final deverá ser mostrado um valor geral das vendas e o valor da comissao que será paga ao vendedor
- o valor do objeto mais vendido e sua posiçao na matriz (mostre linha e coluna.Não se preocupe com empates).
algoritmo "Exercicio 2"
var
valor: vetor[1..10,1..2] de inteiro
valorotal,maior,maior1,comi,valorgeral,valortotal:real
a,b,c,d,f,linha,coluna:inteiro
inicio
para a de 1 ate 10 faca
escreval ("Digite o valor do produto",a," : ")
leia (valor[a,1])
escreval ("Digite a quantidade vendida do produto",a," :")
leia (valor[a,2])
limpatela
fimpara
maior <- valor[1,2]
maior1 <- valor[1,1]
valorgeral <- 0
comi <- 0
para c de 1 ate 10 faca
valortotal <- valor[c,1] * valor[c,2]
valorgeral <- valorgeral + valortotal
escreval ("Produto ",c)
escreval ("A quantidade vendia foi de: ",valor[c,2])
escreval ("O valor unitário do produto é: ",valor[c,1])
se (maior < valor[c,2]) entao
maior1 <- valor[c,1]
linha <- c
maior <- valor[c,2]
fimse
fimpara
comi <- valorgeral * 0.05
escreval ("*******************************************************************")
escreval ("O valor geral das vendas é: ",valorgeral)
escreval ("A comissao que será paga ao vendedor é de: ",comi," .")
escreval ("O valor do produto mais vendido é: ",maior1)
escreval ("Sua posição na matriz é linha: ",linha," coluna: 2.")
fimalgoritmo
3)Faça um programa que preencha uma matriz 10x3 com as notas de dez alunos em tres provas. O programa deverá mostrar um relatório com o número dos alunos(número da linha) e a média do aluno nas 3 prova. Ao final do relatório, deverá mostrar a média geral de todos os alunos.
algoritmo "Exercicio 3"
var
notas: vetor [1..10,1..3] de inteiro
a,b,c,d:inteiro
mediatotal,media:real
inicio
para a de 1 ate 10 faca
para b de 1 ate 3 faca
escreval ("Digite a nota da",b," prova do aluno",a)
leia(notas[a,b])
se (b = 3) entao
limpatela
fimse
fimpara
fimpara
mediatotal <- 0
para c de 1 ate 10 faca
media<- 0
para d de 1 ate 1 faca
media <- (notas[c,1] + notas[c,2] + notas[c,3]) / 3
mediatotal <- mediatotal + notas[c,1] + notas[c,2] + notas[c,3]
escreval ("Aluno: ",c," media das notas: ",media)
fimpara
fimpara
mediatotal <- mediatotal / 30
escreval ("A media total dos 10 alunos é: ",mediatotal)
fimalgoritmo
Nesta aula foi feito exercícios da prova do ano passado, primeiro e terceiro exercicio não tive dificuldades, no segunda ja foi um pouco complicado, mais deu pra tirar as duvidas com o professor, o que podemos fazer é praticar.
algoritmo "Exercicio 1"
var
vet1 : vetor [1..5] de inteiro
vet2 : vetor [1..5] de inteiro
a,b,c:inteiro
multi:real
inicio
para a de 1 ate 5 faca
escreval ("Digite um número")
leia (vet1[a])
fimpara
escreval ("*******************************")
para b de 1 ate 5 faca
escreval ("Digite um número")
leia (vet2[b])
fimpara
para c de 1 ate 5 faca
multi <- vet1[c] * vet2[c]
escreval ("O resultado é: ",multi)
fimpara
fimalgoritmo
2) Uma pequena loja de artesanato possui apenas um vendedor e comercializa dez tipos de objetos. Ovendedor recebe, mensalmente, salário de R$ 400,00, acrescido de 5% do valor total de suas vendas. O valor unitário dos objetos deve ser informado e armazenado em uma matriz; a quantidade vendida de cada peça deve ficar na mesma matriz, em outra coluna.
Crie um programa que receba os preços e as quantidades vendidas e armazenando-os na matriz.
Depois determine e mostre
- um relatório contendo quantidade vendida , valor unitário e valor de cada objeto. Ao final deverá ser mostrado um valor geral das vendas e o valor da comissao que será paga ao vendedor
- o valor do objeto mais vendido e sua posiçao na matriz (mostre linha e coluna.Não se preocupe com empates).
algoritmo "Exercicio 2"
var
valor: vetor[1..10,1..2] de inteiro
valorotal,maior,maior1,comi,valorgeral,valortotal:real
a,b,c,d,f,linha,coluna:inteiro
inicio
para a de 1 ate 10 faca
escreval ("Digite o valor do produto",a," : ")
leia (valor[a,1])
escreval ("Digite a quantidade vendida do produto",a," :")
leia (valor[a,2])
limpatela
fimpara
maior <- valor[1,2]
maior1 <- valor[1,1]
valorgeral <- 0
comi <- 0
para c de 1 ate 10 faca
valortotal <- valor[c,1] * valor[c,2]
valorgeral <- valorgeral + valortotal
escreval ("Produto ",c)
escreval ("A quantidade vendia foi de: ",valor[c,2])
escreval ("O valor unitário do produto é: ",valor[c,1])
se (maior < valor[c,2]) entao
maior1 <- valor[c,1]
linha <- c
maior <- valor[c,2]
fimse
fimpara
comi <- valorgeral * 0.05
escreval ("*******************************************************************")
escreval ("O valor geral das vendas é: ",valorgeral)
escreval ("A comissao que será paga ao vendedor é de: ",comi," .")
escreval ("O valor do produto mais vendido é: ",maior1)
escreval ("Sua posição na matriz é linha: ",linha," coluna: 2.")
fimalgoritmo
3)Faça um programa que preencha uma matriz 10x3 com as notas de dez alunos em tres provas. O programa deverá mostrar um relatório com o número dos alunos(número da linha) e a média do aluno nas 3 prova. Ao final do relatório, deverá mostrar a média geral de todos os alunos.
algoritmo "Exercicio 3"
var
notas: vetor [1..10,1..3] de inteiro
a,b,c,d:inteiro
mediatotal,media:real
inicio
para a de 1 ate 10 faca
para b de 1 ate 3 faca
escreval ("Digite a nota da",b," prova do aluno",a)
leia(notas[a,b])
se (b = 3) entao
limpatela
fimse
fimpara
fimpara
mediatotal <- 0
para c de 1 ate 10 faca
media<- 0
para d de 1 ate 1 faca
media <- (notas[c,1] + notas[c,2] + notas[c,3]) / 3
mediatotal <- mediatotal + notas[c,1] + notas[c,2] + notas[c,3]
escreval ("Aluno: ",c," media das notas: ",media)
fimpara
fimpara
mediatotal <- mediatotal / 30
escreval ("A media total dos 10 alunos é: ",mediatotal)
fimalgoritmo
Nesta aula foi feito exercícios da prova do ano passado, primeiro e terceiro exercicio não tive dificuldades, no segunda ja foi um pouco complicado, mais deu pra tirar as duvidas com o professor, o que podemos fazer é praticar.
quarta-feira, 29 de junho de 2011
Aula 20 - 29/06/11
Matriz
Slide explicativo sobre matriz.
Exercícios Matriz
1) Faça um programa que preencha uma matriz 10 x 3 com as notas de dez alunos em três provas. O programa deverá mostrar um relatório com o número dos alunos (numero da linha) e a prova em que cada aluno obteve menor nota. Ao final do relatório, deverá mostrar quantos alunos tiveram menor nota em cada uma das provas: na prova 1, na prova 2 e na prova 3.
Algoritmo "Matriz Exercício 1"
var
provas: vetor [1..10,1..3] de inteiro
a,b,c,prova1,prova2,prova3:inteiro
inicio
para a de 1 ate 10 faca
para b de 1 ate 3 faca
escreva ("da linha ",a," e coluna ",b, " - nota: ")
leia (provas[a,b])
fimpara
fimpara
prova1 <- 0
prova2 <- 0
prova3 <- 0
para c de 1 ate 10 faca
se (provas[c,1] < provas[c,2]) e (provas[c,1] < provas[c,3]) entao
escreval ("Aluno ",c," Menor nota é na prova 1 tendo a nota: ",provas[c,1])
prova1 <- prova1 + 1
senao
se (provas[c,2] < provas[c,1]) e (provas[c,2] < provas[c,3]) entao
escreval ("Aluno ",c," Menor nota é na prova 2 tendo a nota: ",provas[c,2])
prova2 <- prova2 + 1
senao
se (provas[c,3] < provas[c,1]) e (provas [c,3] < provas[c,2]) entao
escreval ("Aluno ",c," Menor nota é na prova 3 tendo a nota: ",provas[c,3])
prova3 <- prova3 + 1
fimse
fimse
fimse
fimpara
escreval ("Na primeira prova ",prova1," tiraram nota baixa.")
escreval ("Na segunda prova ",prova2," tiraram nota baixa.")
escreval ("Na terceira prova ",prova3," tiraram nota baixa.")
fimalgoritmo
2) Faça um programa que preencha uma matriz de 5 x 5 com números inteiros, calcule e mostre os números superiores a cinquenta e suas respectivas posições (linha e coluna). O programa deverá mostrar mensagem se não existir nenhum número nessa condição.
Algoritmo "Matriz Exercício 2"
var
num: vetor [1..5,1..5] de inteiro
a,b,c,d,cont:inteiro
inicio
cont <- 0
para a de 1 ate 5 faca
para b de 1 ate 5 faca
escreval ("Linha:",a," Coluna:",b," Escreva um número: ")
leia (num[a,b])
se (b = 5) entao
limpatela
fimse
fimpara
fimpara
para c de 1 ate 5 faca
para d de 1 ate 5 faca
se (num[c,d] > 50 ) entao
escreval ("Numero:",num[c,d]," Linha: ",c," Coluna: ",d)
cont <- cont + 1
fimse
fimpara
fimpara
se (cont = 0) entao
escreval ("Nao foi digitado número superior a 50")
fimse
fimalgoritmo
Bom um pouco mais complicado que vetor, o primeiro exercício foi meio difícil de fazer acho que n tinha intendido muito bem, o segundo já foi mais fácil.
Assinar:
Postagens (Atom)