`timescale 1ns/1ns

module odd_div (    
    input     wire rst ,
    input     wire clk_in,
    output    wire clk_out5
);
//*************code***********//
reg [2:0] cnt;
always @ (posedge clk_in or negedge rst) begin
    if(~rst) begin
        cnt <= 3'b0;
    end
    else begin
        if(cnt == 3'd4) begin
            cnt <= 3'd0;
        end 
        else begin
            cnt <= cnt + 3'd1;
        end 
    end 
end 

reg clk_out5_r;
always @ (posedge clk_in or negedge rst) begin
    if(~rst) begin
        clk_out5_r <= 3'b0;
    end
    else begin
        case( cnt ) 
            3'd0 : clk_out5_r <= 1'b1;
            3'd1 : clk_out5_r <= 1'b1;
            3'd2 : clk_out5_r <= 1'b0;
            3'd3 : clk_out5_r <= 1'b0;
            3'd4 : clk_out5_r <= 1'b0;
            default : clk_out5_r <= 1'b0;
        endcase
    end 
end 

assign clk_out5 = clk_out5_r;


//*************code***********//
endmodule