Typica is a free program for professional coffee roasters. https://typica.us
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

search.mp 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. \verbatimtex
  2. %& latex
  3. \documentclass{article}
  4. \begin{document}
  5. etex
  6. input blockdraw;
  7. numeric u;
  8. u := 1cm;
  9. longblockrx := 2u;
  10. longblockry := 0.4u;
  11. beginfig(-1)
  12. picture Initialize;
  13. Initialize := longblock( btex {\tt Initialize} etex, (0, 0) );
  14. picture loop;
  15. loop := longblock( btex $n>0$? etex, (0, -2u) );
  16. path con;
  17. con := btconnect( Initialize, loop );
  18. picture success;
  19. success := termcircle( (5u, -1.8u) );
  20. con := hhconnect( rightpoint( loop, 3, 3 ), leftpoint( success, 1, 1), 0, 0.5 );
  21. picture lab;
  22. lab := conlabel( to_top, btex no etex, mspoint( con, 0.5, 0 ) );
  23. picture midpoint;
  24. midpoint := longblock( btex {\tt Get midpoint} etex, (0, -4u) );
  25. con := btconnect( loop, midpoint );
  26. lab := conlabel( to_lft, btex yes~ etex, mspoint( con, 0.5, 0 ) );
  27. picture compare;
  28. compare := longblock( btex {\tt Compare} etex, (0, -6u) );
  29. con := btconnect( midpoint, compare );
  30. picture lower;
  31. lower := longblock( btex {\tt Adjust lower bound} etex, (-5u, -4u) );
  32. con := lbconnect( compare, lower );
  33. lab := conlabel( to_top, btex $m < k$ etex, mspoint( con, 0.25, 0 ) );
  34. con := tlconnect( lower, loop );
  35. picture upper;
  36. upper := longblock( btex {\tt Adjust upper bound} etex, (5u, -4u) );
  37. con := rbconnect( compare, upper );
  38. lab := conlabel( to_top, btex $\displaystyle m \geq k$ etex, mspoint( con, 0.25, 0) );
  39. con := vhconnect( toppoint( upper, 1, 1 ), rightpoint( loop, 3, 1 ) );
  40. endfig;
  41. end;