def block_if(deep_act, n_statements_min=10, n_statements_max=20, n_guard_statements_min=1, n_guard_statements_max=5, n_else_if_min=1, n_else_if_max=5, deep_max=5, case_values_min=-1000, case_values_max=1000): res = Utils.low_up_string("If ") declarations = "" n_guard_statements = randint( min(n_guard_statements_min, n_guard_statements_max), max(n_guard_statements_min, n_guard_statements_max)) log_statements = logical_statements( n_guard_statements) + Utils.low_up_string(" Then") + "\n" logic_variables = ExtractKeywords.extract_variables(log_statements) for i in logic_variables: declarations += Utils.generate_random_declarator( ) + assign_by_var_name(i) + "\n" res += log_statements res += block(deep_act + 1, n_statements_min, n_statements_max, n_guard_statements_min, n_guard_statements_max, n_else_if_min, n_else_if_max, deep_max, case_values_min, case_values_max) + "\n" else_type = randint(0, 1) # 0 -> Else if, 1 -> Else # if else_type == 0: n_else_if = randint(min(n_else_if_min, n_else_if_max), max(n_else_if_min, n_else_if_max)) for i in xrange(n_else_if): log_statements = logical_statements( randint(min(n_guard_statements_min, n_guard_statements_max), max(n_guard_statements_min, n_guard_statements_max))) logic_variables = ExtractKeywords.extract_variables(log_statements) for i in logic_variables: declarations += Utils.generate_random_declarator( ) + assign_by_var_name(i) + "\n" res += Utils.low_up_string( "ElseIf ") + log_statements + Utils.low_up_string( " Then\n") + block( deep_act + 1, n_statements_min, n_statements_max, n_guard_statements_min, n_guard_statements_max, n_else_if_min, n_else_if_max, deep_max, case_values_min, case_values_max) + "\n" res += Utils.low_up_string("Else ") + "\n" + block( deep_act + 1, n_statements_min, n_statements_max, n_guard_statements_min, n_guard_statements_max, n_else_if_min, n_else_if_max, deep_max, case_values_min, case_values_max) + "\n" res += Utils.low_up_string("EndIf") + "\n" return declarations + res
def block_if(deep_act,n_statements_min=10,n_statements_max=20,n_guard_statements_min=1,n_guard_statements_max=5,n_else_if_min=1,n_else_if_max=5,deep_max=5,case_values_min=-1000,case_values_max=1000): res = Utils.low_up_string("If ") declarations = "" n_guard_statements = randint(min(n_guard_statements_min,n_guard_statements_max),max(n_guard_statements_min,n_guard_statements_max)) log_statements = logical_statements(n_guard_statements) + Utils.low_up_string(" Then")+"\n" logic_variables = ExtractKeywords.extract_variables(log_statements) for i in logic_variables: declarations += Utils.generate_random_declarator()+assign_by_var_name(i)+"\n" res += log_statements res += block(deep_act+1,n_statements_min,n_statements_max,n_guard_statements_min,n_guard_statements_max,n_else_if_min,n_else_if_max,deep_max,case_values_min,case_values_max)+"\n" else_type = randint(0,1) # 0 -> Else if, 1 -> Else # if else_type==0: n_else_if = randint(min(n_else_if_min,n_else_if_max),max(n_else_if_min,n_else_if_max)) for i in xrange(n_else_if): log_statements = logical_statements(randint(min(n_guard_statements_min,n_guard_statements_max),max(n_guard_statements_min,n_guard_statements_max))) logic_variables = ExtractKeywords.extract_variables(log_statements) for i in logic_variables: declarations += Utils.generate_random_declarator()+assign_by_var_name(i)+"\n" res += Utils.low_up_string("ElseIf ")+log_statements+Utils.low_up_string(" Then\n")+block(deep_act+1,n_statements_min,n_statements_max,n_guard_statements_min,n_guard_statements_max,n_else_if_min,n_else_if_max,deep_max,case_values_min,case_values_max)+"\n" res += Utils.low_up_string("Else ")+"\n"+block(deep_act+1,n_statements_min,n_statements_max,n_guard_statements_min,n_guard_statements_max,n_else_if_min,n_else_if_max,deep_max,case_values_min,case_values_max)+"\n" res += Utils.low_up_string("EndIf")+"\n" return declarations+res
def ternary_operation(n_guard_statements_min=1,n_guard_statements_max=3): res = "" declarations = "" var = variable() n_guard_statements = randint(min(n_guard_statements_min,n_guard_statements_max), min(n_guard_statements_min,n_guard_statements_max)) log_statements = logical_statements(n_guard_statements) logic_variables = ExtractKeywords.extract_variables(log_statements) res += Utils.generate_random_declarator()+var+"\n" for i in logic_variables: declarations += Utils.generate_random_declarator()+assign_by_var_name(i)+"\n" res += var+" = (" + log_statements + ") ? " + value() + " : " + value() return declarations+res+"\n"
def ternary_operation(n_guard_statements_min=1, n_guard_statements_max=3): res = "" declarations = "" var = variable() n_guard_statements = randint( min(n_guard_statements_min, n_guard_statements_max), min(n_guard_statements_min, n_guard_statements_max)) log_statements = logical_statements(n_guard_statements) logic_variables = ExtractKeywords.extract_variables(log_statements) res += Utils.generate_random_declarator() + var + "\n" for i in logic_variables: declarations += Utils.generate_random_declarator( ) + assign_by_var_name(i) + "\n" res += var + " = (" + log_statements + ") ? " + value() + " : " + value() return declarations + res + "\n"
def block_while(deep_act, n_statements_min=10, n_statements_max=20, n_guard_statements_min=1, n_guard_statements_max=5, n_else_if_min=1, n_else_if_max=5, deep_max=5, case_values_min=-1000, case_values_max=1000): n_guard_statements = randint( min(n_guard_statements_min, n_guard_statements_max), max(n_guard_statements_min, n_guard_statements_max)) log_statements, declarations = logical_statements(n_guard_statements), "" logic_variables = ExtractKeywords.extract_variables(log_statements) relational_operators = ExtractKeywords.extract_relational_operators( log_statements) const_values = ExtractKeywords.extract_integer(log_statements) for i in logic_variables: declarations += Utils.generate_random_declarator( ) + assign_by_var_name(i) + "\n" res = declarations + Utils.low_up_string("\nWhile ") + log_statements return res # Acabar #