mirror of
https://codeberg.org/andyscott/ziglings.git
synced 2024-12-22 06:03:09 -05:00
Merge pull request 'fix: typos in exercises 094 and 098' (#87) from d-hain/ziglings-exercises:typo-fix-094-098 into main
Reviewed-on: https://codeberg.org/ziglings/exercises/pulls/87
This commit is contained in:
commit
e182d1f19d
3 changed files with 17 additions and 17 deletions
|
@ -39,7 +39,7 @@ fn isPangram(str: []const u8) bool {
|
||||||
// first we check if the string has at least 26 characters
|
// first we check if the string has at least 26 characters
|
||||||
if (str.len < 26) return false;
|
if (str.len < 26) return false;
|
||||||
|
|
||||||
// we uses a 32 bit variable of which we need 26 bits
|
// we use a 32 bit variable of which we need 26 bits
|
||||||
var bits: u32 = 0;
|
var bits: u32 = 0;
|
||||||
|
|
||||||
// loop about all characters in the string
|
// loop about all characters in the string
|
||||||
|
|
|
@ -50,20 +50,20 @@ pub fn main() !void {
|
||||||
// we try to open the file `zigling.txt`,
|
// we try to open the file `zigling.txt`,
|
||||||
// and propagate the error up if there are any errors
|
// and propagate the error up if there are any errors
|
||||||
const file: std.fs.File = try output_dir.createFile("zigling.txt", .{});
|
const file: std.fs.File = try output_dir.createFile("zigling.txt", .{});
|
||||||
// it is a good habit to close a file after you are done with
|
// it is a good habit to close a file after you are done with it
|
||||||
// so that other program can read it and prevent data corruption
|
// so that other programs can read it and prevent data corruption
|
||||||
// but here we are not yet done writing to the file
|
// but here we are not yet done writing to the file
|
||||||
// if only there are a keyword in zig that
|
// if only there were a keyword in zig that
|
||||||
// allow you "defer" code execute to the end of scope...
|
// allows you "defer" code execute to the end of scope...
|
||||||
file.close();
|
file.close();
|
||||||
|
|
||||||
// !you are not allow to switch this two lines to before file closing line!
|
// !you are not allowed to switch these two lines above the file closing line!
|
||||||
const byte_written = try file.write("It's zigling time!");
|
const byte_written = try file.write("It's zigling time!");
|
||||||
std.debug.print("Successfully wrote {d} bytes.\n", .{byte_written});
|
std.debug.print("Successfully wrote {d} bytes.\n", .{byte_written});
|
||||||
}
|
}
|
||||||
// to check if you actually write to the file, you can either,
|
// to check if you actually write to the file, you can either,
|
||||||
// 1. open the file on your text editor, or
|
// 1. open the file on your text editor, or
|
||||||
// 2. print the content of the file in the console with command
|
// 2. print the content of the file in the console with the following command
|
||||||
// >> cat ./output/zigling.txt
|
// >> cat ./output/zigling.txt
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
|
@ -89,4 +89,4 @@ pub fn main() !void {
|
||||||
// - go to documentation of the struct `std.fs.Dir` here
|
// - go to documentation of the struct `std.fs.Dir` here
|
||||||
// https://ziglang.org/documentation/master/std/#std.fs.Dir
|
// https://ziglang.org/documentation/master/std/#std.fs.Dir
|
||||||
// - can you find a function for opening a file? how about deleting a file?
|
// - can you find a function for opening a file? how about deleting a file?
|
||||||
// - what kind of option can you uses with those function?
|
// - what kind of options can you use with those functions?
|
||||||
|
|
|
@ -5,14 +5,14 @@
|
||||||
// with content `It's zigling time!`(18 byte total)
|
// with content `It's zigling time!`(18 byte total)
|
||||||
//
|
//
|
||||||
// Now there no point in writing to a file if we don't read from it am I right?
|
// Now there no point in writing to a file if we don't read from it am I right?
|
||||||
// let's wrote a program to read the content of the file that we just created.
|
// let's write a program to read the content of the file that we just created.
|
||||||
//
|
//
|
||||||
// I am assuming you've created the appropriate files for this to work.
|
// I am assuming that you've created the appropriate files for this to work.
|
||||||
//
|
//
|
||||||
// Alright, bud, lean in close here's the game plan.
|
// Alright, bud, lean in close here's the game plan.
|
||||||
// - First, we open the {project_root}/output/ directory
|
// - First, we open the {project_root}/output/ directory
|
||||||
// - Secondly, we open file `zigling.txt` in that directory
|
// - Secondly, we open file `zigling.txt` in that directory
|
||||||
// - then, we initalize an array of character with all letter 'A', and print it
|
// - then, we initalize an array of characters with all letter 'A', and print it
|
||||||
// - After that, we read the content of the file to the array
|
// - After that, we read the content of the file to the array
|
||||||
// - Finally, we print out the read content
|
// - Finally, we print out the read content
|
||||||
|
|
||||||
|
@ -31,22 +31,22 @@ pub fn main() !void {
|
||||||
defer file.close();
|
defer file.close();
|
||||||
|
|
||||||
// initalize an array of u8 with all letter 'A'.
|
// initalize an array of u8 with all letter 'A'.
|
||||||
// we need to pick a size of the array, 64 seems like a good number.
|
// we need to pick the size of the array, 64 seems like a good number.
|
||||||
// fix the initalization below
|
// fix the initalization below
|
||||||
var content = ['A']*64;
|
var content = ['A']*64;
|
||||||
// this should print out : `AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`
|
// this should print out : `AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`
|
||||||
std.debug.print("{s}\n", .{content});
|
std.debug.print("{s}\n", .{content});
|
||||||
|
|
||||||
// okay, seem like threat of violence is not the answer in this case
|
// okay, seems like a threat of violence is not the answer in this case
|
||||||
// can you go here to find a way to read the content ?
|
// can you go here to find a way to read the content ?
|
||||||
// https://ziglang.org/documentation/master/std/#std.fs.File
|
// https://ziglang.org/documentation/master/std/#std.fs.File
|
||||||
// hint: you might find two answer that are both vaild in this case
|
// hint: you might find two answers that are both vaild in this case
|
||||||
const byte_read = zig_read_the_file_or_i_will_fight_you(&content);
|
const bytes_read = zig_read_the_file_or_i_will_fight_you(&content);
|
||||||
|
|
||||||
// Woah, too screamy, I know you're excited for zigling time but tone it down a bit
|
// Woah, too screamy, I know you're excited for zigling time but tone it down a bit
|
||||||
// Can you print only what we read from the file ?
|
// Can you print only what we read from the file ?
|
||||||
std.debug.print("Successfully Read {d} byte: {s}\n", .{
|
std.debug.print("Successfully Read {d} bytes: {s}\n", .{
|
||||||
byte_read,
|
bytes_read,
|
||||||
content, // change this line only
|
content, // change this line only
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue