Variáveis compostas - Parte 1

Relembrando : variáveis simples

var

n1: inteiro n2, n3, n4: inteiro

Inicio

n1 ← 3 n2 ← 5 n3 ← 1 n4 ← 0

Variáveis compostas homogêneas

var

n1: inteiro n2, n3, n4: inteiro n: vetor[1..4] de inteiro

Inicio

n[1] ← 3 n[2] ← 5 n[3] ← 1 n[4] ← 0

n1 = 3
n2 = 5 n4 = 0
n3 = 1
n 3 5 1 0
1 2 3 4

Variáveis Compostas Homogêneas Unidimensionais

var

n: vetor[1..4] de inteiro i: inteiro

Inicio

para i ← 1 ate 4 faca leia( n [ i ] ) FimPara

n 3 5 1 0
1 2 3 4
algoritmo "TesteVetor"
var
   V: vetor[1..6] de inteiro
   C: inteiro
inicio
     Para C <- 1 ate 6 faca
        Escreva("Digite o ", C, "o. valor: ")
        Leia(v[c])
     FimPara
     
     Para C <- 1 ate 6 faca
           Escreva("{", V[C], "}")
     FimPara
fimalgoritmo

Prática 01: ler 7 valores e mostrar quantos são pares

algoritmo "ValoresPares"
var
     Val: vetor[1..7] de inteiro
     i, TotPar: inteiro
inicio
      para i <- 1 ate 7 faca
          Escreva("Digite o ", i, "o. valor: ")
          Leia(val[i])
          Se (val[i] % 2 = 0) entao
              TotPar <- TotPar + 1
          FimSe
     FimPara
     Escreval("Total de pares foi ", TotPar)
fimalgoritmo

Adicional: mostrar as posições dos valores

algoritmo "ValoresPares"
var
     Val: vetor[1..7] de inteiro
     i, TotPar: inteiro
inicio
      para i <- 1 ate 7 faca
          Escreva("Digite o ", i, "o. valor: ")
          Leia(val[i])
     FimPara
     Para i <- 1 ate 7 faca
         Se (val[i] % 2 = 0) entao
         totPar <- TotPar + 1
            Escreval("Valor PAR na posição ", i)
         FimSe
     FimPara
     Escreval("Total de pares foi ", TotPar)
fimalgoritmo

Prática 02: listagem da turma

algoritmo "Turma"
var
     nome: vetor[1..4] de Caractere
     n1: vetor[1..4] de Real
     n2: vetor[1..4] de Real
     m: vetor[1..4] de real
     i: inteiro
inicio
        Para i <- 1 ate 4 faca
            Escreval("ALUNO", i)
            Escreva("Nome: ")
            Leia(nome[i])
            Escreva("Primeira nota: ")
            Leia(n1[i])
            Escreva("Segunda nota: ")
            Leia(n2[i])
            m[i] <- (n1[i] + n2[i]) / 2
        FimPara

        LimpaTela
        Escreval("LISTAGEM DE ALUNOS")
        Escreval("--------------------------")
        Para i <- 1 ate 4 faca
              Escreval(nome[i]:15, m[i]:4:1)
        FimPara
fimalgoritmo

Adicional: quais são os alunos acima da média?

algoritmo "Turma"
var
     nome: vetor[1..4] de Caractere
     n1: vetor[1..4] de Real
     n2: vetor[1..4] de Real
     m: vetor[1..4] de real
     SM, MT: Real
     i, Tot: inteiro
inicio
        Para i <- 1 ate 4 faca
            Escreval("ALUNO", i)
            Escreva("Nome: ")
            Leia(nome[i])
            Escreva("Primeira nota: ")
            Leia(n1[i])
            Escreva("Segunda nota: ")
            Leia(n2[i])
            m[i] <- (n1[i] + n2[i]) / 2
            SM <- SM + m[i]
        FimPara
        MT <- SM / 4
        LimpaTela
        Escreval("LISTAGEM DE ALUNOS")
        Escreval("--------------------------")
        Para i <- 1 ate 4 faca
              Escreval(nome[i]:15, m[i]:4:1)
              Se (m[i] > MT) entao
                  Tot <- Tot + 1
              FimSe
        FimPara
        Escreval("Ao todo temos ", Tot, " alunos acima da media da turma que e ", MT:4:1)
fimalgoritmo

Prática 03: só importa quem começa com “c”

algoritmo "SoComC"
var
     nome: caractere
     soC: vetor[1..10] de Caractere
     c, tot: inteiro
inicio
        Para c <- 1 ate 10 faca
            Escreva("Digite seu nome: ")
            Leia(nome)
            Se (copia(maiusc(nome), 1, 1) = "C") entao
                  tot <- tot + 1
                  soC[tot] <- nome
            FimSe
        FimPara
        
        LimpaTela
        Escreval("LISTAGEM FINAL")
        Para c <- 1 ate tot faca
             Escreval(soC[c])
        FimPara
fimalgoritmo

Prática 04: ordenação do vetor

vet