Skip to main content

Std X - CA Projects - 2014-15

Hello guys! 
Here are your projects for the board exams in CA for the year 2014-15. Each project must be 

  • User-friendly (proper prompts and announcements to the user and good error-handling)
  • Reader-friendly (documentation in code about what each class, method, data member is for or does)
  • Generic (should apply to as many cases within the problem as possible, in other words assume the least)
  • Object-Oriented (instead of making one long class, make many classes to properly hide data and keep things simple)
  • It must be compiled as an app (albeit CUI-based) to run on any windows system. Different compiles may be needed for 32-bit and 64-bit systems. 
You can team up in numbers up to 3 for each project, singles are also allowed. You get a week from this announcement to submit the source code and its compiled object code in a zip file (which includes any special libraries you may have created / used) as an email to me. 

A. Spy Messenger - This app should be able to encode and decode messages using any of the methods given below. The app if used by the encoding spy should allow him to convert the message into a cryptic one using the method of his choice. Then he can pass the message by normal (not in the app) means to the other party. (say email / sms / ...) The decoding spy should be able to try different methods to decode the message back to its original form.
  1. Caesar Cipher - Take a sentence and shift each syllable by a certain number of positions in the alphabet to create the encoded message. i.e. if shift is to be done by +2, then A becomes C, B becomes D and Z becomes B. If the shift is a -1 then, A becomes Z, B becomes A and Z becomes Y. Spaces and other punctuation is to be left untouched.
  2. Null Cipher - Introduce a null letter (i.e. dummy letter) between each nth syllable as defined by the encoder. So "This is Nice" with a null "e" after every 2 letters becomes "Theise ise Niecee".
  3. Number Cipher -  Each letter becomes a certain number as defined by the encoder. The sequence of numbers follows through the alphabet. So, if user specifies 56, A becomes 56, B becomes 57 and so on. To differentiate between alphabets, each alphabet is followed by a hyphen (-) and the punctuation marks are totally removed. (The decoder can interpret) Hence is user specifies 1, "Hello guys!" becomes "8-5-12-12-15-7-21-25-19" 

B. Catch-Me-If-You-Can - This app is a small game of dice where both players are walking on a path after starting from the same point. Both throw dice in turn and move as many number of steps as the dice indicates. Naturally one player is ahead of the other. If the player A is behind player B and if player A covers the same number of total steps as B then player A wins. (A caught-up with B) If player B finishes the path (certain number of pre-defined steps, say 50) before A can catch up, then B wins. The game may get over within a few steps or go on for many as per the dice being thrown. Either  player should get a chance to throw their dice, i.e. it gets thrown only when a player types in a command (say "throw"). After this play, the player gets a notice about the positions of both players and if any has won.

C. Number Systems Calculator - This app helps the user (who is apparently a CA student) to convert numbers between different number systems, i.e. Binary, Octal, Decimal and Hexadecimal. So the user enters the number, the system in which the number is and the system to which to convert to. The calculator then does the conversion and responds with the answer.



Comments

All Time Popular Posts

Annual Day 2023

 After a long hiatus due to covid we finally got most activities on track. The Annual Day function is always a big deal for everyone at Abhinav. It has been a tradition my mother started that the Annual Day will be not a Teacher-managed event, but a Student Initiative. Since when I was a teenager, I was part of this and today 10 years after she passed, I still strive to make it work as she would have. After some hesitation, we began working in early January. I wanted to use an outside choreographer just so that teachers will not be burdened. (They are already struggling with post-covid learning difficulties) But then, an outside guy could never do justice to the Abhinav style of doing things. We always keep in mind that the cultural program should be enjoyable to everyone in the audience and at the same time should display as many of the diverse talents that our students have, as possible.  It was a great relief that my G3 students came to the rescue. Almost all of std 9 and m...

Are Self-Driving Cars Taking Over Humans?

- Arya Dharmadhikari(Std X, Abhinav Vidyalay) The 21st century has played an important role in the advancement of technologies. This development has even revolutionized the Automobile industry. We have developed from fuel-efficient vehicles to Hybrids and EVs and now we are enhancing self-driving vehicles. Tesla, Waymo, Volvo, GM, BMW, Mercedes are among the few companies that have started testing self-driving cars. The leading among them is Waymo, which has developed level 4 autonomy which we will discuss in the next section. So before reaching levels of autonomy we should understand what self-driving cars are and why we require them. What is a self-driving car? A self-driving car (also called an autonomous vehicle) is a car that is competent in driving itself without any human intervention. The car has sensors, cameras, lasers, radars, GPS, LIDAR through which the Artificial Intelligence senses the surrounding environment, this helps the car to navigate on its path and to detect sig...

Trapping events - IT assignment for Std XI

Perform these tasks on your PC and give yor answers as comments to this post or as an email to my ID - director@abhinav.ac.in . What is the sequence for the events given below and when do they occur for the given object? a) Textbox - Change, KeyPress, KeyDown, Validate b) Command button - Click, GotFocus, LostFocus, KeyPress c) Combo Box - Change, Click, DblClick, DropDown, Scroll Draw an equilateral triangle (should actually look like it) whose one vertex is the point at which the user clicks on the form. Make a simple calculator which has buttons for different numbers & operations (+, -, *, /, ^) and a box to display the result of each operation as well as each number being typed.