(Subscript[p, 0])={2, -1, 3};
q = {1,4,0};
r = {0, -1, 5};
x = q -(Subscript[p, 0]);
y = r -(Subscript[p, 0]);
n = {5, 4, 5};
d = (Subscript[p, 0])+n;
Cross[x,y]
Show[
	ContourPlot3D[
		5x + 4y + 5z-21==0,
		{x, -8, 8},
		{y, -8, 8},
		{z, -8, 8},
		ContourStyle->Directive[Blue, Opacity[0.2]],
		Mesh-> False,
		AxesLabel->{x,y,z}
	],(*end: ContourPlot3D command*)
	Graphics3D[{PointSize[0.02], Point[{(Subscript[p, 0]),r, q}]}],
	Graphics3D[{Thickness[0.006], Arrow[{(Subscript[p, 0]),r}]}],
	Graphics3D[{Thickness[0.006], Arrow[{(Subscript[p, 0]),q}]}],
	Graphics3D[{Red, Thickness[0.006], Arrow[{(Subscript[p, 0]),d}]}]
]

Clear[x,y,z]
Show[
	ContourPlot3D[
		x + 2y + z ==5,
		{x, -10, 10},
		{y, -10, 10},
		{z, -10, 10},
		AxesLabel->{x,y,z},
		ContourStyle->Directive[Blue, Opacity[0.5]],
		Mesh-> False
	],
	ContourPlot3D[
		2x + y -z==7,
		{x, -10, 10},
		{y, -10, 10},
		{z, -10, 10},
		AxesLabel->{x,y,z},
		ContourStyle->Directive[Red, Opacity[0.5]],
		Mesh-> False
	],
	ParametricPlot3D[
		{3 -3t, 1 + 3t, -3t},
		{t, -3, 3},
		PlotStyle->Directive[Green, Thickness[0.008]]
	]
]

h = 0;
k = 0;
m =0;
a = 1;
b =6;
c =2;
xL = {-3,0,0};
xR = {3,0,0};
yL = {0, -4, 0};
yR = {0, 4, 0};
zL = {0, 0, -5};
zU = {0, 0, 5};

Show[
	ContourPlot3D[
	((((x-h))^2)/(a^2))+((((y-k))^2)/(b^2))+((((z-m))^2)/(c^2))-1==0,
		{x, -8, 8},
		{y, -8, 8},
		{z, -8, 8},
		ContourStyle->Directive[Blue, Opacity[0.2]],
		Mesh-> False,
		AxesOrigin->{0,0,0}
	],(*end: ContourPlot3D*)
	(*Graphics3D[{PointSize[0.02], Point[{xL, xR, yL, yR, zL, zU}]}],*)
	ParametricPlot3D[
		{a*Cos[t]+h, b*Sin[t]+k, 0},
		{t, 0, 2π},
		PlotStyle->Directive[Red, Thickness[0.008]]
	],(*end: ParametricPlot3D command*)
	ContourPlot3D[
		z ==0,
		{x, -8, 8},
		{y, -8, 8},
		{z, -8, 8},
		ContourStyle->Directive[Red, Opacity[0.2]],
		Mesh-> False
	],
	ParametricPlot3D[
		{a*Cos[t]+h, 0, c*Sin[t]+m},
		{t, 0, 2π},
		PlotStyle->Directive[Green, Thickness[0.008]]
	],(*end: ParametricPlot3D command*)
	ContourPlot3D[
		y ==0,
		{x, -8, 8},
		{y, -8, 8},
		{z, -8, 8},
		ContourStyle->Directive[Green, Opacity[0.2]],
		Mesh-> False
	],
	ParametricPlot3D[
		{0, a*Cos[t]+k, c*Sin[t]+m},
		{t, 0, 2π},
		PlotStyle->Directive[Yellow, Thickness[0.008]]
	],(*end: ParametricPlot3D command*)
	ContourPlot3D[
		x==0,
		{x, -8, 8},
		{y, -8, 8},
		{z, -8, 8},
		ContourStyle->Directive[Yellow, Opacity[0.2]],
		Mesh-> False
	]
]

a = 4;
b =2;
f[x_,y_]:=((x^2)/(a^2))+((y^2)/(b^2));
Show[
	Plot3D[
		f[x,y],
		{x, -10, 10},
		{y,-10,10},
		PlotRange->{-2, 10},
		ImageSize-> Large,
		ClippingStyle->None,
		PlotStyle->Directive[Red, Opacity[0.4]],
		Mesh-> False,
		AxesOrigin->{0,0,0}
	],(*end: Plot3D*)
	ParametricPlot3D[
		{8*Cos[t], 4*Sin[t], 4},
		{t, 0, 2π},
		PlotStyle->Directive[Blue]
	],
	ParametricPlot3D[
		{t,0, ((t^2)/(4^2))},
		{t, -10, 10},
		PlotStyle->Directive[Green]
	],
	ParametricPlot3D[
		{0,t, ((t^2)/(2^2))},
		{t, -10, 10},
		PlotStyle->Directive[Yellow]
	],
	ContourPlot3D[
		z==4,
		{x, -10, 10},
		{y, -10, 10},
		{z, -2, 10},
		ContourStyle-> Directive[Blue, Opacity[0.2]],
		Mesh-> False
	]
]