Author Topic: Tasks, Suggestions C++  (Read 1378 times)

0 Members and 4 Guests are viewing this topic.

Offline MawZ

  • NULL
  • Posts: 2
  • Cookies: 0
  • Noob Friendly
    • View Profile
    • Darth Vader Noooo!
Tasks, Suggestions C++
« on: October 06, 2014, 08:52:50 pm »
Hello I am a student and Started C++ its been fifth week that we learn the basics and doing all the variables, loops, cin, cout playing with console in general. So I kinda want to do some practice on my own because I find C++ little hard to remember and if I won't do anything I will forget everything I already did.
So I want you members to think of simple tasks that I can complete so it would be like little challenges for me.
It doesn't have to be anything fancy since I am not that experienced something simple that beginner would be able to do.
Thank you :)

Offline Stackprotector

  • Administrator
  • Titan
  • *
  • Posts: 2515
  • Cookies: 205
    • View Profile
Re: Tasks, Suggestions C++
« Reply #1 on: October 06, 2014, 09:28:43 pm »
If you are in to math you can do these https://projecteuler.net/problems  Though the best use of c++ would be to create little projects who do something for you, like a toolkit or a framework with useful functions.
~Factionwars

Offline HTH

  • Official EZ Slut
  • Administrator
  • Knight
  • *
  • Posts: 395
  • Cookies: 158
  • EZ Titan
    • View Profile
Re: Tasks, Suggestions C++
« Reply #2 on: October 07, 2014, 04:28:50 am »
Alright here goes, if you get through them all... you can probably program anything you want.

I won't explain anything. I'm just giving you a similar structure to what we use in University.

1. Write a Hello World Program that takes a name from user input, and outputs something based on it. IE. Hello World, and HTH.
2. Do the same as above but use FILE IO. (Dont forget error checking)
3. Write a loop that will print out asteriks from 0 to whatever the user specifies.
Like so:
*
**
***
etc. Bonus points if you center them.
4. Do the same as above but using a different control structure.
5. Once again, this time make it use a switch in some way :)
6. Take any of the program you have written, and place the working code in a function. Your int main should be two lines.  IE.
int main()
{
call function;  <<< NOT WORKING CODE LOL
return 0;
}
7. Write a function or series of functions that will solve a quadratic equation given a b and c :)
8. Write a program that will declare a 10 int array, then ask the user to fill it. Once it's filled, print it out in forward, reverse, ascending, descending, and finally the sum + largest and smallest numbers.
9. Finally, do 8 as above but modify it so that it accepts the array from a file.

CONGRATS THIS IS ONE SEMESTER INTO A CS COURSE

10. Write a program that will compute the sums of two matrices, bonus points for multiplication (if possible :o), or transverse, etc.
11. Design a small program that can keep track of payroll for an imaginary company. Use STRUCTURES.
12. create a date class that contains the members; month, day, year, as well as setters and getts for each (6 functions total), a default constructor, an additional constructor and destructor, as well as a function called sameDate which accepts another date object and returns a boolean value.
13. Convert The program in number 11 into a class-based program IE use a class not a struct.
14. Take your date class and add a print date function, using n overloaded "<<" operator. in addition, add overloading for "++" "+" "--" and "-".
15. Design a function (class acually) that can calculate the distance between a point in 2 dimensional space. Then use inheritance!!! to make one that can do it in 3 D :)
16. Learn how to make a dynamically sized array, then learn how to use the reference and dereference operators correctly. And preferably safely.
17. Just for fun, make a dynamic array of any object that you please from any of the above programs, then learn how to access functions and data within using a pointer to each object. Hint "->"
18. Learn how to program a selection sort, insertion sort, sequential search and binary search. Keep these functions for later :)
19. Program something that takes numbers from a file and populates a linked list with them. Then have a menu that a user can select from to edit. IE.
A. Add Number
B. Remove Number
C. Print List
D. Sort
E. Exit
20. DO the same as above but with a doubly linked list, and a cylicallly linked list. You may choose for all of these if you want them sorted by default or not
21.Create a Function Template for ouputting the maximum between two pieces of data.
22. Look at class templates.

CONGRATS THIS IS CLOSE TO THE END OF TWO SEMESTERS OF CS (Just the labs)

23.
Expression Defined as Member Functions  Defined as Non-Member Functions
a+b myarray operator+(myarray b)  myarray operator+(myarray a, myarray b) 
1+a N/A myarray operator+(int a, myarray b)
a+1    
a=b    
a>b    
10<b    
cin>>a    
Complete this table.

24. Use a stack data structure (i dont care if you use the std one or if you program it yourself) to program a parenthesis checking function. IE. ((xx))} is invalid but ({(
  • x)}xxx) is valid.

25. Use a statically sized stack to practice using excption handling.. TRY CATCH THROW.
26. Program a recursive function that will return the base10 value of  binary number IE got from 11011010111 to X. Each call should only handle one decimal place.
27. Use a QUEUE to simulate a very rudimentary instruction list for a cpu. Then Implement some priority.
28. Program a log in that uses a hash table to ensure that no passwords are actually stored. For simplicity we can just say that all passwords are int values. You may define your own hashing function as well as something to correct for collisions.
29.Implement a Binary Search tree.
and finally 30. Program a secure payroll program. Simplly put these are the requirements.

Password Protected but no stored passwords.
Data can NOT be stored in plain text but it must be capable of storing it over time.
You should be able to:(as a test) log in, populate the database with employees and wages, etc. log out. log in, update something, log out, log back in, print it out, then change your password. Securely! then log out. The new password should work (Not in source code :))

If you can get through all of this, over any span of time. Give me a PM, I have more advanced ones too.
<ande> HTH is love, HTH is life
<TurboBorland> hth is the only person on this server I can say would successfully spitefuck peoples women

Offline ArkPhaze

  • Peasant
  • *
  • Posts: 136
  • Cookies: 20
  • null terminated
    • View Profile
Re: Tasks, Suggestions C++
« Reply #3 on: October 12, 2014, 02:31:42 am »
The problem I keep having with 80% of the project euler problems, after about Q#~150 or so especially, is that the majority of them require a math genius that understands how to derive mathematical patterns out of a solution set, or common logic between possible solutions, rather than a programmer that is able to come up with an algorithm to do as such. Regardless if your algorithm is accurate and efficient, and whether or not it's a bruteforce, seems like it's not enough once you solve a few.

The questions up to about Q#50 are good though. After that it requires less of a programmer and more of a mathematician, and increasingly so, onwards...
« Last Edit: October 12, 2014, 02:32:01 am by ArkPhaze »
sig=: ArkPhaze

[ J/ASM/.NET/C/C++ - Software Engineer ]

Offline HTH

  • Official EZ Slut
  • Administrator
  • Knight
  • *
  • Posts: 395
  • Cookies: 158
  • EZ Titan
    • View Profile
Re: Tasks, Suggestions C++
« Reply #4 on: October 12, 2014, 03:20:46 pm »
ArkPhaze, either I'm a mathematical genius or I'm just not seeing something that you are, i went to the very end, and the question with the least solves is rathe rsimple still.
<ande> HTH is love, HTH is life
<TurboBorland> hth is the only person on this server I can say would successfully spitefuck peoples women

Offline ArkPhaze

  • Peasant
  • *
  • Posts: 136
  • Cookies: 20
  • null terminated
    • View Profile
Re: Tasks, Suggestions C++
« Reply #5 on: October 12, 2014, 09:57:48 pm »
ArkPhaze, either I'm a mathematical genius or I'm just not seeing something that you are, i went to the very end, and the question with the least solves is rathe rsimple still.

I never said all of them are complex, which is why if you read my post you'll notice that I put a percentage of the latest questions that are complex. If you'd like to prove something, then solve it:

https://projecteuler.net/problem=481

Full explanation and code required. I'll be waiting for it.
« Last Edit: October 12, 2014, 09:58:08 pm by ArkPhaze »
sig=: ArkPhaze

[ J/ASM/.NET/C/C++ - Software Engineer ]

Offline HTH

  • Official EZ Slut
  • Administrator
  • Knight
  • *
  • Posts: 395
  • Cookies: 158
  • EZ Titan
    • View Profile
Re: Tasks, Suggestions C++
« Reply #6 on: October 13, 2014, 03:01:32 am »
First off why the snippiness? I said most were rather simple and they are at least the ones i looked at. I was hoping for a more civil response. for that one, anyone whose taken a statistics or numerical analysis class should be fine. Which you as a software engineer would have taken. I might take a look at it later, work and all.

I'm not promising anything though, term paper two midterms and group project with a set of idiots trumps proving something to you :D you know the old irl > internet guy thing
« Last Edit: October 13, 2014, 03:04:11 am by HTH »
<ande> HTH is love, HTH is life
<TurboBorland> hth is the only person on this server I can say would successfully spitefuck peoples women

Offline ArkPhaze

  • Peasant
  • *
  • Posts: 136
  • Cookies: 20
  • null terminated
    • View Profile
Re: Tasks, Suggestions C++
« Reply #7 on: October 13, 2014, 05:20:19 am »
First off why the snippiness? I said most were rather simple and they are at least the ones i looked at. I was hoping for a more civil response. for that one, anyone whose taken a statistics or numerical analysis class should be fine. Which you as a software engineer would have taken. I might take a look at it later, work and all.

I'm not promising anything though, term paper two midterms and group project with a set of idiots trumps proving something to you :D you know the old irl > internet guy thing

There's no "snippiness" and I apologize if I came off that way.. You disagreed with, or couldn't see what I was getting at. I just wanted to see if you were being serious. I haven't personally tried that one that I gave you to solve, I looked at the very last one and found it to be rather simple, it just deals with large numbers which is the main difficulty, so I tried to quickly grab one that had a bit more steps and calculations involved. It had to be something at least more recent than up to problem #470 however as anything below that typically has an easy to find solution on the net.

My point was, there are at least a few of these challenges less aimed at programmers, and more math hobbyists that can pick apart a problem and formulate relevant formulas for finding an efficient solution. I haven't found MANY, that require knowledge of computer architecture, unless you use that to your advantage to come up with a decent algorithm, for instance, whether you decide that SSE intrinsics are something that you can incorporate or not into your code.
« Last Edit: October 13, 2014, 05:29:46 am by ArkPhaze »
sig=: ArkPhaze

[ J/ASM/.NET/C/C++ - Software Engineer ]

Offline HTH

  • Official EZ Slut
  • Administrator
  • Knight
  • *
  • Posts: 395
  • Cookies: 158
  • EZ Titan
    • View Profile
Re: Tasks, Suggestions C++
« Reply #8 on: October 13, 2014, 09:34:57 am »
I suppose it comes down this; according to my university profs at least...

The Software Engineer Identifies the problems and solutions.
The Computer Scientist creates the algorithms and routines required for the solution.
The Developers apply them.

But they all take very similar classes.

So I'd say some of these programming questions are geared towards the middle section, who traditionally need to be able to do higher level math/ think laterally/ etc.

You did actually manage to make a point with that question (i pondered it at work on a break). It is overall a rather simple question, but upon looking further the amount of meals created could be infinite (if each meal is found unfavorable) but the tendency for that to happen would be smaller and smaller as it goes on (lim(p)=0). I suppose you did raise a valid point, and i apologize for my harshness beforehand. I looked at this one: https://projecteuler.net/problem=484 which youll see is piss easy. And i was doing so on the run, as I often do, if I had looked at more problems I would have been more inclined to agree with you. Actually looking over it again i see its the same one you looked at :)

Tl;DR: We both raised valid points but how quickly I read/responded made me seem cunty, and made me think you were being snippy/assuming i was talking out my ass. (pet peeve)


Also; I apologize for hogging this thread from OP, ArkPhaze, Id probably enjoy a PM convo with you. I'm peacing from this thread though, unless OP comments on my Practice problems for him :p

<ande> HTH is love, HTH is life
<TurboBorland> hth is the only person on this server I can say would successfully spitefuck peoples women

Offline ArkPhaze

  • Peasant
  • *
  • Posts: 136
  • Cookies: 20
  • null terminated
    • View Profile
Re: Tasks, Suggestions C++
« Reply #9 on: October 14, 2014, 01:08:51 am »
I suppose it comes down this; according to my university profs at least...

The Software Engineer Identifies the problems and solutions.
The Computer Scientist creates the algorithms and routines required for the solution.
The Developers apply them.

But they all take very similar classes.

So I'd say some of these programming questions are geared towards the middle section, who traditionally need to be able to do higher level math/ think laterally/ etc.

You did actually manage to make a point with that question (i pondered it at work on a break). It is overall a rather simple question, but upon looking further the amount of meals created could be infinite (if each meal is found unfavorable) but the tendency for that to happen would be smaller and smaller as it goes on (lim(p)=0). I suppose you did raise a valid point, and i apologize for my harshness beforehand. I looked at this one: https://projecteuler.net/problem=484 which youll see is piss easy. And i was doing so on the run, as I often do, if I had looked at more problems I would have been more inclined to agree with you. Actually looking over it again i see its the same one you looked at :)

Tl;DR: We both raised valid points but how quickly I read/responded made me seem cunty, and made me think you were being snippy/assuming i was talking out my ass. (pet peeve)


Also; I apologize for hogging this thread from OP, ArkPhaze, Id probably enjoy a PM convo with you. I'm peacing from this thread though, unless OP comments on my Practice problems for him :p

I have an unofficial computer science background as far as self-learning goes. I've taken courses as mentioned, but that's the main area where I'm lacking. I'm good at the software engineer role and the developer role especially. I agree with you though... Guess this means I can't be a self-proclaimed computer scientist lol.

IMO, a good programmer is a combination of all of the above. So in reality, a "developer" can be a foggy term from my perspective. I know people who are good at only the code and are good at being told what to do, then I know developers who are good at nearly everything. They understand how an efficient algorithm works and how to compare it to the downsides and upsides of other algorithms and methods, along with being good at debugging and finding problems and discovering solutions to them. Of course, in addition to everything else that is taken for granted; writing clean, well-documented, re-usable code with consistency in practices such as naming identifiers, etc...

Now, ProjectEuler isn't all that bad, it's actually a kick in the ass for me to become better at the computer scientist role. Discovering new ways of thinking, new algorithms that can be applied to other real-world scenarios, and more. The problems on that site, in which I have the MOST difficulty with, are usually the ones that require knowledge of an algorithm or formula that I have not yet discovered however. Additionally, I've found it pretty easy to tell which questions these are by whether or not I find myself being "required" to write a bruteforce-style "solution."

I can see you are like me though, you strike me as having the ambition to learn about these kinds of things.
« Last Edit: October 14, 2014, 01:10:23 am by ArkPhaze »
sig=: ArkPhaze

[ J/ASM/.NET/C/C++ - Software Engineer ]

Offline Xires

  • Noob Eater
  • Administrator
  • Knight
  • *
  • Posts: 379
  • Cookies: 149
    • View Profile
    • Feed The Trolls - Xires
Re: Tasks, Suggestions C++
« Reply #10 on: October 15, 2014, 02:18:50 pm »
The problem I keep having with 80% of the project euler problems, after about Q#~150 or so especially, is that the majority of them require a math genius that understands how to derive mathematical patterns out of a solution set, or common logic between possible solutions, rather than a programmer that is able to come up with an algorithm to do as such. Regardless if your algorithm is accurate and efficient, and whether or not it's a bruteforce, seems like it's not enough once you solve a few.

The questions up to about Q#50 are good though. After that it requires less of a programmer and more of a mathematician, and increasingly so, onwards...

Honestly, I tend to somewhat agree.  Whilst I don't believe that they require a 'mathematician', specifically, I do believe that they tend to require a level of mathematical understanding beyond that of an undergraduate.  However, I also believe that the courses offered for computer science majors involve enough math that a bachelor's degree should be sufficient for everything I've seen on that site, to date.

I never said all of them are complex, which is why if you read my post you'll notice that I put a percentage of the latest questions that are complex. If you'd like to prove something, then solve it:

https://projecteuler.net/problem=481

Full explanation and code required. I'll be waiting for it.

A couple things to note:

  • I have not had adequate education(I uhh..didn't really 'do' highschool..but eventually got my GED) to understand this problem completely, in a mathematical sense.  Also, I have had many seizures in my lifetime and it tends to fsck up thinkery.
  • I am, however, very 'good' at math..because I'm good at logic.  That is to say that I pick it up(though not necessarily quickly) given adequate information from which to learn.  I am the kind of person who picks up math best by looking at a few examples and completely ignores the instructions.  I just need to see the problems and solutions and I'll figure out my own way to get there(which tends to make very little sense to many others but always gets the right answer).

Now that those points have been stated; I understood this problem just fine as a programmer.  I can't guarantee that I'd be able to provide a solution but I understood it without needing to reference a mathematician(or Google).  So let me give a brief overview of my initial analysis of the problem text, as I analyze it.

First paragraph:
While reading, I initially suspect that 'S' is meant to define a 'set'(5th-grade-mathematically speaking).  Later this is confirmed as a collection of skill levels, which to me can be represented as an array in C or 15 different potential STL containers from C++.  Understanding that this is meant to be 'turn-based' and that the collection will be iterated upon, a C++ std::set seems like it'd work pretty damned well(as it can be accessed as a queue, deque or vector).  Fsck probabilities.  I'll probably ignore that part for now.  I may have to come back to it at some point to figure out more about what is desired in the solution so I'll make a mental note to keep checking it as I continue to see if my understanding of the rest improves how I interpret this part.  The 'favorable rating' thing makes little sense at the moment, but I figure they'll probably explain enough for me to make sense of it as well; mental note #2 made.  Doing an elimination so std::set is still fine.  Hoping the 'chef choice' doesn't actually mean something weird is going to be required.  Nothing defines a performance demand(yet), so I'm unconcerned with any lack of efficiency that may occur with my choice of data structure.

Current Synopsis:
Code: (c++) [Select]
typedef struct {
  int id,    // chef id
       skill; // chef skill level
} Chef;

std::set<Chef> *S; // set of chefs to test, iteratively

Second paragraph:
Starting with first chef so starting iterator at index 0.  Stumble slightly over the mention of cycle repeating with "lowest-numbered" chef.  After about 10 seconds of thought, I realize they're accounting for the fact that index 0 can potentially be eliminated so it makes sense and no changes to mental code draft.  Umm..wtf is this next sentence really saying(the one about optimizing chances for winning)??  Please please please don't make me realize my fear from the previous paragraph and force me to implement an AI.  Anything even as rudimentary as an FSM is going to piss me off.  Next sentence puts me a little more at ease as I realize that all they're saying is that the second-highest skill level will be eliminated from the set.  Thus, subset sorting will probably be used.  This means keeping two variables available; one for the 'max' and one for whatever that 'max' replaced.  If there's a tie, eliminate the lowest of the tied indices.  That tells me that I can use iterators to indicate 'first' and 'second' place winners.  This way, as long as one doesn't replace the max(first), the old max(second) doesn't change and thus will always point to the first in the list that had that value.  An alternative method would be simply keeping track of the values and then doing a search on the set to find what had that value.  I may not be going for optimal efficiency but that latter method would be, to me, a fscking crime.

Current Synopsis:
Code: (c++) [Select]
typedef struct {
  int id,    // chef id
       skill; // chef skill level
} Chef;

std::set<Chef> *S; // set of chefs to test, iteratively

/*
 * somehow filling the set with data
 */

std::set<Chef>::iterator i, max, omax;

i = max = omax = S->begin();

do {
  if (i->skill > max->skill) {
    omax = max;
    max = i;
  } else if (i->skill > omax->skill) // still need to test against omax or else we could end up accidentally missing the second-place winner
    omax = i;
} while (i++ != S->end());

S->erase(omax);

A quick note about above; as I was writing that, I initially thought that I might only need the first test.  Mentally, I imagined it organized in a descending order and realized that if "omax" never got replaced, the first-placed 'winner' could end up trying to eliminate itself.  Thus, I added the second test to help eliminate that.  So, pro-tip; always mentally debug your code as you're writing it.

Third paragraph:
WHAT
THE
FUCK
!?
Okay..let's step through this... Wn(k): W is the 'winner' or 'winning' probability..fsck probabilities.  W is a something.  It's.....the winning chance(same meaning but makes me feel better inside).  So 'n' is stated in the same sentence as "n chefs" so 'n' is the total number of chefs.  Got it.  And 'k' was mentioned in the first paragraph as denoting the 'current' chef(as in, the iterator 'i').  Okay..makes sense so far.  Wincing as we progress to the next sentence.  S..umm, skill level(mentioned in paragraph #1)..okay.  S(1) denotes, for me, S[S->begin()] or S[0].  So, the first index.  S[0] = 0.25, S[1] = 0.5, S[2] = 1 so ??? 0.29375.  Dafuq.  I KNOW S[0] is fscked..he ain't winnin' shit.  I also know that's essentially what they're trying to say.  But where the fuck are they pulling these random digits from?  *takes breath*  Okay..0.25, 0.5, 1.0(realizing I'm going to have to change the struct to use floats).  S[0] has a 33% chance of winning IF they were all equal(well, not really because the code wouldn't change max or omax so S[0] would have a 100% chance of winn....fsck, being eliminated; FOUND ANOTHER BUG!).  But since they're not equal, it's going to shift the possibility of winning down, because S[0] is a lazy fscker.  Oh wait..it's denoting the chances that S[0] will win the whole competition(meaning AFTER an elimination), not winning the round.  Okay, so..S[0]'s chances of winning the first round are 33%(really, 0, but meh).  AFTER that, its chances are 50%(again, really 0) if it survived the first round(which it should).  So....0.25*0.5 doesn't give me 0.29375.  Hrm... Okay, after pondering this for about half an hour, I've come to the conclusion that I have no idea how to do this and would have to resort to Googling basic probability.  After half an hour of reading and Googling..basic probability doesn't seem to be enough.  I've now come to the conclusion that I don't even know what to call this particular type of statistical math problem(still speaking about just this one paragraph).  I simply lack the education in this area and would thus need to research the whole of statistics/probability.  It would probably take me a full weekend, if not a full week.  Since I don't plan to take that amount of time here, I'm going to try skipping it and hoping that I don't actually need to understand it.

Current Synopsis:
Code: (c++) [Select]
typedef struct {
  int id,    // chef id
       skill; // chef skill level
} Chef;

std::set<Chef> *S; // set of chefs to test, iteratively

/*
 * somehow filling the set with data
 */

std::set<Chef>::iterator i, max, omax;

i = max = omax = S->begin();

do {
  if (i->skill > max->skill) {
    omax = max;
    max = i;
  } else if ((max == omax) || (i->skill > omax->skill)) // still need to test against omax or else we could end up accidentally missing the second-place winner; inefficient, I know, but this should help us ensure that we don't eliminate the winner
    omax = i;
} while (i++ != S->end());

S->erase(omax);

Another note; it's also possible to temporarily copy "max" to a new variable, eliminate it from S and rerun the test.  Whatever the new "max" is in that test becomes "omax".  I don't know if I like that solution right now but it would definitely work.  Of course, std::max() exists for a reason too.

Fourth paragraph:
Ugh.  Okay, I know what the Fibonacci sequence is and that's not really helping.  Current skill level equals F(current index + 1) divided by F(total number of elements in set + 1).  So Fibonacci sequence runs as F1 = 1, F2 = 1, F3 = 2, F4 = 3, F5 = 5, and so on.  So if we just have 3 in our set, S[0]->skill = 1/4, S[1] = 2/4, S[2] = 3/4.  At least that's the way it looks.  I'm not sure what the whole Fk-1 is, though.  If F1 = 1 and F1 - 1 = 0, then F1-2 would be invalid.  If you resolve it by just using 0, then S[0]->skill = (1+0)/3.  Furthermore, the numbers provided as an example also make no sense as I can't determine how they were obtained.  And here I'm stuck.  Because I can't understand this, I can't see how to design a solution.  The next 2 lines are effectively meaningless.

And here is precisely where ArkPhaze's point comes in; this is more math than programming.  However, it is still material that should have been covered in course material for a programming degree.  Unfortunately, some of us cannot afford those degrees.  I'm sure there's material on the Internet that would provide for an adequate understanding but that's going to take some time.  Thus, to me, the Project Euler website becomes "look what we can do with our edumacation".  So...not to be offensive to those with or pursuing a degree(I'm attempting to go back to school too, hopefully), but with such wondrous education, I find it quite incredible that they often don't know shit otherwise.  I'm sure something like this could actually be useful(like..in a game, perhaps a mobile game, possibly involving gambling), but I don't see it as a decent learning/practice exercise for those that are looking to actually code.

Incidentally, I also checked the forums regarding #481 to see if anyone indicated what type of math I might want to Google.  I found it interesting that someone there mentioned the same issue that HTH found.  Also, the poster's query indicated that they had a misunderstanding regarding the interpretation of the fourth paragraph as well.  Perhaps this just means that the person who posted it needs to edit it for clarity.

If anyone wanted to explain to me the skill assignments they're requesting, I'm sure this would be relatively easy to code.  On a different note, if I was assigned this project as a developer working in a business, I would tell them flat out that the requested parameters are improperly defined and I needed clarification.  Of course, I happen to feel that all project parameters should be defined as pseudocode anyway so maybe I'm being unreasonable.

Final note; 80+% of companies I've worked with/for identify a 'software engineer' as a developer.  A 'software architect' is the guy identifying problems & designing solutions.  They then hand it over to the software engineer project lead who simply assigns who does what part & keeps track of everything.  The 'computer scientist' role is technically correct, but that task is also usually left to the software engineers.  The software architect is often consulted on approach so as to break things down for the project and makes it easier for the software engineers to implement.
« Last Edit: October 17, 2014, 08:50:14 am by Xires »
-Xires

Offline Xires

  • Noob Eater
  • Administrator
  • Knight
  • *
  • Posts: 379
  • Cookies: 149
    • View Profile
    • Feed The Trolls - Xires
Re: Tasks, Suggestions C++
« Reply #11 on: October 15, 2014, 02:42:21 pm »
For the OP; NATO specifies a phonetic alphabet for use in accurately identifying letters & numbers in telecommunications: http://en.wikipedia.org/wiki/NATO_phonetic_alphabet

Create a program which accepts a line of user input and outputs that line using the NATO phonetic substitution.  Allow the user to enter another phrase as they desire.  A single 'fullstop' by itself should end the loop.

Example:
Code: [Select]
Enter your phrase: WTF 19.

Whiskey Tango Foxtrot One Niner STOP

Enter your phrase: .

Next, do the same in reverse, allowing the user to enter NATO phonetic code for the program to output as normal text.

Later, if you feel so inclined, you can use such a function for basic key expansion to turn a single key into something convoluted and oddly more appropriate for hash generation.
-Xires

Offline HTH

  • Official EZ Slut
  • Administrator
  • Knight
  • *
  • Posts: 395
  • Cookies: 158
  • EZ Titan
    • View Profile
Re: Tasks, Suggestions C++
« Reply #12 on: October 15, 2014, 03:05:48 pm »

Hey Xires :p


I suppose I'll be forced to believe you on the last part about Software Engineers being treated as developers. It sucks, but hey I already knew I was only paying for a degree not real education. It means I get a bunch of well rounded learnin' (anyone care to discuss economics?) But it also means I start 100 grand in the hole... bah. Such is life.


I also am tending to agree more with ArkPhaze and yourself, partially because I was briefly under the misguided thought that people in this field had by and large taken these classes, and would have a full grasp on them as most were covered in first or second year.. Which (after thinking about it) is a crock (and probably evidence I should GTFO of academia). (and no offense taken with the comment about those pursuing a degree)


I don't overly enjoy being wrong but I like to think I'm man enough to admit it when I am.


If you'd genuinely like to hear about the math behind Paragraph 3/4 then you can message me any way you like. I think you've answered enough of my questions (usually dumb ones) over the years that I can answer any I can for you :) I would answer any Q's you may have right now but... well honestly it is 7 am and I stayed up all night studying Circuit Simplifications and Second Order Differential Equations for a series of midterms that's today :p


Ironically, the code problem you gave to OP is very similar to one I gave to a person over IRC (mine was a bit more involved but the person on IRC is a bit more advanced)

<ande> HTH is love, HTH is life
<TurboBorland> hth is the only person on this server I can say would successfully spitefuck peoples women