Меня очень сильно волнует один вопрос.
Я написал для себя програмку на QBasic:
CLS
INPUT a
INPUT b
INPUT c
d = b ^ 2 - 4 * a * c
e = SQR(d)
IF d > 0 THEN x1 = (-1 * b - e) / (2 * a): x2 = (-1 * b + e) / (2 * a): PRINT "x1 = ", x1: PRINT "x2 = ", x2
IF d = 0 THEN x = (-1 * b - e) / (2 * a): PRINT "x = ", x
IF d < 0 THEN PRINT "No roots!"
SLEEP
Та же программа, только на C++ компилируется в просто огромные 465 КБ
#include <cstdlib>
#include <iostream>
#include <stdio.h>
#include <math.h>
using namespace std;
int a;
int b;
int c;
int d;
int k;
double e;
double x1;
double x2;
double x;
int main(int argc, char *argv[])
{
cout << "Enter a,b,c
";
cin >> a;
cin >> b;
cin >> c;
d = b*b - 4 * a * c;
e = sqrt(d);
if (d > 0)
{
x1 = (-1*b-e)/(2*a);
x2 = (-1*b+e)/(2*a);
cout << "x1= ";
cout << x1;
cout << "
";
cout << "x2= ";
cout << x2;
}
if (d == 0)
{
x = (-1*b+e)/(2*a);
cout << "x= ";
cout << x;
}
if (d < 0)
{
cout << "No roots!";
}
cout << "
";
system("PAUSE");
return EXIT_SUCCESS;
}
у C++ компилятор g++
Win 7 x64
Что я делаю не так?