我被卡在一個奇怪的關閉我的小程序!即使我有cin.get(),程序也會停止。
程序會計算達到儲蓄目標的年數。 但在代碼中沒有問題,我根本沒有看到問題。當我運行程序時,它完全停止後,這也是當我把cin.get();這應該讓程序等待按鍵。
未檢測到錯誤。我還補充說明,我已經在VS 2015和Netbeans中使用了相同的代碼,結果相同。我在VS中創建了一個新項目,並從netbeans複製了代碼。
希望快速回答!
這是我的代碼!
/* Savingscalculation.cpp : Defines the entry point for the console
application.*/
#include "stdafx.h"
#include "iostream"
using namespace std;
int main()
{
// Sätter variabler för programmet.
float inputsaving;
float savingoal;
int years = 0;
float interest;
float savingsum;
float savsum;
/* Sätter ett introduktionsmeddelande, som får programmet att upplevas mer
proffessionellt */
cout << " ------------------------------" << endl;
cout << "| Räkna ut hur många år ditt |" << endl;
cout << "| sparande kommer att ta! |" << endl;
cout << "| Tryck enter för att |" << endl;
cout << "| fortsätta. |" << endl;
cout << " ------------------------------" << endl;
cin.get();
cout << "---------------------------------" << endl;
cout << "Ange ett sparmål: "; // Användaren ombeds att ange ett sparmål
cin >> savingoal; // Det angivna sparmålet sätts till variabeln
cout << "---------------------------------" << endl;
cout << "Ange en årlig insättning: ";
// Användaren ombeds att ange en årlig insättning
cin >> inputsaving;
// Den angivna insättningen sätts till variabeln inputsaving
cout << "---------------------------------" << endl;
cout << "Ange en årlig sparränta: ";
// Användaren ombeds att ange en procentsats
cin >> interest; // Den angivna räntan sätts till variabeln interest
cout << "---------------------------------" << endl;
// Inmatning klar
// uträkning börjar //
// Algoritmen för att räkna ut en insättning + räntan för ett år
savingsum = inputsaving + inputsaving*(interest/100); cout << endl;
savsum = savingsum;
/* Den uträknade summan kopieras in i variabeln
savsum för vidare uträkning i loopen */
while (savingsum < savingoal)
/* Jämför sparandet per år med sparmålet,
loopen fortsätter tills sparmålet uppnåtts. */
{
years++; // Räknar ut antal år med +1 för varje varv i loopen
savingsum = savingsum + savsum; /* Lägger på 1 års insättning inkl.
räntan för varje nytt år (varv) */
}
// uträkning klar //
// Sparmålet uppnått och resultatet skrivs ut på skärmen.
cout << "------------------------------------" << endl;
cout << "Du har uppnått ditt mål efter " << years << " år" << endl;
// Skriver ut antal år tills sparmålet uppnåtts
cout << "Ditt saldo är då " << savingsum << "kr" << endl;
// Skriver ut saldot som är när sparmålet är nått
cout << "------------------------------------" << endl;
cin.get();
return 0;
}
問候 亨裏克
我解決了!我加了3個cin.ignore(); 1)在「感興趣」輸入之後,2)在循環3)處於程序結束之前處於第一次計算。感謝所有關於我的問題的幫助! –