Solved

# I have to write an algorithm to calculate an architect`s fee.

Posted on 2008-10-28
Medium Priority
415 Views
I have to write an algorithm to calculate an architect`s fee. The fee is calculated as a percentage of the cost of a building. The fee is made up as follows: 8% of the first 5000.00\$ of the cost of a building and 3% on the remainder if the remainder is less than or equal to 80000.00 or 2 1/2 %  on the remainder if the remainder is more than 80000.00\$. The algorithm will accept the cost of a building and calculate and display the architect`s fee. Test the program with the following costs of buildings: 1000000\$
800000\$
50000\$
35000\$
0
Question by:redscarf

LVL 5

Accepted Solution

zmo earned 1000 total points
ID: 22824953
Hum.... this looks like a school work.

I shouldn't do that, but as easy as it is, I found it funny to do... it remember me my first year of university, when we were asked stupid questions.

but you have to know, if you ask others to do your homework for you, you won't get far.
``````int calculate_fee(int cost) {
int result;
if (cost <= 5000)
throw new NotInterestingGetAnotherArchitectError();
//      or simply 'return 8*cost/100;'

// 8% of the first 5000.00\$ of the cost of a building
result = 8*5000/100;

// remainder
cost = cost - 5000;

// 3% on the remainder if the remainder is less than or equal to 80000.00
if (cost <= 80000) {
result = result + 3*cost/100;
else // or 2 1/2 %  on the remainder if the remainder is more than 80000.00\$.
result = result + 2.5*cost/100;
return result;
}

int main () {
...
calculate_fee(...)
...
}
``````
0

Assisted Solution

KoBeC earned 1000 total points
ID: 22825101
I agree, this looks like an assignment! I am going to give you the code though, but try to redo it yourself. It's really easy:

double architectFee(double cost)
{
cost-=5000;
if (cost<0)
return 0;
else if (cost>80000)
return 5000*0.08 + cost*0.025;
else return 5000*0.08 + cost*0.03;
}

This function does it. Like I said, try to do it yourself, it is simple.
0

LVL 5

Expert Comment

ID: 22825450
0

Author Comment

ID: 22825538
first of all i thank you for the code, second let me explain:: we have been given abou 20 problems ( the one above is the second of the list) and no one has explained us neither the if,else statement or the switch, when we ask we are given WRONG solutions that make us going crazy for days. So we never know what is right and what is wrong. I borrowed 2 C++ books but are not really usefull. Have You got any suggestion? If You know the title of a good C++ book please let me know as i am in Deep S.....Thank You again.
0

LVL 16

Expert Comment

ID: 22826028
http://www.cprogramming.com/tutorial.html#c++tutorial
http://www.cplusplus.com/doc/tutorial/

You'll learn faster by doing.  When you have time and are more advanced, go get a normal programming book.
0

LVL 5

Expert Comment

ID: 22826959

The C language, by Kernighan & Ritchie to learn all the basics of C (and that class of languages)
read also a good book on algorithmics (but I know none in English, sorry) and object oriented programming.

Once you've read all of that, The C++ Language by Bjarne Stroustrup is the next step to go. It's very hard to read, but once you've understood the main ideas of it, you'll be able to switch to any language without a problem (Java, Python, Ruby, whatever...).
0

Author Comment

ID: 22827016
Thanks  to both of You again and duble thanks for having understood  my situation and for the good suggestions about books and tutorials.
0

Author Closing Comment

ID: 31510882
Thank You !
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Programmer's Notepad is, one of the best free text editing tools available, simply because the developers appear to have second-guessed every weird problem or issue a programmer is likely to run into. One of these problems is selecting and deletiā¦
When there is a disconnect between the intentions of their creator and the recipient, when algorithms go awry, they can have disastrous consequences.
The viewer will learn how to use and create keystrokes in Netbeans IDE 8.0 for Windows.
The viewer will learn how to use and create new code templates in NetBeans IDE 8.0 for Windows.
###### Suggested Courses
Course of the Month3 days, 3 hours left to enroll