2005/07/22 ¶
3장 2번째 프로그램인뎅....책대로 쳤는데 에러남..ㅡㅜ
2번째랑 3번째 에러는 1번째에서 에러나니까 당연한거 같은데...
첫번째가 왜 안될까욤???@,.@
2번째랑 3번째 에러는 1번째에서 에러나니까 당연한거 같은데...
첫번째가 왜 안될까욤???@,.@
~cpp #include <algorithm> #include <iomanip> #include <ios> #include <iostream> #include <string> #include <vector> using std::cin; using std::sort; using std::cout; using std::streamsize; using std::endl; using std::string; using std::setprecision; using std::vector; int main() { cout << "Please enter your first name: "; string name; cin >> name; cout << "Hello, " << name << "!" << endl; cout << "Please enter yourmidterm and final exam grades: "; double midterm, final; cin >> midterm >> final; cout << "Enter all your homework grades, " "followed by endoffile:"; vector<double> homework; double x; while (cin >> x) homework.push_back(x); typedef vector<double>::size_type vec_sz; // 요기 에러1 vec_sz size = homework.size(); // 요기 에러2 if(size == 0) { cout << endl << "You must enter your grades. " "Please try again." << endl; return 1; } sort(homework.begin(),homework.end()); vec_sz mid = size/2; // 요기 에러3 double median; median = size %2 == 0 ? (homework[mid] + homework[mid-1])/2 :homework[mid]; streamsize prec = cout.precision(); cout << "Your final grade is " << setprecision(3) << 0.2* midterm + 0.4*final + 0.4*median << setprecision(prec) << endl; return 0; }
Answer.
- VS6가 무슨이유인지는 모르겠으나 namespace 가 표준을 지원하지 않는 것 같기도하고, 하여간 namespace 문제입니다.
소스를 그대로 쓰고 싶다면 ZP서버에서 gcc로 돌리면 됩니다. 서버가 성능이 별로인 관계로 비추합니다.
그렇지 않고 VS6에서 하고 싶다면
using 지시자로 지정된 부분을 using namespace std; 로 바꾸면 정상적으로 동작합니다.
.net 은 어떤지 모르겠네요. - eternalbleu
1학년들이 가지고 배우는 Dev-CPP가 gcc 기반이라는 군요. 이걸로 돌려도 될 듯 하네요. 참고하셈 - eternalbleu
- 음... g++ 이요~ - 이영호
- 찹고로 g++은 gcc에 c++관련 라이브러리를 자동으로 링킹해주는 역할을합니다.
g++ test.cpp -o test
gcc -lstdc++ test.cpp -o test
동일한 결과를 얻을 수 있을듯합니다. - eternalbleu