mirror of
				https://codeberg.org/ziglings/exercises.git
				synced 2025-11-04 04:35:38 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Zig
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Zig
		
	
	
	
	
	
//
 | 
						|
// What's really nice is that you can use a switch statement as an
 | 
						|
// expression to return a value.
 | 
						|
//
 | 
						|
//     const a = switch (x) {
 | 
						|
//         1 => 9,
 | 
						|
//         2 => 16,
 | 
						|
//         3 => 7,
 | 
						|
//         ...
 | 
						|
//     }
 | 
						|
//
 | 
						|
const std = @import("std");
 | 
						|
 | 
						|
pub fn main() void {
 | 
						|
    const lang_chars = [_]u8{ 26, 9, 7, 42 };
 | 
						|
 | 
						|
    for (lang_chars) |c| {
 | 
						|
        const real_char: u8 = switch (c) {
 | 
						|
            1 => 'A',
 | 
						|
            2 => 'B',
 | 
						|
            3 => 'C',
 | 
						|
            4 => 'D',
 | 
						|
            5 => 'E',
 | 
						|
            6 => 'F',
 | 
						|
            7 => 'G',
 | 
						|
            8 => 'H',
 | 
						|
            9 => 'I',
 | 
						|
            10 => 'J',
 | 
						|
            // ...
 | 
						|
            25 => 'Y',
 | 
						|
            26 => 'Z',
 | 
						|
            // As in the last exercise, please add the 'else' clause
 | 
						|
            // and this time, have it return an exclamation mark '!'.
 | 
						|
        };
 | 
						|
 | 
						|
        std.debug.print("{c}", .{real_char});
 | 
						|
        // Note: "{c}" forces print() to display the value as a character.
 | 
						|
        // Can you guess what happens if you remove the "c"? Try it!
 | 
						|
    }
 | 
						|
 | 
						|
    std.debug.print("\n", .{});
 | 
						|
}
 |