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

Posted on 2008-10-28
Medium Priority
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 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 () {

Open in new window


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)
      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
Will your db performance match your db growth?

In Percona’s white paper “Performance at Scale: Keeping Your Database on Its Toes,” we take a high-level approach to what you need to think about when planning for database scalability.


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: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering 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

One of Google's most recent algorithm changes affecting local searches is entitled "The Pigeon Update." This update has dramatically enhanced search inquires for the keyword "Yelp." Google searches with the word "Yelp" included will now yield Yelp a…
Article by: Nadia
Suppose you use Uber application as a rider and you request a ride to go from one place to another. Your driver just arrived at the parking lot of your place. The only thing you know about the ride is the license plate number. How do you find your U…
The viewer will learn how to use NetBeans IDE 8.0 for Windows to connect to a MySQL database. Open Services Panel: Create a new connection using New Connection Wizard: Create a test database called eetutorial: Create a new test tabel called ee…
The viewer will learn how to use and create keystrokes in Netbeans IDE 8.0 for Windows.

800 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