Rotinas - Parte 2

procedimento Soma(A, B: inteiro)
var
	S: inteiro
Inicio
	S <- A + B
	Escreval("A soma vale", S)
FimProcedimento
Inicio
	N1 <- 5
	N2 <- 4
	Soma(N1, N2)
FimAlgoritmo

Função

Funcao Soma(A, B: inteiro) : inteiro
var
	S: inteiro
Inicio
	S <- A + B
	Retorne S
FimFuncao
Inicio
	N1 <- 5
	N2 <- 4
	RES <- Soma(N1, N2)
	Escreval("A soma é ", RES)
FimAlgoritmo

Prática 01: somar dois valores

algoritmo "SomaFuncao"
var
   V1, V2, S: inteiro

Funcao soma(X, Y: inteiro) : inteiro
inicio
     Retorne X + Y

FimFuncao
inicio
  Escreva("Digite o primeiro valor: ")
  Leia(V1)
  Escreva("Digite o segundo valor: ")
  Leia(V2)
  S <- Soma(V1, V2)
  Escreval("A soma entre ", V1, " e ", V2, " e igual a ", S)
fimalgoritmo

Prática 02: verificador PAR/ÍMPAR

algoritmo "ParImpar"
var
    N: inteiro
    R: Caractere
Funcao ParOuImpar(V: inteiro) : inteiro
inicio
    Se (V % 2 = 0) entao
       Retorne "PAR"
    senao
       Retorne "IMPAR"
    FimSe
FimFuncao
inicio
      Escreva("Digite um numero: ")
    Leia(N)
    R <- ParOuImpar(N)
    Escreva("O numero ", N, " e um valor ", R)
fimalgoritmo

Prática 03: fatorial de um número

algoritmo "FatorialNumero"
var
    N, F: inteiro
Funcao Fatorial(V : inteiro) : inteiro
var
   C, R: inteiro
inicio
      R <- 1
      Para C <- 1 ate V faca
          R <- R * C
      FimPara
      Retorne R
FimFuncao
inicio
     Escreva("Digite um numero: ")
     Leia(N)
     F <- Fatorial(N)
     Escreval("O valor de ", N, "! e igual a ", F)
fimalgoritmo

Passagem de parâmetro

por valor e por referência

algoritmo "FibonacciProcedimento"
var
   I, T1, T2, T3: inteiro
Funcao ProximoFibonacci(var N1, N2: inteiro) : inteiro
var
   N3: inteiro
inicio
      N3 <- N1 + N2
      N1 <- N2
      N2 <- N3
      Retorne N3
FimFuncao
inicio
      T1 <- 0
      Escreval(T1)
      T2 <- 1
      Escreval(T2)
      Para I <- 3 ate 5 faca
           T3 <- ProximoFibonacci(T1, T2)
           Escreval(T3)
      FimPara
fimalgoritmo

Funções do VISUALG

Valores de caracteres

Compr(Site) 12

Copia(Site, 6, 2) Em

Maiusc(Site) CURSOEMVIDEO

Minusc(Site) cursoemvideo

Pos(”Video”, Site) 8

Asc(”C”) 67

Carac(67) C

Site ”CursoEmVideo”

Prática 05: analisador de nomes

algoritmo "FuncoesVisualg"
var
    N: caractere
    C: inteiro
inicio
     Escreva("Digite seu nome: ")
     Leia(N)
     Escreval("Total de letras do seu nome: ", Compr(N))
     Escreval("Seu nome em maiusculas: ", Maiusc(N))
     Escreval("Seu nome em minusculas: ", Minusc(N))
     Escreval("A primeira letra do seu nome é: ", copi(N, 1, 2))
     Escreval("A ultima letra do seu nome: é: ", copi(Maiusc(N), compr(N), 1))
     Escreval("Seu nome tem a letra A na posição ", pos("A", Maiusc(N)))
     Escreval("O código da letra A e ", Asc("A"))
     Escreval("A letra de código 65 é", Carac(65))
     
     Para C <- Compr(N) ate 1 passo - 1 faca
          Escreva(Copia(Maiusc(N), C, 1))
     FimPara
fimalgoritmo