A small quality check can combine measurements into a weighted score and classify the result.

Program

Play the program to choose a defect count and see the resulting score and label.

quality_score_case.f90
program quality_score_case_demo
    implicit none
    integer :: defect_count
    integer :: coverage_score
    integer :: score
    character(len=8) :: label

    defect_count = 
    coverage_score = 90
    score = coverage_score - defect_count * 12
    if (score >= 80) then
        label = 'ship'
    else
        label = 'review'
    end if
    print '(I0, 1X, A)', score, trim(label)
end program quality_score_case_demo
program quality_score_case_demo
    implicit none
    integer :: defect_count
    integer :: coverage_score
    integer :: score
    character(len=8) :: label

    defect_count = 
    coverage_score = 90
    score = coverage_score - defect_count * 12
    if (score >= 80) then
        label = 'ship'
    else
        label = 'review'
    end if
    print '(I0, 1X, A)', score, trim(label)
end program quality_score_case_demo
program quality_score_case_demo
    implicit none
    integer :: defect_count
    integer :: coverage_score
    integer :: score
    character(len=8) :: label

    defect_count = 
    coverage_score = 90
    score = coverage_score - defect_count * 12
    if (score >= 80) then
        label = 'ship'
    else
        label = 'review'
    end if
    print '(I0, 1X, A)', score, trim(label)
end program quality_score_case_demo
weighted score The score combines coverage with a defect penalty.
decision threshold `score >= 80` chooses the shipping label.
case study The example composes arithmetic, branching, and formatted output.