Program to using procedure to give copyright notice. program gcn; procedure cr; begin writeln('************************'); writeln('* (c) Copyright 1993 *'); writeln('* All rights reserved *'); writeln('************************'); end; begin writeln('Blah, blah, blah.'); cr; writeln('Blah, blah, blah!'); cr; readln; end. Output: >Blah, blah, blah. >************************ >* (c) Copyright 1993 * >* All rights reserved * >************************ >Blah, blah, blah! >************************ >* (c) Copyright 1993 * >* All rights reserved * >************************ Program to using procedure in loop to give copyright notices. program gcn2; var count: integer; procedure cr; begin writeln('************************'); writeln('* (c) Copyright 1993 *'); writeln('* All rights reserved *'); writeln('************************'); end; begin writeln('How many?>'); readln(count); while count > 0 do begin cr; count := count - 1; end; readln; end. Sample output: >How many? <3 >************************ >* (c) Copyright 1993 * >* All rights reserved * >************************ >************************ >* (c) Copyright 1993 * >* All rights reserved * >************************ >************************ >* (c) Copyright 1993 * >* All rights reserved * >************************ Program to using procedure with string paramter to give copyright notice. Output: program gcn3; var who: string; procedure cr(var author: string); begin writeln('**********************'); writeln(' (c) Copyright 1993 '); writeln(' ', author); writeln(' All rights reserved '); writeln('**********************'); end; begin who := 'A. B. Sea'; writeln('Blah, blah, blah.'); cr(who); who := 'C. B. Ay'; writeln('Blah, blah, blah!'); cr(who); readln; end. Output: >Blah, blah, blah. >********************** > (c) Copyright 1993 > A. B. Sea > All rights reserved >************************ >Blah, blah, blah! >********************** > (c) Copyright 1993 > C. B. Ay > All rights reserved >********************** Program to using procedure with integer paramter to give multiple copyright notices. program gcn4; var count: integer; procedure cr(var howmany: integer); var i: integer; begin i := 0; while i < howmany do begin writeln('************************'); writeln('* (c) Copyright 1993 *'); writeln('* All rights reserved *'); writeln('************************'); i := i + 1; end; end; begin writeln('How many?>'); readln(count); cr(count); readln; end. Sample output: >How many? <2 >************************ >* (c) Copyright 1993 * >* All rights reserved * >************************ >************************ >* (c) Copyright 1993 * >* All rights reserved * >************************ Program with two procedures to produce pretty pattenrs. program diamond; var m: integer; procedure dia(var n:integer); var i: integer; spa, ast: string; begin spa := ' '; ast := '*********************************'; i := 0; while i < n do begin writeln(copy(spa,1,10-i),copy(ast,1,2*i+ 1)); i := i + 1; end; end; procedure mond(var n:integer); var i: integer; spa, ast: string; begin spa := ' '; ast := '*********************************'; i := n - 1; while i > 0 do begin writeln(copy(spa,1,11-i),copy(ast,1,2*(i-1)+ 1)); i := i - 1; end; end; begin writeln('n?'); readln(m); while m > 0 do begin dia(m); mond(m); writeln(' '); m := m -1; end; readln; end. Sample output: >n? <3 > * > *** > ***** > *** > * > > * > *** > * > > *