Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

ECS 36B

Fall 2022

Homework #1 (8%)

Due: October 7, 11:59 pm (but, a different deadline for those who didn’t take ecs36b in C)

Background to learn about tar, Make and gcc/g++ compilers

[online resources for tar and make (and it is important for you to learn the concept of separate compilation]

https://www.interserver.net/tips/kb/use-tar-command-linux-examples/ 

https://www.cs.colby.edu/maxwell/courses/tutorials/maketutor/ 

https://www.cs.bu.edu/teaching/cpp/separate-compilation.html 

Text-based Wordle-C

Download the source code of wordle-C under –

https://github.com/AyrA/Wordle-C

1. (Makefile 2%, Debugging bonus 1%) In this homework assignment, you will write modify the Wordle-C program. For 2% of the grade, you will write a Makefile for the Wordle-C program and use the tar command to submit the whole thing. For a 1% extra bonus, you will use “gdb” (the GNU Debugger) to debug your program, and use “script” to record the debugging process.

https://www.cs.umd.edu/~srhuang/teaching/cmsc212/gdb-tutorial-handout.pdf

https://www-users.cs.umn.edu/~gini/1901-07s/files/script.html 

2. (Programs 6%) The current Wordle program will probe the user/player to enter a five-letters word to proceed. For this homework, you will modify the program such that your new program will follow the same game rules BUT create the responses until you win. So, instead of a Human versus Computer game, it will become a computer versus computer game (and you will develop an algorithm to win).

For submission via canvas, please follow the steps:

· Create a subdirectory ecs36b_f2022, and then cd ecs36b_f2022. (mkdir, cd)

· Create a subdirectory hw1, and then cd hw1.

· Put all your programs and Makefile under the hw1 directory.

· You should also provide a README file to explain how to run your program.

· cd ..

· tar zcvf ecs36b_f2022_hw1_submission_<your_student_id>.tar.gz hw1

· upload ecs36b_f2021_hw1_submission_<your_user_id>.tar.gz to Canvas