1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
#!/bin/sh
writeAbscise() {
i=0;
while [ $i -lt $2 ];
do
at $i $1 '-'
i=$(($i+1))
done
at $(($2-1)) $1 '>'
at $(($2-1)) $(($1+1)) 'x'
}
writeOrdinate() {
i=0;
while [ $i -lt $1 ];
do
at $2 $i '|'
i=$(($i+1))
done
at $2 0 '^'
at $(($2+2)) 0 'y'
}
writeCoord() {
writeOrdinate $1 $(($2/2))
writeAbscise $(($1/2)) $2
at $(($2/2)) $(($1/2)) '+'
at $(($2/2+2)) $(($1/2+1)) 0
}
writeFx() {
writeCoord $1 $2
i=0
while [ $i -lt $(($2-1)) ];
do
Y=`./1.pl $(($i-$2/2)) $(($2/2)) $(($1/2-2))`
Y=$(($1/2-$Y))
[ $Y -ge $1 ] && Y=$(($1-1))
[ $Y -lt 0 ] && Y=0;
at $i $Y '*'
i=$(($i+1))
done
at 0 $1
}
at() {
echo -e "\033[$2;$1H$3"
}
clear
at 4 2 'y=2sin(x)'
writeFx 23 80 |