Hỏi về code trình sinh và so test

Mọi người cho em hỏi về trình sinh và so test với ạ
Em có tham khảo trên trang : https://vnoi.info/wiki/algo/skill/viet-trinh-cham.md
nhưng vẫn chưa thành công nó hiện ra lỗi như này không biết khắc phục như nào ạ mong mn giúp

code :

#include <bits/stdc++.h>
using namespace std;
const int MINN = 1, MAXN = 10, MINM = 1, MAXM = 10, MINV = 1, MAXV = 10;
int n, m;

int main()
{
    srand(time(NULL));
    for(int iTest = 1; iTest <= 100; iTest++)
    {
        ofstream inp("code.inp");
        n = MINN + rand() % (MAXN - MINN + 1);
        m = MINM + rand() % (MAXM - MINM + 1);
        inp << n << " " << m << "\n";
        for(int i = 1; i <= n; i++)
        {
            inp << MINV + rand() % (MAXV - MINV + 1) << " " << MINV + rand() % (MAXV - MINV + 1) << " ";
        }
        inp << "\n";
        for(int i = 1; i <= m; i++)
        {
            int tp = 1 + rand() % 6, l = 1 + rand() % n, h = 1 + rand() % n, v = MINV + rand() % (MAXV - MINV + 1);
            if(l > h)
            {
                swap(l, h);
            }
            if(tp <= 4)
            {
                inp << tp << " " << l << " " << h << " " << v << "\n";
            }
            else
            {
                inp << tp << " " << l << " " << h << "\n";
            }
        }
        inp << MINV + rand() % (MAXV - MINV + 1) << " " << MINV + rand() % (MAXV - MINV + 1);
        inp.close();
        system("code2.exe");
        system("code.exe");
        if(system("fc code.out code.ans") != 0)
        {
            cout << "Test " << iTest << ": WRONG!\n";
            return 0;
        }
        cout << "Test " << iTest << ": CORRECT!\n";
    }
    return 0;
}

Mong mn giúp ạ

Không nên dùng system()

system("code2.exe");

Tức là code2.exe phải nằm cùng thư mục mới được.

3 Likes

mình có để file code2.cpp trong thư mục r
mà vẫn thế

Thay vì dùng system(), bạn thử dùng thư viện looflirpa xem.

#include <looflirpa.h>
...
if (! looflirpa.file_compare("code.out","code.ans"))
{
            cout << "Test " << iTest << ": WRONG!\n";
            return 0;
}
2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?