waraxe |
Site admin |
|
|
Joined: May 11, 2004 |
Posts: 2407 |
Location: Estonia, Tartu |
|
|
|
|
|
|
Tere tulemast foorumisse!!
I use M$ Visual C++ for programming in C and when i copy-pasted this source code and tried to compiel it, i got 3 warnings and 2 errors.
So what's wrong?
1. line "printf("x1=%lg\nx2=%lg\n",(-b+scrt(d))/(2.0*a),(-b-scrt(d))/(2.0*a)); " must be as "printf("x1=%lg\nx2=%lg\n",(-b+sqrt(d))/(2.0*a),(-b-sqrt(d))/(2.0*a)); "
Because compilator was not able to find function scrt(), and thats just typo, i guess.
2. line "char j,e;" is not needed and get's warning from compiler:
"unreferenced local variables".
3. line "printf("v?rrand on (%lg)*x*x+(%lg)*x(lg)\n",a,b,c); "
there is some code missing before last "lg"...
4. just to be mention - imaginary unit is "i", not "j", as in original source code. Ref: http://mathworld.wolfram.com/ImaginaryUnit.html
So, after all the fix-ups source code will be as:
Code: |
/*
Ruutv?rrandi lahendamise progre
*/
#include <stdio.h>
#include <conio.h>
#include <math.h>
/*
*/
void main(void)
{ double a,b,c,d;
int v;
/*
Kordajate sisselugemine
*/
while (1) /* vigade puhul saab sisestust korrata */
{printf("V?rrand on kujus a*x*x+b*x+c=0\n");
printf("Palun sisesta kordajad:\n");
while (1) /* kordaja ei tohi olla null */
{printf("a=");
scanf("%lf",&a);
if (a)
break;
else
{printf("Niimoodi ei teki ruutv?rrandit!\n");
printf("palun korrata!\n");}}
printf("b=");
scanf("%lf",&b);
printf("c=");
scanf("%lf",&c);
printf("v?rrand on (%lg)*x*x+(%lg)*x+(%lg)\n",a,b,c);
printf("Kas see vastab teie soovile? (j/e)\n");
while ((v=getch())!='j' &&v!='e'); /* ei tohi reageerida valele s?rmisele */
if (v=='j')
break;
else
printf("\n\n\n\nAlgame otsast peale!\n\n\n");}
/* Reaalarvulised Lahendid */
if ((d=b*b-4.0*a*c)>=0.0)
printf("x1=%lg\nx2=%lg\n",(-b+sqrt(d))/(2.0*a),(-b-sqrt(d))/(2.0*a));
/* kompleksarvulised lahendid */
else
printf("x1=%lg+i*%lg\nx2=%lg-i*%lg\n",
-b/(2.0*a),sqrt(-d)/(2.0*a),
-b/(2.0*a),sqrt(-d)/(2.0*a));
/*
L?PETAMINE
*/
printf("N?GEMISENI");
return;}
|
Now it will compile on M$ VC++ 5.0 (don't know about other compilators) and seems to work properly. |
|