Fdez.CA
Newbie level 2

This is a code created for a class based on some equations given by the teacher, but when we put them in Quartus, send us an error and we have no idea why.
The thrown error is:
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "B" on left-hand side of assignment must have a net type
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "C" on left-hand side of assignment must have a net type
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "D" on left-hand side of assignment must have a net type
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "E" on left-hand side of assignment must have a net type
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "F" on left-hand side of assignment must have a net type
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "G" on left-hand side of assignment must have a net type
Anyone know what's wrong? please
Code:
module get100(CLK,X,Y,A,B,C,D,E,F,G);
input X,Y,CLK;
output reg A,B,C,D,E,F,G;
always@ (posedge CLK)
assign A=((((~A&~B&~C&~D&~E&~F&~G)|(~A&~B&~C&~D&E&F&G))&~X&Y)|(((~A&B&~C&~D&E&~F&~G)|(~A&~B&C&~D&~E&~F&~G))&X&Y));
assign B=((((A&~B&~C&D&E&~F&~G)|(~A&~B&~C&~D&E&F&G))&~X&Y)|(((~A&~B&~C&D&E&F&G)|(~A&B&~C&~D&~E&~F&~G))&X&Y));
assign C=(((A&~B&~C&D&E&F&G)&~X&Y)|((~A&~B&~C&~D&E&F&~G)&X&Y));
assign D=((((~A&~B&~C&~D&~E&~F)|(~A&~B&~C&~D&E&F&~G)|(~A&~C&~D&~E&~F&~G))&~X&Y)|(((~A&~B&~C&~D&~E&~F)|(~A&B&~C&~D&E&~F&~G)|(~A&~B&C&~D&~E&F&~G))&X&Y));
assign E=((((~A&~B&~C&~D&~E&~F)|(~A&~B&C&~D&~E&F&~G)|(~A&~B&~C&~D&E&F&~G)|(A&~B&~C&D&E&~F&~G)|(~A&~C&~D&~E&~F&~G))&~X&Y)|(((~A&~B&~C&~D&~E&~F)|(~A&B&~C&~D&~F&~G)|(A&~B&~C&D&E&~F&~G)|(~A&~B&C&~D&~E&F&~G))&X&Y));
assign F=((((~A&~B&~C&~D&~E&~F&G)|(A&~B&~C&D&E&F&G)|(~A&~B&C&~D&~E&F&~G)|(~A&B&~C&~D&~E&~F&~G))&~X&Y)|(((~A&~B&~C&~D&~E&~F&~G)|(A&~B&~C&D&E&~F&~G)|(~A&~B&~C&~D&E&F&~G)|(~A&~B&C&~D&~E&F&~G))&X&Y));
assign G=((((~A&~B&~C&~D&~E&~F&G)|(~A&B&~C&~D&~E&~F&~G)|(~A&~B&~C&D&E&~F&~G))&~X&Y)|(((~A&~B&~C&~D&~E&~F&~G)|(~A&~B&C&~D&~E&F&~G)|(A&~B&~C&D&E&F&G))&X&Y));
endmodule
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "B" on left-hand side of assignment must have a net type
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "C" on left-hand side of assignment must have a net type
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "D" on left-hand side of assignment must have a net type
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "E" on left-hand side of assignment must have a net type
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "F" on left-hand side of assignment must have a net type
Error (10219): Verilog HDL Continuous Assignment error at get100.v(6): object "G" on left-hand side of assignment must have a net type
Anyone know what's wrong? please