Wednesday, December 15, 2010

Wednesday - Making Guitar Hero

If you were to take away the background then my game would look something like this.
  Today after I finished creating the program Mr.Arkin asked us to make, I decided to take the initiative and create a new game. This game is Guitar Hero! It's so cool it even looks like the real game, I love it! There are 10 levels and to finish each level one must get the taps needed, in order to proceed. It first starts off as only two taps are required, then the speed increase's and so does the amount of taps needed. The game is approximately 260 lines and is fully functional, with music and all needed colors! The only thing that is required of me to do now is to write down a set of instructions. Turing is quiet is and when I accomplish something like this it gives me the feeling that I am one step ahead of many of my peers. 

  Tomorrow I will show this to my classmates and ask for their opinions on my game. They all thought it was literally impossible to finish the whole game in one day, nonetheless I did it in less than one hour.  

Tuesday, December 14, 2010

Tuesday- Successful Mark!

Look at this image very closely. Is it moving???
  I could literally feel the butterflies in my stomach as I awaited to receive my paper! Mr.Arkin called me and I sprung off my chair immediately, hastily I sprinted towards the desk. I looked at my paper for a moment and hesitated, I thought I had gotten a bad mark, as I reviewed the paper I found out that, indeed I had done well. I had three mistakes, therefore making it a 21 out of 24. This means I As-ed the test! This is exactly want I had hoped for. This news diffidently made my day and better yet I have no other major assignments, until the Christmas break. We also started to learn about how to make shapes appear as if though they are moving. I am aware of how to do this therefore, it was a breeze trying to figure out how to make a program to make zigzag like patterns. 

Monday, December 13, 2010

Monday- Test EASY!

DONKEY!
  Today, as I had expected the test was held, I looked through the test and noticed that it was so easy!  I loved doing it, it made me feel superior. I was writing the test and for one of the questions it asked me to create a function to give back the area of one length and one width. As I was writing it I noticed that if I put length as a variable there will inevitably be an error, therefore I named the variable length1. After the test I talked about with my peers, I noticed that the majority of them did not notice that length is a built in procedure! I laughed, they punted at me and I laughed some more! That test made my day, nevertheless, I just hope I did well, if I don't it will ruin my day. The mistakes I make are usually so called "dumb mistakes" and that makes me feel miserable. This is mainly because, I know that I could have done better, however I did not allow myself to do so. I am aiming for a 90 in ICS for my first semester report card! 

Friday- Be Wary of the Test!

WHAC-A-MOLE is so pro I just had to make a game like it!
  Today Mr.Arkin told us to be ready for a test, supposedly to be given to us some time next week. I believe I know much of the things that will palpably be on the test, nonetheless, I will review all the material that I believe to be necessary. I was informed by my fellow classmates that the test will be only on Subprograms and Substrings. I love Turing and how easy and simplistic it is, yet it still manges to baffle me with its complexity.  I started to love Turing thanks to Mr.Arkin and how he lets us think for ourselves and encourages us to do things on our own.  For example, when I ask him a question, he tries to lead me towards the answer, instead of bluntly giving me the answer.


  Another factor that strengthened the interest I have for Turing was, the Turing animations, one can make a whole game with Turing alone. I managed to make various games, for example one of them the user uses the arrow keys to move a space craft up and down. The user must then shoot the meteors that are coming his/her way. Another one of my games are a replica of WHAC-A-MOLE, however instead of moles you are hitting stars, IN SPACE! Isn't that awesome? these can all be done with Turing and I was not aware of it until a few weeks ago! I have shown it to my fellow peers and they believe my games are extraordinary. I few were so flabbergasted that they thought I had copied the game from somewhere else.

Thursday, December 9, 2010

Thursday- Hard Work Helps!

It's what got him where he is today!
 
  Today was a day to catch up on the things that I had missed due to the swim meet yesterday, Turing is getting much easier for me and I love it! I love how so many things can be done with this one language. Today I also made a program which used only functions and procedures to get what the user wants. When I use functions are procedures it just makes life easier and my program much shorter, while at the same time much more effective. I thought functions and procedures would be confusing, nonetheless from what I had experienced today they are a "piece of cake". This is all due to Mr.Arkin's great teaching ability and how he get's to the point and try's to make our lives as easy as possible when it comes to programming. 
  
  In the beginning of the year I thought that all those notes we had done in class, simultaneously were for nothing and I would not use them. However, when it came to test time I found out that all the requirements Mr.Arkin requested us to do made my life much easier. For example, the dividers made finding my key topics easier, the notes helped me study for a shorter amount of time. However, that short amount of time proved much more useful to me than studying for hours and hours at a time. This is all due to organization and planning step by step what you are going to do in future periods. Now I am starting to understand why organization is so important and why in Middle school and Elementary school they stressed that point out so often. I think they were getting us ready for High school and were trying to make our lives much easier for future events. 

Wednesday, December 8, 2010

Wednesday- KILLED the Swim Meet

Go For Gold Every Time NO MATTER WHAT
  I was physicked out about the swim meet today and I thought due to my low age I was going to lose. This nonetheless, was not the case, instead I came first in all my events for the ninth grade and for the junior division I came first in every event other than the 50M butterfly. In the 50M butterfly I came second behind one other tenth grader, my coach said if I work on my open turn and timing I will definitely beat him next time. Today I also got to skip class because of the swim meet, therefore I am not aware of what was for homework. I will check the daily blog and ask my peers about it. I hope we have no homework and that Mr.Arkin did not teach anything new today. If he does I will be a step behind everyone else and I extremely dislike that! 

Tuesday, December 7, 2010

Tuesday- Functions are so COOL!

Learning is key
  Today Mr.Arkin taught us about a new type of declaration called function, a function in Turing declares a variable and stores information within it. It also gives certain requirements to the variable to run. For example,


function product (number : real, number2 : real) : real 
result number * number2 
end product


put product (1,2)
put product (3,4)

  The variables number and number2 are local variables, this means that they can be only used within the function, if I were to put, put number, there would inevitably be an error. The error will state 'number' has not been declared. I believe functions will help me complete my programs in less time and more efficiency than what they are now. Programming is quite difficult however, if one get's it then it will become fun. This is why I love fiddling around with Turing, it teach's me new things. For example, I learned how to make a game from fiddling around with Turing and Turing help. It astounds me when I think of how many different outputs are possible from this one language, which is believed to be a simple language!    

Monday, December 6, 2010

Monday- Swim Meet Success!

  I love good news, it makes my day, today for the swim meet I came second in the 100M free, first in the 100M fly and first in the Medealy relay! I have another swim meet on Wednesday and for that there will be a slight change. Instead of 100M fly I will be doing 50M fly because, the 100M fly is not available for some absurd reason. I am so tired and as I am typing I am looking forward to jumping on my bed and falling asleep. I believe nothing beats a good long rest after accomplishing something great! The ironic thing was that I thought I was going to lose all my events because there are many better swimmers than me. 

Friday- YES!

  I have had so much good news given to me today it overwhelms me thinking about it. First of all, for the swim meets taking hold on Monday and Wednesday, I am doing the 100M fly, the 100M free and the Medealy relay race. The overwhelming part about this is that the swim team is var city and I am in grade 9, nevertheless I am swimming so many events! Today is also the day I go to the YMCA to play basketball! Sports a side, today in computer science I showed everyone my new game! They said it was amazing and that made me feel so good, it made me want to make another game, a more advanced game. That is what I am working on now, it is called FIGHT at FLIGHT, it is incomplete and has many faults, however during the weekend I will paten it so it can be fully functional!

Thursday- This is Getting Old.....

helping one another will do great things in life
  Today once again Mr.Arkin was not here! I do not know the reason why, however I was informed through wikispaces and my peers. I have also heard that we will be having our test postponed to next week and that we will be having a substrings quiz as well on the same week. Substrings is quite simple and I enjoyed doing the assignments, nonetheless instead of trying to fix up other things that needed fixing I helped my peers finish their substring assignments. I tried to help as much as possible however at the same time tried not to give the whole program to them and let them think a little for themselves. I believe the majority of my peers are open to questions, nevertheless at the same time some are not. I hope this will change and by the end of the semester every one of my peers will help one another. 

Wednesday- WHAT IS GOING ON!!!

Frankenstein being created 
  Today I walked in the classroom and Mr.Arkin once again was no where to be found. I am blown away by this incident, however I had some good news today. The good new was that I finally finished my game! It is fully functionally and it is descent at the same time! I also finished all the sub string assignments AGAIN, due to Future Shop not being able to keep my files from being deleted! I hope Mr.Arkin comes back soon because, I have numerous questions for him, for example what does the keyword process do? My game is called hit the square, the goal of the game is to hit the square on the screen with you mouse before it disappears. It gets challenging as you increment in levels. I have also heard that the culminating activities will be based on making a game. This is perfect for me because, I already have a game!

Sunday, December 5, 2010

Tuesday- WHAT TWO DAYS IN A ROW..........

  This is the first time something like this has ever happened this year, today once again Mr.Arkin was no where to be found! I was baffled when I walked into the classroom and saw another supply teacher sitting where Mr.Arkin regularly sits, it was something that I would never have expected. The only thing that is worrying me at the moment is, how am I going to explain the virus to Mr.Arkin now! I am still having troubles with my game, the main problem is I can't get the meteors to disappear when I shoot them. I believe I have to use an if statement and a counter. Nonetheless, figuring out what the if statement is going to be really bewilder's me. 

Monday- Random Substitution

  Today was a rather odd day for me because, Mr.Arkin was no where to be found! The whole period I worked a new game, it's called Fight at Flight. The reason why I am making this game is because, on Friday Mr.Arkin told us that we are going to have to make a game for the culminating activities. I went home thinking, hey if I finish the game now I will have an extra 3 weeks on my hands to study for the exam. This led me to creating the game, nonetheless it is extremely difficult to program it, even though I am aware of the steps needed.

Friday- Computer Virus WHAT!?....

  First off I would like to apologize for such a late post, the main dilemma was due to this computer virus that had infected my laptop. The out come to this was, all my substrings assignments that I have done have all gone to waste! This has completely infuriated me, I must now do them all over again from scratch, nonetheless it should be easy to do because I had done it once before. The only thing I am looking forward to today is going to the YMCA and taking a load off. When I go to the YMCA, it is as if though all the troubles on my mind just disappear, it feel's amazing! I hope I can explain this virus to Mr.Arkin as soon as possible.

Thursday, November 25, 2010

Thursday- Finished Modified Number 12 and What a coincidence it's Mr.Arkin's Birthday!!

I believe this assignment was a great challenge and I actually enjoyed it, due to the feeling when one gets once they successfully complete a program. The feeling is indescribable and only a programmer would know what I am talking about. If I were to try my best and describe this feeling it would be the equivalent to losing 20 pounds in an instant. It makes one feel light and joyful, in my case it makes me want to jump, because when one know's they have accomplished something worth wile it makes them feel extraordinary. This is my first successful array program I have produced and it is only the foundation for more to come. 


Here it is! : 



% declaration section

const GST := 0.05
const PST := 0.08
const ARRAY_LIMIT := 100
const DELAY := 1000

var price : array 1 .. ARRAY_LIMIT of real
var priceIndex : int
var tax : array 1 .. ARRAY_LIMIT of int
var total : real
var tax_PST : real
var tax_GST : real
var sum : real
var taxIndex : int
var amount_of_items : int

% intialization section
priceIndex := 1
sum := 0
total := 0
tax_PST := 0
tax_GST := 0
taxIndex := 1
amount_of_items := 0

% input and processing section

loop

    colourback (black)

    cls

    colour (yellow)
    put "Tax status #", taxIndex, " (1/2) : "
    put "1 = Yes"
    put "2 = No"
    get tax (taxIndex)
    put "Price", priceIndex, " (enter 0 if want to stop) : $" ..
    get price (priceIndex)
    amount_of_items := amount_of_items + 1

    if tax (taxIndex) = 1 then

        sum := sum + price (priceIndex)
        tax_PST := sum * PST
        tax_GST := sum * GST
        total := tax_PST + tax_GST + sum

    elsif tax (taxIndex) = 2 then
        tax_PST := 0
        tax_GST := 0
        sum := sum + price (priceIndex)

    else

        put "Invalid tax status, please enter valid one! "
        delay (DELAY)

    end if
    taxIndex := taxIndex + 1
    exit when price (priceIndex) <= 0
    priceIndex := priceIndex + 1
end loop

%output

priceIndex := 1
taxIndex := 1

colourback (black)
cls
color (white)
put repeat ("=", 20)

put "Your Receipt"

loop

    put "Item ", priceIndex, " $", price (priceIndex) : 0 : 2

    if tax (taxIndex) = 1 then

        put " Taxable y"

    elsif tax (taxIndex) = 2 then

        put " Taxable n"

    else

        put "Taxable not specified"

    end if

    taxIndex := taxIndex + 1
    priceIndex := priceIndex + 1

    exit when priceIndex > amount_of_items - 1
    delay (DELAY)

end loop

put "Subtotal: $", sum : 0 : 2
delay (DELAY)
put "PST: $", tax_PST : 0 : 2
delay (DELAY)
put "GST: $", tax_PST : 0 : 2
delay (DELAY)
put "Total: $", total : 0 : 2
delay (DELAY)
put "Amount of items: ", amount_of_items - 1
delay (DELAY)
% extro

put repeat ("=", 20)

put "Thank you! "

put repeat ("-", 20)


  Please, if there is anything wrong with this program comment, I will appreciate the criticism and will do my best to fix all the errors. 
   Now I would also like to say Yom hew' led-it sam-e-ach, mar Arkin!(means happy birthday Mr.Arkin). Today was Mr.Arkin's birthday and I hope he will have a splendid birthday, if it weren't for Mr.Arkin I would not know how to make a website, who to construct a program, all the definitions I know about computer science would not exist in my mind. Therefore, I would like to say  hachi tov be mar Arkin! (means your the best Mr.Arkin). 

Wednesday, November 24, 2010

Wednesday- Arrays Are ...... How Should I Say This?

An array of pins

  Today we learned about a new keyword known as array, an array is a data structure that can store more than one variable, where as a variable (var) can only store one variable at a time. An array will allow me to hold many variable in one location, therefore it will make my life much more easier. These arrays have made my assignment #12 look much more sophisticated when it is run. This also makes most my programs much more efficient and easy to use, as we learn more and more about Turing I start to realize how hard this language must have been to make.


  The amount of effort that was put into making this language is utterly mind boggling. The only thing that is bothering my at the moment is, how can I output all the variables stored in the array with a put statement. If I find out how to do this I will finish the modified version of assignment #12.

Tuesday, November 23, 2010

Tuesday- Becoming Much Better at Turing

  Today I asked Mr.Arkin if he could check my program for any errors. Surprisingly I had a sparse amount of errors, which would let the program run efficiently, however did not go by how a program should be indented. I also learned not to combine the initialization section with the declaration section. My programs are looking much better that what they use to be. Nonetheless, something I forgot to do was check my printer comparison mark! This made me extremely frustrated and due to preoccupations I could not go and see it. This is keeping me anxious and worried at the same time. Tomorrow we will also be receiving our term 1 report cards, my average is descent, however I want my average to be in the 90's and not the 80's, therefore I will keep working hard to accomplish my goal. 

Monday, November 22, 2010

Monday- Coming Back From a Long Weekend!

  I went to sleep last night unaware of school tomorrow, my alarm clock rung and suddenly I came back to Earth. It was as if though I were in a serene paradise, then suddenly someone shoot me down. I woke up wary and wanting nothing else but sleep. Another factor that really made me drowsy today was the swimming practice I had in the morning. I woke up at 6 am and was at school by 7, as I said in my previous blogs, the harder and more efficient someone works on something the better the outcome will be. The power of the human being is only limited by there own thoughts. This reminds me of a story that my father told me about the Olympic games. He said that a Spanish swimmer lost to an American swimmer, some years ago, due to what his mind was occupied with. The swimmer who lost thought the victor was much better than him, however it was not so. This is mainly because the victor's time was lower than the other swimmers when there was no competition involved. Therefore, this story taught me to always think that I am better and that those who think they will lose will end up losing.

Thursday, November 18, 2010

Thursday- HTML Again?!

  Today we started using notepad and creating websites, the last time I created a website was a month ago. I most refresh my mind and try to remember all the materials I have forgotten in this long duration of time. As my programming skills improved drastically, my website designing skills have significantly dropped. Another problem that is occurring for me is, someone is deleting my index page, this both makes me infuriated and perplexed. As I think about alternative to deal with this matter I find none, on Monday, I will consult this dilemma with Mr.Arkin, because this has been the fourth time someone has deleted my index page. All problems aside this year is turning out to be quite congenial. 


  Today as I am typing this post, 8th graders from all different locations in Toronto and possibly other cities are gathering in either the cafeteria or library, for information night. I remember the day I was required to attend to information night, as I glanced to the crowd of students wanting to get into IB I wanted to turn back, however determination and dedication are key to fulfilling a goal. I remember at one point in Mr.Usprech's lecture I had an urge to get up and leave the room, nonetheless I made it, no one would have guessed it. That day I felt like my dreams were coming true and now that I think about a crowd of 8th graders and their parents swarming around Mr.Usprech or a t.v screen, I laugh saying all that nervousness and anxiousness was worth it, it was worth getting a first degree education.     

Wednesday, November 17, 2010

Wednesday - Rest of Repetition Assignments

    As I stated in my last post, I did not want my posts to become so clustered with information, therefore I decided to post the rest of the repetition assignments (# 11, 12, 13) on this post. If there are any mistakes please comment on this post and I will do my best to fix, as soon as possible. Here they are:

#11

%declaration section
var sum_of_numbers : int := 0
var number : int
var total_of_numbers : int := 0
var mean : real
var answer : string

%input and processing section
loop
    colourback ( black )
    cls
    colour (43)
    put "Number? : " ..
    get number
    if number not= 0 then
    sum_of_numbers := number + sum_of_numbers
    total_of_numbers := total_of_numbers + 1
    colour (5)
    put skip, "You have ", total_of_numbers, " number stated."
    colour (red)
    put skip, "The sum of your numbers is, ", sum_of_numbers, "."
    colour (9)
    put skip, "More numbers (yes/no)? " ..
    get answer
    else
    put skip, "Enter any number other than 0 "
    end if
    exit when answer = "no" or answer = "NO" or answer = "No"
end loop

% extro
colourback (blue)
cls
mean := sum_of_numbers / total_of_numbers
colour (8)
put "The mean of your marks is: ", mean : 0 : 2

# 12

% documentation section
% Produce a cash-register receipt: Gather price and tax-status data,
% item by item, display those data, then display the total PST, total GST,  

and overall total. (Hints: For each item, gather the price and its   
% taxable status with a single get statement, and use an appropriate
% number of accumulators. )

%
% declaration section
const GST := 0.05
const PST := 0.08

var answer : string
var item_price : real
var number_of_items : int := 0
var tax_status : string
var total : real := 0
var total_without_tax : real := 0
var tax_PST : real := 0
var tax_GST : real := 0

% input and processing section
loop
colourback(black)
cls
colour ( 43 )
put "Item price: $" ..
get item_price

if item_price > 0 then
number_of_items := number_of_items + 1
tax_GST := GST * item_price
tax_PST := PST * item_price
total_without_tax := total + item_price
total := total + item_price + tax_GST + tax_PST

colour(white)
put repeat ("=" ,20)
put repeat ("=" ,20)

colour(red)
put skip, "Price of item(s) : $", total_without_tax : 0 : 2
put skip, "GST : $", tax_GST : 0 : 2
put skip, "PST : $", tax_PST : 0 : 2
put skip, "Total : $", total : 0 : 2
put skip, "Number of items : $", number_of_items
colour(white)
put repeat ("-" ,20)
else
put "Please enter valid price!"
end if
colour(purple)
put skip, "Continue? (y/n) " ..
get answer
exit when answer = "n" or answer = "N"
end loop
% extro
colourback (red)
cls
colour(blue)
put "Thank you! " 

# 13

% declaration section
const child := 5
const adult := 10
const senior := 7.50
var ticket_type : string
var number_of_tickets : int := 0
var total_price_of_tickets : real := 0
var answer : string
% input and processing section
loop
    colourback (black)
    cls
    colour (43)
    put "Ticket type (adult/senior/children) : " ..
    get ticket_type
    number_of_tickets := number_of_tickets + 1
    if ticket_type = "adult" or ticket_type = "Adult" or ticket_type = "ADULT" then
        total_price_of_tickets := total_price_of_tickets + adult
    elsif ticket_type = "senior" or ticket_type = "Senior" or ticket_type = "SENIOR" then
        total_price_of_tickets := total_price_of_tickets + senior
    elsif ticket_type = "children" or ticket_type = "Children" or ticket_type = "CHILDREN" then
        total_price_of_tickets := total_price_of_tickets + child
    else
        put "Enter valid type of ticket ! "
    end if
    colour (red)
   
    put "Continue? (y/n) " ..
    get answer
    exit when answer = "n" or answer = "N"
end loop
% extro
colour (purple)
put "The total amount of tickets you purchased is : ", number_of_tickets, ", and must pay : $", total_price_of_tickets : 0 : 2, " for the tickets. "
 
  I hope these assignments can help everyone carry on with the repetition assignments. Once more if anyone has any questions or concerns please comment on this post, I will truly appreciate it.

Tuesday, November 16, 2010

Tuesday- Handed in my Best Work for Repetition

  My best work that I have made so far, when it comes to the repetition assignments was handed in today, I hope I did well. I added color to this assignment, which I believe is extremely important as I stated in my previous post. However, the section that I believe will give me a higher mark is the processing section, because, to make my job easier I used a for statement to make my program much shorter. I am slowly starting to use much more sophisticated procedures, functions and keywords to make my program more efficient and compact to make it both easier for me (being the programmer) and the user. I am also posting the codes for questions 7, 9 and 10 on this post to help my peers work ahead on the repetition assignments and the main reason why I did not put 8 is because, I do not know if I did it properly, therefore I do not want to mislead anybody. 















#7 
for number : 1 .. 34


    colourback (green)


    colour (yellow)


    delay (500)


    put repeat ("*", number)


end for


%extro


colourback (blue)


colour (red)


put "Done!"

#9



var number1 : real
var answer : string
var negative_value : real


loop
    put "What is your number? " ..
    get number1
    if number1 not= 0 then 
    negative_value := number1 - number1 - number1
    put number1, " negative = ", negative_value
    put "Continue? (yes/no) " ..
    get answer
    else
    put "Enter valid number!"
    end if 
    exit when answer = "no"
end loop

# 10

% documentation section
% Gather a set of non-zero integers, and
% display both the number of positive
% and the number of negative integers processed.

%declaration section
var number : real
var answer : string
var negative_number_count : int := 0
var positive_number_count : int := 0

% processing section and input section

loop
    colourback ( black )
    cls
    colour ( yellow )
    put "Number? : " ..
    get number
    if number > 0 then
        positive_number_count := positive_number_count + 1
    elsif number < 0 then
        negative_number_count := negative_number_count + 1
    else
        colour ( white )
        put "Enter number that is not 0!"
    end if
        colour ( purple )
    put skip, "Positive number count = ", positive_number_count
        colour ( red )
    put skip, "Negative number count = ", negative_number_count
        colour ( 43 )
    put skip, "Continue? (y/n) " .. 
    get answer
    exit when answer = "n" or answer = "N"
end loop

% extro
put skip, "Done!"


  I hope this will help my peers proceed with repetition, I will post the rest on my next post, because I did not want to make this post extremely long. 

Monday - Adding Color to my Assignments

  Today Mr.Arkin showed us an extremely well constructed program that involves changing the color of the background and letters. Now that I look back at previous programs that I had made, I think about how much better they would be if I were to add in color. The color to a program is like adding pictures to a project, it makes the work much more appealing towards the eye, therefore catching people's attention. This is a good thing in programming because, if the program was dull, the user would not recommend this to other people, therefore if a person were trying to make profit out of the program, they wouldn't be. Color in my opinion adds a certain perfection like attribute to the program, this is why I have decided to add color to all my programs! See the difference between this text and the colorful text?

Monday, November 15, 2010

Friday- NO HOMEWORK

 


Finishing assignments earlier than required to does indeed pay off, today if I did not go on to doing the repetition assignments I would have homework, however due to working ahead I do not. I am working on the substring assignments, I believe if I set my mind to doing the assignments I will finish them all by Monday. I hope Mr.Arkin does not have any more assignments to bestow on me. I am also going to the YMCA today to take a load off my playing basketball and going swimming. The song is stuck in my head now : 





Young man, there's no need to feel down
I said, young man, pick yourself off the ground
I said, young man, 'cause your in a new town
There's no need to be unhappy

Young man, there's a place you can go
I said, young man, when you're short on your dough
You can stay there, and I'm sure you will find
Many ways to have a good time.

It's fun to stay at the Y.M.C.A.
It's fun to stay at the Y.M.C.A.
They have everything For young men to enjoy.
You can hang out with all the boys.

It's fun to stay at the Y.M.C.A.
It's fun to stay at the Y.M.C.A.
You can get yourself clean
You can have a good meal
You can do whatever you feel.

Young man, Are you listening to me
I said, young man, what do you want to be
I said, young man, you can make real your dreams,
but you've got to know this one thing.

No man, does it all by himself
I said, young man, put your pride on the shelf
And just go there, to the Y.M.C.A.
I'm sure they can help you today

It's fun to stay at the Y.M.C.A.
It's fun to stay at the Y.M.C.A.
They have everything for young men to enjoy.
You can hang out with all the boys.

It's fun to stay at the Y.M.C.A.
It's fun to stay at the Y.M.C.A.
You can get yourself clean
You can have a good meal
You can do whatever you feel.

Young Man, I was once in your shoes,
I said, I was down and out with the blues
I felt, no man cared if I were alive
I felt the whole world was so jive

That's when someone came up to me
and said young man take a walk up the street
There's a place there called the Y.M.C.A.
They can start you back on your way.

It's fun to stay at the Y.M.C.A.
It's fun to stay at the Y.M.C.A.
They have everything For young men to enjoy.
You can hang out with all the boys.

Y.M.C.A.
It's fun to stay at the Y.M.C.A.
It's fun to stay at the Y.M.C.A.
Young man, Young man, there's no need to feel down
Young man, Young man, pick yourself off the ground

Y.M.C.A.
just go to the Y.M.C.A.
Young Man, Young Man, I was once in your shoes,
Young Man, Young Man, I was out with the blues

Y.M.C.A.
Y.M.C.A.
Y.M.C.A.
Y.M.C.A.