Module 2 – Objective-C — build and test
Collections and repeated work
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 collection stores related values. The loop visits 1, 2, and 3, updating the total from 0 to 1, then 3, then 6. Record this trace rather than guessing. Identify the first and last valid positions in this language: Pascal can declare a 1-based array, while many other examples use zero-based containers. Add another value and update the bounds correctly. Explain what an empty collection should produce.
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];
NSArray *minutes = [NSArray arrayWithObjects:
[NSNumber numberWithInt:1], [NSNumber numberWithInt:2], [NSNumber numberWithInt:3], nil];
int total = 0;
for (NSNumber *value in minutes) total += [value intValue];
printf("%d\n", total);
[pool drain];
return 0;
}
Expected result: 6
Practice and evidence
Keep three notes: your prediction, the actual result, and why they match or differ. The completion check grades understanding; the practice task builds skill.
Complete this lesson
Answer every check correctly to earn your lesson certificate. Feedback helps you review and try again.
Sign in · Save your progress and earn a certificate for this lesson.