15-minute session: read for 3 minutes, trace for 3, experiment for 7, and complete the check for 2. Spend longer whenever you need.
A decision chooses which statements run. The policy here is “ready at 80 or higher.” Trace 85, 79, 80, and 81 before running each case. The comparison includes 80. A program that prints the right answer for 85 may still be wrong at the boundary. Add a separate check rejecting scores below 0 or above 100; rejection and needing practice mean different things.
Square brackets send a message to a receiver: [plan completed]. @interface declares methods and @implementation defines them. These GNUstep exercises use explicit memory management, not Apple ARC.
#import <Foundation/Foundation.h>
#include <stdio.h>
#include <assert.h>
int main(void) {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSInteger score = 85;
puts(score >= 80 ? "Ready" : "Practice");
[pool drain];
return 0;
}
Expected result: Ready
Keep three notes: your prediction, the actual result, and why they match or differ. The completion check grades understanding; the practice task builds skill.