Ryan Rampersad's Chronicles
an retired blog of thoughts, opinions, ideas and links
  • About
  • Podcast
  • Links

Archives

AP Computer Science 2011 – Free Response #4

I’ve covered the first and third AP Computer Science 2011 Free Response Questions. Today I will conclude with the fourth question. I skipped the GridWorld question and I probably won’t be covering it.

The fourth free response question is about encryption. Using a two-dimensional array of single character strings, you’re going to encrypt a message by entering the characters row by row into the array and then taking them out column by column. It’s clever.
(more…)

AP Computer Science 2011 – Free Response #3

Like yesterday on the first response question, I’m going over the third question today. You might be wonder: what happened to the second question coverage? Well, it was all about GridWorld and I’m not really a fan. I don’t have API access and writing and making testable and runnable code for it isn’t exactly ideal.

The third free response question is interesting. To test knowledge on Interfaces, you are given two interfaces: FuelTank and a FuelRobot. These two Interfaces are to be used in a class called FuelDepot as a list of tanks and a tank filling robot. The code given on the example did not provide a complete program, so I took some liberties. It should be clear on what is and what is not from the exam.
(more…)

AP Computer Science 2011 – Free Response #1

Last year, I blogged about the free response questions from the AP Computer Science exam. This year, I’m a couple of days late but, I managed to see and work on the questions. I have to say that the free response questions from this year are at least on par with last year.

Free Response Question #1

Free Response Question #1 was all about Sound. Essentially, you were given an array of amplitude values. These values would modulate and thus make the sound you hear. It’s more complicated than that in reality, but this is a good problem to work on.

(more…)

APCS FRQ Soon!

Over the next few days, I’ll be pushing out my answers to this year’s free response questions from the AP Computer Science exam last week, just like last year.

Free Response Links

  • FRQ #1: Sound
  • FRQ #3: FuelTanks & FuelRobot
  • FRQ #4: Encryption

I may or may not cover FRQ #2: GridWorld. If anyone else has posted about it, leave a comment with a link.

AP Computer Science Green Packet

The infamous APCS Green Packet!

I’ll update the series of posts so they all have links to the other problems. Good luck on any other AP/IB tests!

Solids of Revolution

My AP Calculus class finished its last unit before our review for the test in May today. The test was on solids of revolution. Personally, while I love calculus, I’m tripped up by the different scenarios like rotating using disks on dy or using a shell on dx. I wrote a little study guide to make things a little easier.

Solids of Revolutions Study Guide

I think about it like this: it switches. For instance, using the washer method, you rotate on the x-axis and you use a dx integral. Conversely, you using the shell method, you rotate the x-axis you will use a dy integral. This method of thinking helps me remember.

Download the Solids of Revolutions study guide as a PDF.

If there are any errors in this guide, well, that will explain my dismal test scores on my most recent exam. In the case you find an error, please leave a comment – it would really suck to have erroneousness information in a study guide.

IB Mathematics / Calculus Portfolios

It’s almost that time of year when International Baccalaureate students start working on their IB Mathematics/Calculus 1 portfolios. I fondly remember the time I spent writing each portfolio from scratch. It was a worth while experience. The first portfolio focuses on finding relationships to the way mathematics works. The second focuses on analysis of data to find patterns and relationships.

The possibility of IB offering the same prompts for the portfolios this year are incredibly slim.

Logarithms

I managed to get a 90/100 with this one, even without knowing fully what to do. That’s a pretty good score. Essentially, this should help you understand the components to a portfolio.
Remember, you need to find the pattern; make some of your own original examples and define the scope and limitations.

You can download a PDF version of the Logarithm Bases portfolio too.

BMI

Although I thought it was an odd prompt, IB decided to talk about girls’ BMI. This portfolio asked me to find a model for girls’ BMI. I found a few patterns but I settled on a sinusoidal pattern. This portfolio was much longer spanning ten long steps. I don’t know if there was any better model than the one I found either. I managed also a 90/100 on this one.

You can download a PDF version of the Body Mass Index portfolio too.

It should have been made clear to you too that you can’t take my work and pass it off as your own. Absolutely not. So if you do happen to get these prompts again, you’ll need to credit me if you take anything from my portfolios or the heavenly IB fire will rain down from the sky and strike you. It should be permissible to use my example as simple structural ideas so that shouldn’t need any credit.

Good luck with your portfolios!

My Top 5 AP Computer Science Tips

I’ve taken three years of computer classes at my highschool. One of them was not programming related, but was offering more of a collective computer experience, like getting familiar with OSX shortcuts, working with photoshop and designing web pages (with technology from the early 2000’s). My first class was of course Introduction to Java. It was a basic class that got everyone up to speed on syntax: variables, control structures, iteration and basic classes and just maybe, arrays. Half a year should be able to contain more content that that, but overtime, the class was definitely refined. Last year, I took the AP Computer Science course at my highschool. I don’t know the results from my exam in early May yet, however, I believe they’re decent.

A tiny preview to what some code might look in a AP CS class

I was a different beast when I walked into that AP Computer Science course than the other students, I already knew a lot. But it isn’t an essential requirement to know a lot. You can have never programmed a single day before in your life, that’s fine. But there are things you need to know, before you can start learning the material for AP Computer Science and beyond.

Thus, I present my top 5 tips for new AP Computer Science Students!

5 – Computer Familiarity

This is probably obvious, but you need to know what kind of computer you’re going to be using when you actually start programming in class. If you’re using Windows, OSX, or some variant of Linux, you need to know how to use that system. You don’t need to be a genius with the system, but you need to be able to install things, navigate around the filesystem, understand how paths work in the system (like where the root drive is, i.e. c: or /).

Why is this important? It saves time. You’re learning specific material, but not about computers. A lot of instructors, when using computers that students aren’t familiar with (Macs) have to spend valuable time teaching the basics of the system. Don’t let that be you. If you’re not familiar with what you’ll be using, find out what it is, and then find someone who has a computer with that OS on it, and go play with it.

4 – Go fast and then slow down

Honestly, there is no better title for this one.

If you’re given a programming assignment, step back for a moment. How much time do you have until you need to turn it in? How much work will it be to code whatever it is? These determine your programming schedule. If you have the time, and the program isn’t overly complex, do the following: complete a working version of the program as quickly as possible, then do it again, but with optimizations you could apply. Optimizations, although you may not know what they are right now, may be: abstracting classes, extracting repeated code into methods, one-lining variables, making more elegant loops, eliminate needless if/else structures when a different boolean modifier will do and so on. Anything, basically, to make your code smaller, more readable and more elegant. This will make you a better programmer.

3 – Read code

After a month or two in your class, look back on the early programs you wrote. See if you giggle and snort when you read them.

Like my #4 tip, you should try to rewrite your old programs to make them more elegant, shorter and more readable. You’ll understand how this works as you go through your class more and look back on old work.

You should also be reading other peoples’ code. Why? Because it gives you the experience of seeing code you did not write and had no control over. It allows you to experience someone’s train of thought when they were working through the program. It gives you an idea of other solutions, other methods and conventions. It lets you be introspective too, it permits you to see how you think compared with that of another.

2 – Google

Lousy title? No.

You’ll be faced with things you don’t understand in your class. Everyone is expected to ask questions about those things. However, Google is much better source for answers, some of the time.

If you’re getting a syntax error, google the speicific meaning. If you’re getting a special exception error, google it. If you want to know more about a specific package in Java, google it. If you want to know _____, google it (see the blank I left for you, fill it in.)

Google is a wealth of knowledge just for you. If Google some how fails to provide a good answer, then, ask your instructor. Googling independently. is your goal, where you find answers and solutions on your own.

I cannot stress this enough. If you don’t know something, Google It.

1 – Buy a book

If you’re reading this before your class starts, you’re in luck because you can actually do this.

You need to buy a book. What book? A book that teaches you about Java. Here are some suggestions:

  • Head First Java
  • Sam’s Teach Yourself Java in 24 Hours
  • Beginning Programming Java for Dummies

I seriously don’t care if you already took an introduction class with Java or programming. You need to self study Java over your summer vacation (or until whenever your class starts).

Why? I’m adamant about this because I went through the first of many iterations of an Intro-To-Java class, as I mentioned earlier. The first time, it was more about coding. Then, it was making little games with greenfoot, then it was a introduction with scratch, then coding, then greenfoot. Your class may have missed something (or a lot of things), so you need to get ahead. I was lucky, I knew a lot of programming before I got into Java. If you don’t though, you’ll need to get all of the basics, the things you need to know in order to use the fancier features of Java, but the things your instructors don’t mention to you in your introduction class.

Reflection

I’m probably not taking another CS course until college, in fall of 2011. I’ve taught many people things in programming that they would have never been exposed to if I hadn’t done the things I’ve written above. Yes, the things about are things I did, and I believe those things made me a better programmer and a better student.

So, in short, good luck with your AP Computer Science class.

On English Analysis – With A Poem

Even in the middle of ninth grade in 2008, I had trouble dealing with the English Analysis that was asked of me in English 9 IB. There are so many aspects of those classes of which I dislike, such as their always assuming nature that things mean something they explicitly do not, their obsession with old literature and of course, their massive desire to teach without actually working on writing skills.

Luckily, I am probably not taking English 12 IB in my Senior year. Thus, my sanity and quite probably my humanity will be saved. That said, allow me to share this little poem I wrote in ninth grade in that English 9 IB class as apart of a project.

When I heard the learned English teacher,
When these criticism and analyses were tabled before me
When sentences were split, rearranged and mangled, interpreted,
When I stood, I heard English teacher where she taught with much discussion in the room,
How soon bored I grew and became ill and weary,
Until drifting and dreaming I awoke with a book,
Read with perfect silence and my interpretation.

A Quick Review on the Physics IB SL Papers 1, 2 and 3

I took the International Baccalaureate Physics exam on Monday and Tuesday. It was much less of an exam than others were and that’s part of my reason for being so late on this one.

Paper 1

Paper 1 was the multiple choice. There was not a single calculation that was required to answer any question. It was just simple stuff requiring basic knowledge of situations (think EM field and the way things move) and other basic concepts like if velocity is 4 and then 16, what is the acceleration?

Paper 2

Paper 2 was harder. There were two parts, section A and B. A was required while B a 3-subsection where you had to pick 1 subsection to complete. I can’t remember anything about these sections honestly. Did I mention how I was not serious?

Paper 3

By far the easiest Paper, there 8 or so sections and two had to be completed. Which two sections were completed however were at my discretion. I picked Digital Technology and Lenses. I was supposed to pick The electromagnetic spectrum or something like that, but Digital Tech was so much easier.

As you can see from the sparse clippings above, I wasn’t really into the test that much.

AP Computer Science 2010 Free Response

On May 4th, the 2010 Advanced Placement Exam took the nation by storm with 40 multiple choice questions and 4 dazzling free response questions. As I have sworn secrecy to protect the integrity of the multiple choice questions for the rest of my life, I will reveal my own personal solutions to the free response questions.

For the record, I did not get my green packet back yet and probably never will. I took AP Chemistry last year and never got it back.

Question 1

The very first question was CookieOrder and MasterOrder. Part a required a method to get the total number of boxes for a variety supplied by an argument in the master order. Part b requested that a method be written to remove all of the CookieOrder objects stored in an array list and also count and then return the number of boxes removed.

The class and methods I wrote may differ slightly in naming and also contents because I wanted to test these things and also because I forgot the actual method names. I used an ListIterator which is a wonderful thing to remove my CookieOrders.

Download: CookieOrder / MasterOrder Source

Question 2

The second question was about writing a class. APLine was supposed to contain a method to get the slope -a/b and a method for testing whether a point supplied by x and y arguments is on the given line with a custom constructor. Seriously, I wanted to mess with the AP people; I used the scary this keyword. It’s not in the course material. Really, nothing was hard about this class; I threw in a boolean return as required, but without the if statement, so it’s not explicit, it’s implicit.

Download APLine Source

Question 3

A curve ball that threw a few classmates was Question 3. Basically, a class called Trail had an array called markers. The markers store an elevation of the said trail. Part a was about writing a method that use two arguments defining the start and end positions; then find the minimum and maximum elevations between the given start and end positions. It would find the absolute difference and check to see if it was equal or greater than 10. If it was, it would return true otherwise false.

Part b was actually easier to write. The goal was to write an isDifficult method. It would check to see if the trail had 3 or more 30 or more changes in the trail elevation. This was indeed easier than the logic for the level path method.

Download Trail / Elevation Source

Question 4

The grid world question was not as tough as I thought it would be. If they had asked, Write a SomethingOrOtherCritter and make it do SomethingOrOther,” I would have lost that question. Yet, they asked for a GridFinder or something like that.

Part a was going to find the actor with the most neighbors. The idea was to get all the occupied locations. Then, knowing that, loop through all of those. Two variables were initialized to 0, index and total. During the loop, the grid would get the neighbors array list for each location. Then the size() method would be called on each list, and compared against the current total. If it was greater then the total would be assigned the list’s size and the current loop index would be set to the index. After the loop, the grid would get the actor at the location that was stored in index. It was pretty neat.

A bit more abstract, part b was basically get occupied with in 2 rows and columns. That’s a mouthful. Anyway, the my custom solution might be a bit odd, but I’m sure it works. Let’s walk through that one. First, the given location’s row and column are stored. Then, an empty Location array is created and all of the occupied locations are found. All of those occupied locations are then looped through. During the loop, the occupied location’s row and column are also stored. Then the master piece logic: if the given row is not equal to the occupied row and the absolute difference of the given and occupied row are less or equal 2 and the absolute difference of the given and occupied column are less or equal to 2, then add the occupied location to the list of valid locations. After the loop is done, return the list of locations.

Now that’s a mouthful.

Download GridWorld / GridFinder Source

Conclusion

I really loved the questions on the free response. I lucked out in my mind; they were well suited to my abilities. They were deadly abstract nor did they rely on bizarre string manipulations. I think I got 8 + 9 + 9 + 8 although not in any specific order on those questions. I’m happy with that.

I seriously want to see what other solutions to these questions are. If you have any of your own solutions or have comments for mine, please, leave a comment or write your own post describing your solution.

The Second Review on IB Mathematics SL Paper 2

The IB Mathematics exam is a two part exam, split into two distinct papers, paper 1 without a calculator and paper 2 with a calculator. Yesterday, I tasted the International Baccalaureate waters and took paper 1.

Today’s exam, paper 2, was with a calculator and was enormously easier than yesterday. The idea is that examinees can actually perform rigorous calculations and check their work with topics that are conventionally too complex to do by hand. My experience holds true to this.

Paper 2 was again only 10 questions, very much unlike the 26 question specimen papers we received last week for review. Since I don’t know how much I can safely reveal about the exam questions, I’ll be vague. There were a couple graph oriented questions that either had me interpret the graph or actually draw it. Odd;y, there was no problem in which I required a piece of IB Graph Paper. The hardest question was about trigonometry again. The question was triangle based but present me with some scary variables and other things I’d rather really not remember.

There was a derivative question, finally. Actually, it was an integral question, but everyone derives in integrals. The matrix problem was quick and easy. I seriously hope nobody did it by hand, because doing a 3 by 3 determinant is nasty. A simple distribution question was nice to see, but then it was followed by other time chomping problems too.

The exam today was so much easier than yesterday’s paper 1. Paper 2 allows a calculator, true, but I was warmed up to this again after doing it just hours before for paper 1. Seriously, if anyone takes Mathematics Standard Level in the future, you need to experience this exam. It is not scary, it is not terrorizing, is not brutal. There are things you just will not remember, or just not know. I’m fine with not knowing somethings, but I love knowing what I do know.

That’s all I’ve got for this this exam and this week. Next week, I’ll be taking the impossible IB Physics 1 and AP Macroeconomics.

A Quick Review on the Mathematics IB SL Paper 1 Exam

As this is AP and IB testing week across the world, I took the Calculus Mathematics IB SL Paper 1 exam yesterday. On Monday, I took AP US Govt. and on Tuesday I took AP Computer Science. Since this is only the first paper, I’m sure I’ll have more to say about the second paper when I take it later today too, but that’s another post.

First of all, it was only ten questions long. The specimen papers lead me to believe that it was going to be a long and atrocious exam. It wasn’t. The first 8 pages had write-in-the-book answers and then the last three were the extended multipart questions that were to be written on the answer sheets. One thing I really hated was having so much paper on my tiny little desk. The exam booklet is standard 8.5 by 11 paper but when opened, it takes up twice as much space horizontally on the desk. Having the answer document and also a scratch piece of paper side by side is not really possible. I didn’t even mention the formula packet yet. I had to have it under my answer book and move everything around when I wanted a quick refresh. Actually, it wasn’t helpful.

On to the questions. Since I don’t know how much I can say about the contents, I’ll be very ambiguous. The test actually had some derivatives and integrals on it. The specimen papers did not really have much in the way of that. The focus on vectors and trigonometry really murdered my score to say the least. One of the final questions concerned 3D vectors and there was a bunch of find the angle between them, find the k value, find the other line when so and so is parallel. Stuff like that. Anything involving trigonometry, I was lost. Otherwise, I wasn’t too struck by anything. There was this derivative problem which was sort of tricky, but it was an illusion.

My calculus teacher has her class setup so that next week we will go over the entire 10-problem packet. It will be work 100 points and it is open book, open resource except math teachers. So it’s a win-win situation next week.

That’s all I’ve got for the paper one section.

A Quick Review of the AP Computer Science Exam

Monday began the two weeks of Advanced Placement and International Baccalaureate exams. I took AP US Govt. yesterday. Today, I took the new and improved AP Computer Science A exam.

The first section, the multiple choice has 40 questions that range A through E and an allotted time of 1 hour and 15 minutes. It’s just like it has always been. Since the discontinuation of the rouge AB level exam, the College Board has touted the new course material. Something about Integer.MAX_INT or something. I think it is safe to say that it wasn’t there.

The multiple choice covered the standard things like recursion, loops, classes, methods and our favorite five questions on grid world. There were questions too that asked you to look at five different output examples and pick one was actually output with the given code segment. I skipped 4 questions, but unlike yesterday, not because I couldn’t remember how. It boiled down into effort. I’m dead lazy. Have you met a programmer that wasn’t? No, you haven’t. So, I lost some points for being lazy. I seriously only answer if I’m seriously sure of the choice.

The second section contained four free response questions. Luckily, I wasn’t forced to use a pen again. The time allotment was reasonable, running at 1 hour and 40 minutes. I had half an hour to reread my responses eight times. I’m not sharing the order of the questions, nor the content. But I will discuss instead the lengths of my responses. The first was short. In terms of lines (since we’re writing code here) was about 4 lines (not counting brackets). The second and third were about the same, running at about 10 lines. Finally, the last, was by far the longest of them all, probably at 16 to 25 lines. My implementations were rock solid in the first three problems, but the fourth was unstable in my honest opinion.

My Score Foresight™ tells me I got a 26 on the multiple choice. The free response was better for me, so again with my Score Foresight™ tells me that I’ll get 8 + 9 + 9 + 8. After weighting and other mesmerizing things, the prediction is 37.74. The grand total is approximately 63.74 which I think qualifies me for a 4.

That’s it.

And no, none of this violates the wonderful guidelines set forth by the ever amazing College Board.

A Quick Review of the AP United States Government and Policies Exam

I took the AP United States Government and Policies Exam today. The first section was 45 minutes with 60 A through E multiple choice questions. They weren’t incredibly hard. It seemed like it was either cursory information you should just know by watching CNN a lot or it was incredibly abstract regarding a court or a law or a court case in the supreme court. There were blandly obvious questions that did not take even a second though but then were also those which required some internal debate as to what the College Board really wanted from me. There were questions that I just could not answer without guessing, so I stayed safe and skipped it. I had 15 minutes leftover to review my choices. No changes were made.
In total, I skipped 7 questions and I probably got 15 wrong, so that I presumably lost 5 points on top of that initial 7. So grand total, 60-12: 48. That’s what I’m shooting for.

Then there was an 11 minute break. Remember, no talking in the testing room and do not even think about discussing the content on the exam.

The second section wasn’t horrible either. I don’t think I did exceptionally well because it has been just so long since I really studied the material. Anyway, there were 4 short essay questions in 1 hour, 40 minutes. The time allotted to each question was about 25 minutes. I think that was just too much time because I was left with about 27 minutes when I was done with all four sections. Again, because I didn’t remember enough to fill everything in completely, I might have had a lot of extra time. This is not giving away much, so it is safe, but it was hard to remember the entire bill of rights, where things came from, but it would have been incredibly useful so as to not just skirt the best possible responses.

There was one bit of confusion I’d love to let the College Board know about. No where on the exam paper for the free-response questions did it say that it was supposed to be in essay form. It did not explicitly specify any form actually. So, is the free response section supposed to be in essay form?

So overall, I’m totally hoping for a 2/5 or 3/5. I feel so much better than I did with Chemistry.

Calculus IB SL Review Materials

Hey there. I published my hand made study guides for my friends at school, so I thought I’d do the same for everyone else taking Calculus IB SL. These study guides were made throughout the entire year. My styles have changed over that time, so they all look a bit different, but rest assured, they all my work and I absolutely approve of having them online, freely available. That said, you can’t pass them off as your own work for any reason, and if you do download any of them, you might consider leaving a comment.

Download » Calculus IB Complete Study Guide Package

In the zipped folder above, there is a collection of nine hand crafted study guides condensing the material covered over the entire course. Here is a brief title list.

Prerequisite & Chapter 1 – Version 2
Function Families – Chapter 2 & 7 – Version 2
Unit Circle, Trig & More, Chapters 9, 10 & 13
Limits & Derivatives – Chapters 3, 4,8 and 11
Application of Derivatives – Chapter 5
Antiderivatives & Integration – Chapters 6, 8 & 11
Vectors
Matrices, Sequences & Binomial Expansions
Probability & Statistics

Once again, I seriously hope this helps you or anyone you know taking the Calculus IB sometime soon! If you download the package, might might consider leaving a comment.

Have a good one!

I Graduated

In June 2011, I graduated from high school. I no longer officially support these documents. They’re still in good shape though and should augment your own study processes satisfactorily.

Good luck in IB land!

Next>

© 2021 Ryan Rampersad's Chronicles.