Witam :) mój pierwszy post i od razu problem.
Z racji wymagań jakie będę musiał w przyszłości spełnić by znaleźć pracę potrzebuję znajomości C++.
Problem pojawia się na samym początku przy wyborze programu, zdecydowałem, że chciałbym pisać w Visual Studio 2015. Bardziej odpowiada mi design całego produktu i to jakie sprawia pierwsze wrażenie. Zainstalowałem też Code Blocks dla porównania. By sprawdzić jak to wszystko wygląda użyłem kodu na całkowanie z pewnej strony
// Calkowanie numeryczne - metoda Monte-Carlo
// www.algorytm.org
// (c)2007 by Tomasz Lubinski
#include "stdio.h"
#include "stdlib.h"
#include "math.h"
#include "time.h"
#define MAX(a,b) (a>b)?a:b
//funkcja dla ktorej obliczamy calke
float func(float x) {
return x*x+3;
}
//1 jeżeli punkt leży nad osią OY i jednocześnie pod wykresem funkcji całkowanej
//-1 jeżeli punkt leży pod osią OY i jednocześnie nad wykresem funkcji całkowanej
//0 w przeciwnym razie
int funcIn(float x, float y) {
if (( y > 0) && (y <= func(x)))
return 1;
else if (( y > 0) && (y <= func(x)))
return -1;
return 0;
}
//random number from a to b
double randomPoint(double a, double b) {
return a + (double)rand()/(double)(RAND_MAX+1) * (b-a);
}
//get data, algorithm
int main(){
float xp, xk, yp, yk, calka;
int i, n, pointsIn;
printf("Podaj poczatek przedzialu calkowania\n");
scanf("%f", &xp);
printf("Podaj koniec przedzialu calkowania\n");
scanf("%f", &xk);
printf("Podaj dokladnosc calkowania (w setkach punktow)\n");
scanf("%d", &n);
n *= 100;
yp = 0;
yk = ceil(MAX(func(xp), func(xk)));
pointsIn = 0;
srand((unsigned)time( NULL ));
for (i=0; i<n; i++) {
pointsIn += funcIn(randomPoint(xp, xk), randomPoint(yp, yk));
}
calka = (pointsIn / (double)n) * ((xk-xp) * (yk-yp));
printf("Wartosc calki wynosi w przyblizeniu %f\n", calka);
return 0;
}
W Code Blocks wybieram New Project - Files - C++Source - wpisuję kod - build i elagancko powstaje plik .exe który działa:).
Niestety w Visualu przy buildzie
1>------ Build started: Project: ConsoleApplication5, Configuration: Debug Win32 ------
1> stdafx.cpp
1> ConsoleApplication5.cpp
1>c:\users\rafal\documents\visual studio 2015\projects\consoleapplication5\consoleapplication5\consoleapplication5.cpp(6): warning C4627: '#include "stdlib.h"': skipped when looking for precompiled header use
1> c:\users\rafal\documents\visual studio 2015\projects\consoleapplication5\consoleapplication5\consoleapplication5.cpp(6): note: Add directive to 'stdafx.h' or rebuild precompiled header
1>c:\users\rafal\documents\visual studio 2015\projects\consoleapplication5\consoleapplication5\consoleapplication5.cpp(7): warning C4627: '#include "math.h"': skipped when looking for precompiled header use
1> c:\users\rafal\documents\visual studio 2015\projects\consoleapplication5\consoleapplication5\consoleapplication5.cpp(7): note: Add directive to 'stdafx.h' or rebuild precompiled header
1>c:\users\rafal\documents\visual studio 2015\projects\consoleapplication5\consoleapplication5\consoleapplication5.cpp(8): warning C4627: '#include "time.h"': skipped when looking for precompiled header use
1> c:\users\rafal\documents\visual studio 2015\projects\consoleapplication5\consoleapplication5\consoleapplication5.cpp(8): note: Add directive to 'stdafx.h' or rebuild precompiled header
1>c:\users\rafal\documents\visual studio 2015\projects\consoleapplication5\consoleapplication5\consoleapplication5.cpp(62): fatal error C1010: unexpected end of file while looking for precompiled header. Did you forget to add '#include "stdafx.h"' to your source?
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Nie mam pomysłu na rozwiązanie.