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