Archive November 2018

Jogo da Velha

algoritmo "JogoDaVelha"
// Função :
// Autor :
// Data : 22/10/2018
// Seção de Declarações 
var
 m : vetor [0..2,0..2] de caractere
 jogador: caractere
 i,j,l,c,x,y: inteiro
 
 funcao testaVencedor(p: caractere) : inteiro
 inicio
 
   se (m[0,0]= p) e ( m[0,1]= p) e  ( m[0,2]= p) entao
       retorne 9
   senao
        retorne 0
   fimse
 
 fimfuncao

procedimento mostrar()
inicio

  para i de 0 ate 2 passo 1 faca

        para j de 0 ate 2 passo 1 faca
              escreva(m[i,j])
        fimpara
        escreval()
    fimpara
fimprocedimento

procedimento jogar()
inicio
      escreval()
      escreval("Jogador: [ ",jogador, " ]")

      escreva("Digite a linha:")
      leia(l)
      escreva("Digite a coluna:")
      leia(c)

      enquanto m[l,c] <> " " faca
               escreval("Escolha outra posição:")
               escreva("Digite a linha:")
               leia(l)
               escreva("Digite a coluna:")
               leia(c)
      fimenquanto
      
      m[l,c]:= jogador
fimprocedimento

inicio

jogador:="X"
y:= 0 // não encontrou
// Seção de Comandos 

para i de 0 ate 2 passo 1 faca
   para j de 0 ate 2 passo 1 faca
     m[i,j]:= " "
   fimpara
fimpara

enquanto (y<5) FACA
  limpatela
  jogar()
  y := y + testaVencedor(jogador)
  mostrar()


  //mudar o jogador
  se jogador="X" entao
      jogador:="0"
  senao
       jogador:="X"
  fimse

y:=y+1
fimenquanto

fimalgoritmo

Função soma() & potencia()

algoritmo "função"
// Função :
// Autor :
// Data : 01/11/2018
// Seção de Declarações 
 // reservada   nome ( lista de variáveis : tipo): tipo de retorno
funcao soma(x, y :inteiro):inteiro
inicio
   retorne x+y

fimfuncao

funcao potencia(x, y:inteiro):inteiro
var  pot, i:inteiro
inicio
   pot:=1;
   para i de 1 ate y passo 1 faca
       pot:= pot*x
   fimpara
   retorne pot
fimfuncao
var
   op:caracter
   v1,v2: inteiro
 inicio
 
    // escreval(soma(2,3))
     escreval(potencia(2,5))
 
 
 
 
// Seção de Comandos 
  escreval( "Calculadora")
  escreva("Digite a Operação [*] [/] [+] [-] [^] [#]")
  leia(op)
  se op='#' entao
     escreva("Digite o Valor:")
     leia(valor)
     escreva(quadrado(valor))

  
        // escreva( " "soma(2,4)  )

fimalgoritmo

Ordenação de Vetor

algoritmo "semnome"
// Função :
// Autor :
// Data : 10/10/2018
// Seção de Declarações 
var
         notas: vetor [1..10] de inteiro
         i,j,aux: inteiro
inicio
// Seção de Comandos 
        // INSERIR VALORES NO VETOR
        escreval("Digite as notas de  ")
        para  i de 1 ate 4 passo 1 faca
              escreva("Digite a nota do aluno ",i," : ")
              leia(notas[i])
        fimpara
        
        //ORDENAÇÃO
        para i de 1 ate 3 passo 1 faca
            para j de i+1 ate 4 passo 1 faca
                 se (notas[i] < notas[j]) entao
                    aux:= notas[i]
                    notas[i]:=notas[j]
                    notas[j]:=aux
                 fimse
            
            
            fimpara
        fimpara
        

          // APRESENTAR VALORES NO VETOR
        para  i de 1 ate 4 passo 1 faca
               escreval("Valor na posição: ",i," Valor:",notas[i])

        fimpara

fimalgoritmo

Quantos Pares

algoritmo "Quantos são Pares"
// Função :
// Autor :
// Data : 11/10/2018
// Seção de Declarações 
var
 num: vetor[1..10] de inteiro
 i,par:inteiro
 
inicio

// Seção de Comandos
  par:=0
   // BLOCO COM LAÇO PARA INSERIR VALORES
  para  i de 1 ate 5 passo 1 faca
        escreva("Digite um Número: ")
        leia(num[i])
  fimpara

  // BLOCO COM LAÇO PARA APRESENTAR VALORES
  para  i de 1 ate 5 passo 1 faca
        se (num[i]%2=0) entao
           par:=par+1
        fimse
  fimpara

  escreva("Você digitou ",par, " Números Pares")
  

fimalgoritmo