digraph {
size="8,8"
A [label=Start shape=oval]
B [label="Enter a number" shape=parallelogram]
C [label="num < 0?" shape=diamond]
D [label="Print \"Factorial is not defined
for negative numbers.\"" shape=parallelogram]
E [label="Call factorial(num)" shape=rectangle]
F [label="Print factorial result" shape=parallelogram]
G [label=Stop shape=oval]
H [label="factorial(n)
if n == 0 or n == 1: return 1
else: return n * factorial(n-1)" shape=rectangle]
A -> B
B -> C
C -> D [label=Yes]
D -> G
C -> E [label=No]
E -> H
H -> F
F -> G
}