1

誰かが助けてくれることを願っています。エラーなしでコンパイルできます。構文エラーは見つかりませんが、これを実行するとクラッシュします。起動時にセグメンテーション違反をデバッグします。完全な開示、これは宿題です。私は誰かにこれをコーディングするように頼んでいるわけではありません。私の問題と私の既存のコードを見て、これをひどく壊した私がしたことを指摘してください。

質問: あなたは 5 週間のエキサイティングな夏の仕事を見つけました。たとえば、1 時間あたり 15.50 ドルです。夏の仕事の収入に対して支払う税金の合計が 14% であるとします。税金を支払った後、純収入の 10% を次の学年の新しい服やその他のアクセサリーの購入に使い、1% を学用品の購入に使います。衣類や学用品を購入した後、残りの 25% のお金を使って貯蓄債を購入します。あなたが貯蓄債を購入するために使う 1 ドルごとに、両親は 0.50 ドルを使って追加の貯蓄債を購入します。1 時間あたりの賃金率と毎週の労働時間数を入力するようユーザーに求めるプログラムを作成します。次に、プログラムは以下を出力します。夏の仕事からの税引前と税引後の収入。b. 服やその他のアクセサリーに費やすお金。c. 学用品に使うお金。d. 貯蓄国債を購入するために使うお金。e. あなたの両親があなたのために追加の貯蓄債を購入するために使うお金。

コード:

// Libraries defined 
#include <iomanip>  
#include <iostream> 

using namespace std; 

//Main function 
int main () 

{ 

//Input variables 
    double hourlyrate; 
    double hweek1; 
    double hweek2; 
    double hweek3; 
    double hweek4; 
    double hweek5; 

//Output variables 
    double beforetax; 
    double netincome; 
    double clothmoney; 
    double suppliesmoney; 
    double moneyonbonds; 
    double additionalbonds; 
    double remain; 

//This statement takes care of the decimal places 
    cout << fixed << showpoint << setprecision(2);  

//Input from user 
    cout << "Enter your hourly rate: " << hourlyrate; 
    cin >> hourlyrate; 
    cout << "Week 1: " << hweek1; 
    cin >> hweek1; 
    cout << "Week 2: " << hweek2; 
    cin >> hweek2; 
    cout << "Week 3: " << hweek3; 
    cin >> hweek3; 
    cout << "Week 4: " << hweek4; 
    cin >> hweek4; 
    cout << "Week 5: " << hweek5; 
    cin >> hweek5; 

//Mathematics 
    beforetax = hourlyrate * (hweek1 + hweek2 + hweek3 + hweek4+ 
    hweek5) ; 
    netincome = beforetax - beforetax * 0.14; 
    clothmoney = netincome * 0.1; 
    suppliesmoney = netincome * 0.01; 
    remain = netincome - clothmoney - suppliesmoney; 
    moneyonbonds = remain * 0.25; 
    additionalbonds = static_cast<double>(moneyonbonds) * .50; 

//Output to user 
    cout << endl << "Income before tax = $" << beforetax << endl 
    << "Net income = $" << netincome << endl << "Money for clothes/accesories = $"
    << clothmoney << endl << "Money for supplies = $"<< suppliesmoney << endl 
    << "Money for saving bonds = $" << moneyonbonds << endl 
    << "Additional saving bonds money = $" << additionalbonds; 


return 0; 
}
4

2 に答える 2

3

このエラーを受け取りました ここに画像の説明を入力

cout << "Enter your hourly rate: " << hourlyrate;

変数を初期化する前に変数を出力しようとしました。これはおそらく意図的ではありません。

次の行は

cin >> hourlyrate

どの変数でも同じです。それらを初期化するか、出力しないでください。

于 2013-09-19T00:55:31.713 に答える
1

あなたはこれについて確信を持っていますか:

cout << "Enter your hourly rate: " << hourlyrate; 
cin >> hourlyrate; 
cout << "Week 1: " << hweek1; 
cin >> hweek1; 
cout << "Week 2: " << hweek2; 
cin >> hweek2; 
cout << "Week 3: " << hweek3; 
cin >> hweek3; 
cout << "Week 4: " << hweek4; 
cin >> hweek4; 
cout << "Week 5: " << hweek5; 
cin >> hweek5;

あなたが望んでいたと思います:

cout << "Enter your hourly rate: "; 
cin >> hourlyrate; 

それ以外の:

cout << "Enter your hourly rate: "<< hourlyrate; 
cin >> hourlyrate; 
于 2013-09-19T01:11:12.677 に答える