CAP3 EJ1

mail@pastecode.io avatar
unknown
plain_text
2 years ago
1.8 kB
3
Indexable
Never
programa cap3ej1
procesos
  proceso juntarFlores(ES flores:numero)
  comenzar
    mientras(HayFlorEnLaEsquina)
      tomarFlor
      flores:=flores+1
  fin  
  proceso juntarPapeles(ES papeles:numero)
  comenzar
    mientras(HayPapelEnLaEsquina)
      tomarPapel
      papeles:=papeles+1
  fin
areas
  areaF:AreaPC(1,1,5,10)
  areaP:AreaPC(6,1,10,9)
  areaDescanso:AreaC(6,10,10,10)
robots
  robot tipoF
  variables
    flores,soy,avRand,caRand,av,ca:numero
  comenzar
    flores:=0
    av:=PosAv
    ca:=PosCa
    repetir 5
      Random(avRand,1,5)
      Random(caRand,1,10)
      BloquearEsquina(avRand,caRand)
      Pos(avRand,caRand)
      juntarFlores(flores)
      Pos(av,ca)
      LiberarEsquina(avRand,caRand)
    BloquearEsquina(10,10)
    Pos(10,10)
    repetir(flores)
      depositarFlor
    Pos(av,ca)
    LiberarEsquina(10,10)
  fin
  robot tipoP
  variables
    papeles,soy,avRand,caRand,av,ca:numero
  comenzar
    papeles:=0
    av:=PosAv
    ca:=PosCa
    repetir 3
      Random(avRand,6,10)
      Random(caRand,1,9)
      BloquearEsquina(avRand,caRand)
      Pos(avRand,caRand)
      juntarPapeles(papeles)
      Pos(av,ca)
      LiberarEsquina(avRand,caRand)
    BloquearEsquina(10,10)
    Pos(10,10)
    repetir (papeles)
      depositarPapel
    Pos(av,ca)
    LiberarEsquina(10,10)
  fin
variables
  robotf1:tipoF
  robotf2:tipoF
  robotp1:tipoP
  robotp2:tipoP
comenzar
  AsignarArea(robotf1,areaDescanso)
  AsignarArea(robotf2,areaDescanso)
  AsignarArea(robotp1,areaDescanso)
  AsignarArea(robotp2,areaDescanso)
  AsignarArea(robotf1,areaF)
  AsignarArea(robotf2,areaF)
  AsignarArea(robotp1,areaP)
  AsignarArea(robotp2,areaP)
  Iniciar(robotf1,6,10)
  Iniciar(robotf2,7,10)
  Iniciar(robotp1,8,10)
  Iniciar(robotp2,9,10)