954,505 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

can't get fee

hi ,
i'm writing a program which calculates registration fee of student and this program opens an external txt file.It's my first time writing a program with an input file so i'm kinda confused.my program asks for the status and number of credits but does not gimme the fee.


#include
#include
#include
#include
#include
#include
using namespace std;

int main()

{

string filename = "registration fee.txt";

ifstream inFile;


int n;
double fee;
char response1,response2;

char i,o,u,g;

inFile.open("registration fee.txt");

cout<<"please enter your status of residence,type i or o"<>response1;

cout<<"please enter your status of study,type u or g"<>response2;

cout<<"please enter your number of credits"<>n;
i = 0;
u = 0;
if ((response1 == i)&& (response2 == u))

{

if (n < 12)

{

fee = ((280 *n *0.35)+ (43 * n));

cout<<"status of residence : " << response1<= 12)

{

fee = ((280 *n *0.35)+ (43 * 12));

cout<<"status of residence : " << response1<= 9)

{

fee = (400 * n * 0.35) + (43 * 9) + 10;

cout<<"status of residence : " << response1<= 12)

{

fee = (280 * n) + (43 * 12);

cout<<"status of residence : " << response1<= 9)

{

fee = (400 * n * 0.35) + (43 * 9) + 10;

cout<<"status of residence : " << response1<

barbie 2
Newbie Poster
4 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

A few things that stand out are:

-You're reading a file but what are you actually doing with it?

if ((response1 == o)&& (response2 == u))

Those letters should be surrounded with apostrophes like so 'o' 'u'

-Are those nested if statements actually what you want? I don't think so.

I don't know, have a look at the code below....

#include <iostream>
#include <fstream>
#include <iomanip>
#include <cstdlib>
#include <cmath>

using namespace std;

int main()
{
  string filename = "registration fee.txt";

  ifstream inFile;
  int n;
  double fee;
  char response1, response2;

  char i, o, u, g;
  inFile.open ( "registration fee.txt" );

  cout << "please enter your status of residence,type i or o" << endl;
  cin >> response1;

  cout << "please enter your status of study,type u or g" << endl;
  cin >> response2;

  cout << "please enter your number of credits" << endl;
  cin >> n;
  i = 0;
  u = 0;
  if ( ( response1 == 'i' ) && ( response2 == 'u' ) )
  {
    if ( n < 12 )
    {
      fee = ( ( 280 * n * 0.35 ) + ( 43 * n ) );
      cout << "status of residence : " << response1 << endl;
      cout << "status of study : " << response2 << endl;
      cout << "number of credits : " << endl;
      cout << fee << endl;
    }
    else if ( n >= 12 )
    {
      fee = ( ( 280 * n * 0.35 ) + ( 43 * 12 ) );
      cout << "status of residence : " << response1 << endl;
      cout << "status of study : " << response2 << endl;
      cout << "number of credits : " << endl;
      cout << fee << endl;
    }
  }
  g = 0;
  if ( ( response1 == 'i' ) && ( response2 == 'g' ) )
  {
    if ( n < 9 )
    {
      fee = ( 400 * n * 0.35 ) + ( 43 * n ) + 10;
      cout << "status of residence : " << response1 << endl;
      cout << "status of study : " << response2 << endl;
      cout << "number of credits : " << endl;
      cout << fee << endl;
    }

    else if ( n >= 9 )
    {      fee = ( 400 * n * 0.35 ) + ( 43 * 9 ) + 10;
      cout << "status of residence : " << response1 << endl;
      cout << "status of study : " << response2 << endl;
      cout << "number of credits : " << endl;
      cout << fee << endl;
    }  
   }
  o = 1;
  if ( ( response1 == 'o' ) && ( response2 == 'u' ) )
  {
    if ( n < 12 )
    {
      fee = ( 280 * n ) + ( 43 * n );
      cout << "status of residence : " << response1 << endl;
      cout << "status of study : " << response2 << endl;
      cout << "number of credits : " << endl;
      cout << fee << endl;
    }

    else if ( n >= 12 )
    {
      fee = ( 280 * n ) + ( 43 * 12 );
      cout << "status of residence : " << response1 << endl;
      cout << "status of study : " << response2 << endl;
      cout << "number of credits : " << endl;
      cout << fee << endl;
    }
  }

  if ( ( response1 == 'o' ) && ( response2 == 'g' ) )
  {
    if ( n < 9 )
    {
      fee = ( 400 * n * 0.35 ) + ( 43 * n ) + 10;
      cout << "status of residence : " << response1 << endl;
      cout << "status of study : " << response2 << endl;
      cout << "number of credits : " << endl;
      cout << fee << endl;
    }

    else if ( n >= 9 )
    {      fee = ( 400 * n * 0.35 ) + ( 43 * 9 ) + 10;
      cout << "status of residence : " << response1 << endl;
      cout << "status of study : " << response2 << endl;
      cout << "number of credits : " << endl;
      cout << fee << endl;
    }
  }

  inFile.close();
  system ( "pause" );
  return 0;
}
iamthwee
Posting Expert
5,950 posts since Aug 2005
Reputation Points: 1,543
Solved Threads: 439
 

thank you very much ,i corrected my mistakes and my program is now working

barbie 2
Newbie Poster
4 posts since Sep 2007
Reputation Points: 10
Solved Threads: 0
 

Ok, :) Can you explain what the file is for though? Or are you going to work on that now?

iamthwee
Posting Expert
5,950 posts since Aug 2005
Reputation Points: 1,543
Solved Threads: 439
 

This question has already been solved

Post: Markdown Syntax: Formatting Help
You