yego.me
💡 Stop wasting time. Read Youtube instead of watch. Download Chrome Extension

C lesson 4


3m read
·Nov 3, 2024

Processing might take a few minutes. Refresh later.

Hey guys, this is M kids and one today with our fourth and final C lesson. So in this C lesson, we're going to be making a gamish program, and basically what it is, is you have to guess a number between 1 and 1,000. When you guess it wrong, it tells you whether the number you guessed is too high or too low.

So, what are the new things that this program does? The first one is a random number generator. That's pretty cool in my opinion. The random number generator is how you generate pretty much anything randomly; you get a number and then you use if statements. So this is more using the random number generator.

Okay, then the second thing that's new with this, and that's even more important, is that I use four loops in this application. So, a loop is a piece of code that runs a certain amount of times, and you can use some logic with that, like make it run if a statement is true. Like if something happens, then don't do this again, stuff like that.

So, um, I'm going to run the program. The high low is what I like to call it, and then we'll type in the code. Now, in the code, I will warn you there are four warnings normally, but ignore them because they really don't cause any trouble whatsoever. So, I'm opening up the application.

So, it says, "I'm thinking of a number between 1 and 1,000. What is it?" You might ask. "Guess it and win!" So, I'll take my first guess. My guess will be 500. Too low! So then I'll guess 750. Too low! 850. Too low! 950. Too high!

Okay, so obviously it's taking me a little while, so I'll type cheat. So, cheat is my cheat code, so the answer is 912. So it says, "912 is the number guessed in 10 attempts." So the source code fills up about three-fourths of a page; it's not that hard.

So first of all, open up Xcode, create a new project, command line utility standard tool, call it high. So, now on main.c right here at the beginning, after include <studio.h>, we're going to do an include <string.h> and another include <math.h>. I'm not actually sure if we have to include the <math.h>, but it's cool to include anyway.

So, right here where it says "Hello World," just say "Guess the number." Okay, so now we're going to, um, generate a random number. So first, um, let me explain random number generators. You seed them, which gives them a value to base their random number off of. So we're going to be seeding it with the time, the exact amount of seconds since 1970, January 1st, midnight.

So, um, the way to get the time and to seed a random number generator, you do srandom(left parenthesis) then the number you're going to seed it with. I'll do time(left parenthesis) null in all caps right parenthesis another right parenthesis semicolon.

Next, we're going to actually get the random number, so I'm going to make a new integer in rand, and then I'll do equals random(left parenthesis) right parenthesis space percent space 1,000. Then I'll do rand equals rand + 1. Okay, so now we'll have a random number that's between 1 and 1,000.

So, let me explain what this percent thing is. Percent means make this a number, a value between 1 and 1,000. So it takes it and it shrinks it down to a smaller number, but that will actually not make it between 1 and 1,000; it'll make it be between 0 and 900. So that's why we're adding one to it.

So, now right under this, we're going to make two integers, int guess and int guesses. So now I'm going to make guesses equal zero. Okay, so now this is where we're going to do that loop that keeps on looping over and asking us to enter a new number.

So, I'll say for because that's the type of loop, a for loop space left parenthesis guess equals minus one guess bang equals rand. That means doesn't equal; the exclamation point equals means it doesn't equal guess plus plus right parenthesis.

So, the first thing before the semicolon here runs the first time it gets to this line. This loop, the second thing checks if it's true. If it is true, then it does it, or if it is true, then it stops. So it does it while guess doesn't equal random, so it'll keep on doing it as long as this statement is true.

After the second semicolon, the third statement in here is something that happens every time. So we're adding one to the integer guesses. So th...

More Articles

View All
What Does Colonizing Mars Look Like? | MARS
What will life be like in a early Mars colony? ROGER LAUNIUS: Let’s take some stages in terms of how we might do things on Mars. There is exploration, somebody going out and coming back. The next stage would be some sort of research station. We will most…
Fractions in context
In this video, we’re going to think about how fractions can be used to represent things in the real world. So, here we’re told that on the sharks dive team, there are three divers. In third grade, there are eight total divers on the team. What fraction of…
The Best Investing Advice of 2022
What’s up you guys? It’s Graham here. So let’s just face it: investing advice can often be boring, bland, overcomplicated, overwhelming, and just straight-up confusing. And with that, it’s no wonder why so many people don’t even know where to start, where…
Albatrosses' Life-Long Bond Begins With Elaborate Courtship – Ep. 3 | Wildlife: Resurrection Island
You think that’s fighting? The biggest bird in the world would be quite straightforward. Turns out, no! Here he comes. [Music] That is the biggest bird on the planet. Each one of those wings is as wide as I am tall. The wandering albatross’s wingspan is o…
Example approximating limit graphically
The function H is defined for all real numbers, and they graph y is equal to H of x right over here; that’s what they’re showing us. They ask us what is a reasonable estimate for the limit as x approaches -7 of H of x, and they give us some choices for th…
Let’s chat a bit
Me okay, so got it. How can I scream? Okay, let me announce this on my Instagram so that more people can join. Okay, let me put this here so that you guys can see me. I hope the lighting works; I know it’s not the best right now. Ow! Okay, let me put this…