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

Posted on 2008-10-28
Last Modified: 2013-12-14
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$
Question by:redscarf
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Accepted Solution

zmo earned 250 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 () {

Open in new window


Assisted Solution

KoBeC earned 250 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)
      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.

Expert Comment

ID: 22825450
hehe like one say, timtoady
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


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.
LVL 16

Expert Comment

ID: 22826028

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

Expert Comment

ID: 22826959
so I follow sh0e for his links, and I advice you to begin with

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...).

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.

Author Closing Comment

ID: 31510882
Thank You !

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

In our object-oriented world the class is a minimal unit, a brick for constructing our applications. It is an abstraction and we know well how to use it. In well-designed software we are not usually interested in knowing how objects look in memory. …
How to install Selenium IDE and loops for quick automated testing. Get Selenium IDE from Go to that link and select download selenium in the right hand columnThat will then direct you to their download page.From that page s…
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
The viewer will learn how to synchronize PHP projects with a remote server in NetBeans IDE 8.0 for Windows.

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question