terça-feira, 16 de julho de 2013

11 - Algoritmos - Visualg - Soma dos elementos de uma matriz 3x3

Depois de um longo tempo sem nada, venho aqui trazer mais uma aula, mais um algoritmo resolvido, como sempre costumo dizer "uma das possíveis soluções".

Exercício:

Ler uma matriz de 3x3 e dizer a quantidade de valores lidos, a quantidade números pares lidos e a quantidade de números impares lidos:


Abaixo uma possível solução




Código da aula:

algoritmo "semnome"

var
         matriz:vetor[0..2,0..2] de inteiro
         somaPar,somaImpar,somaTodos, linha, coluna:inteiro
       
inicio

somaPar <-0
somaImpar <-0
somaTodos  <-0

para linha de 0 ate 2 faca
  para coluna de 0 ate 2 faca
       leia(matriz[linha,coluna])
       somaTodos <- somaTodos + 1
          se (matriz[linha,coluna] % 2) = 0 entao
             somaPar <- somaPar + 1
          senao
             somaImpar <- somaImpar +1
          fimse
  fimpara
fimpara

escreval("escrevendo a matriz")
para linha de 0 ate 2 faca
  para coluna de 0 ate 2 faca
     escreval(matriz[linha,coluna])
  fimpara
fimpara

escreval("quantidade de numeros lidos ", somaTodos)
escreval("quantidade de numeros impares lidos ", somaImpar)
escreval("quantidade de numeros pares lidos ", somaPar)



fimalgoritmo

terça-feira, 2 de julho de 2013

10 - funçoes e procedimentos

Depois de um longo tempo sem nada, venho aqui trazer mais uma aula, mais um algoritmo resolvido, como sempre costumo dizer "uma das possíveis soluções".

Hoje resolvi fazer um vídeo sobre um tema não abordado aqui antes, procedimentos e funções

Nesse vídeo criamos um programa que le por um procedimento dois números e chama uma função para  a somatória dos mesmos.

Vídeo:


Código da aula:

algoritmo "10 -  funçoes e procedimentos"

var

funcao somarNumeros (num1, num2 : inteiro):inteiro
var  soma:inteiro
inicio
       soma <- (num1 + num2)
       retorne soma
fimfuncao

procedimento lerNumeros()
var  x,y:inteiro
inicio
leia(x)
escreval()
leia(y)
escreval()
//chamar a funcao que retorna somatoria
escreval(somarNumeros(x,y))

fimprocedimento

inicio
 //chamar procedimento que le os dois numeros
 lerNumeros()
fimalgoritmo