Line 31: |
Line 31: |
| ===Week 10=== | | ===Week 10=== |
| | | |
| + | =="How to Play/Use" for end user== |
| + | |
| + | Jeremiah to add for his component - put xs on xo directions here, or in subsection. |
| + | |
| + | == Teachers guide == |
| + | |
| + | Jeremiah to add either additional information or a note to see the above section for directions. |
| + | |
| + | ==After Class Plans== |
| + | |
| + | Jeremiah to add information here. |
| | | |
| ==Documentation & Resources== | | ==Documentation & Resources== |
Line 83: |
Line 94: |
| | | |
| <pre> | | <pre> |
| + | |
| BEGIN{ | | BEGIN{ |
− | printf("%-11s%-8s%-11s%-8s%-11s%-8s%-11s%-8s%-11s\n", "Student", "Only +", "Contains", "Only -", | + | printf("%-11s%-8s%-11s%-8s%-11s%-8s%-11s%-8s%-11s%-11s\n", "Student", "Only +", "Contains +", "Only -", "Contains -", "Only *", "Contains *", "Only /", "Contains /", "Understands OoO?") |
− | "Contains -", "Only *", "Contains *", "Only /", "Contains /")
| |
| } | | } |
| | | |
Line 212: |
Line 223: |
| #How many problems an individual student faced: for classwide statistics we simply use the built-in var NR | | #How many problems an individual student faced: for classwide statistics we simply use the built-in var NR |
| numproblems[$2]++ | | numproblems[$2]++ |
| + | |
| + | #Determine if it is a compound operation if so increment by one, this requires 4 if's as we have to check if each of them exists in conjuntion with another. |
| + | #Keep track of total compounds and compounds correct. |
| + | #Else-if structure required because if stringed If were used each compound match would register twice. |
| + | |
| + | if ( match($3, /\//) && ( match($3, /[0-9]\-[0-9]/) || match($3, /\+/) || match($3, /\*/) ) ) |
| + | { |
| + | compound[$2]++ |
| + | |
| + | if ($4 == "1") #if correct |
| + | { |
| + | compound_correct[$2]++ |
| + | } |
| + | } |
| + | else if ( match($3, /[0-9]\-[0-9]/) && (match($3, /\//) || match($3, /\+/) || match($3, /\*/) ) ) |
| + | { |
| + | compound[$2]++ |
| + | |
| + | if ($4 == "1") #if correct |
| + | { |
| + | compound_correct[$2]++ |
| + | } |
| + | |
| + | } |
| + | else if ( match($3, /\+/) && ( match($3, /[0-9]\-[0-9]/) || match($3, /\//) || match($3, /\*/) ) ) |
| + | { |
| + | compound[$2]++ |
| + | |
| + | if ($4 == "1") #if correct |
| + | { |
| + | compound_correct[$2]++ |
| + | } |
| + | } |
| + | else if ( match($3, /\*/) && ( match($3, /\+/) || match($3, /[0-9]\-[0-9]/) || match($3, /\//) ) ) |
| + | { |
| + | compound[$2]++ |
| + | |
| + | if ($4 == "1") #if correct |
| + | { |
| + | compound_correct[$2]++ |
| + | } |
| + | |
| + | } |
| + | else # This allows for easy way to harness non compound statements, instead of going through a whole new slew of logic statements. |
| + | { |
| + | |
| + | non_compound[$2]++ |
| + | |
| + | if ($4 == "1") #if correct |
| + | { |
| + | non_compound_correct[$2]++ |
| + | } |
| + | |
| + | } |
| | | |
| | | |
| if ( $4 == "1" ) | | if ( $4 == "1" ) |
− | {correct[$2]++} | + | {totalcorrect[$2]++} |
| | | |
| }#end of AWK_MAIN | | }#end of AWK_MAIN |
| END{ | | END{ |
| | | |
− | #BEGIN printf header order: student, operation, success
| + | |
| | | |
| #loops through all of the elements in the array CLASS[] | | #loops through all of the elements in the array CLASS[] |
| #Here We will print out the students | | #Here We will print out the students |
| + | |
| for (student in CLASS) | | for (student in CLASS) |
| { | | { |
| + | |
| + | # A student doesnt understand order of operations if their is a greater than 20% difference in between compound |
| + | # operations and single operation instructions, but only if lower on the compound instruction side. |
| + | |
| + | if ( ( (non_compound_correct[student] / non_compound[student]) - (compound_correct[student] / compound[student]) > .2 ) || ( (non_compound_correct[student] / non_compound[student]) ) < .7) |
| + | { |
| + | understands= "no" |
| + | } |
| + | else |
| + | { |
| + | understands= "yes" |
| + | } |
| + | |
| + | |
| #need to address divide by 0 issue | | #need to address divide by 0 issue |
− | printf("%-11s%-8s%-11s%-8s%-11s%-8s%-11s%-8s%-11s\n", student, | + | printf("%-11s%-8s%-11s%-8s%-11s%-8s%-11s%-8s%-11s%-11s\n", student, |
− | int(o_addition_correct[student]*100/o_addition[student]), | + | int(o_addition_correct[student]*100/o_addition[student]), int(addition_correct[student]*100/addition[student]), |
− | int(addition_correct[student]*100/addition[student]), | + | int(o_subtraction_correct[student]*100/o_addition[student]), int(subtraction_correct[student]*100/subtraction[student]), |
− | int(o_subtraction_correct[student]*100/o_addition[student]), | |
− | int(subtraction_correct[student]*100/subtraction[student]), | |
| int(o_multiplication_correct[student]*100/o_multiplication[student]), | | int(o_multiplication_correct[student]*100/o_multiplication[student]), |
− | int(multiplication_correct[student]*100/multiplication[student]), | + | int(multiplication_correct[student]*100/multiplication[student]), int(o_division_correct[student]*100/o_division[student]), |
− | int(o_division_correct[student]*100/o_division[student]), | + | int(division_correct[student]*100/division[student]), understands) |
− | int(division_correct[student]*100/division[student])) | + | |
| + | |
| | | |
| } | | } |
Line 241: |
Line 320: |
| } #end of AWK_END | | } #end of AWK_END |
| | | |
| + | |
| | | |
| </pre> | | </pre> |
− |
| |
− | =="How to Play/Use" for end user==
| |
− |
| |
− | Jeremiah to add for his component - put xs on xo directions here, or in subsection.
| |
− |
| |
− | == Teachers guide ==
| |
− |
| |
− | Jeremiah to add either additional information or a note to see the above section for directions.
| |
− |
| |
− | ==After Class Plans==
| |
− |
| |
− | Jeremiah to add information here.
| |