void random(int M,int a,int c,int *seq,int start,int size)
{
int i = start;
seq[0] = 1;
seq[i] = (a * seq[i - size] + c) % M;
i += size;
}
for(int iter = 0;iter < ceil((double)(n/size));iter++)
{
random(M,a,c,seq,1,1);
}
Vòng lặp được biên dịch với -fopenmp
và gcc
cho lỗi "vị ngữ kiểm soát không hợp lệ". Cách giải quyết?'vị từ kiểm soát không hợp lệ' lỗi khi được biên dịch với-fopenmp
không nên 'ceil ((double) (n/size)) 'là một số nguyên? Tôi có nghĩa là "như một loại". Và '(double) (n/size)' sẽ không đạt được gì hữu ích nếu 'n' và' size' là số nguyên ... –
Vui lòng đăng một [Minimal, Complete, và Verifiable example] (http: // stackoverflow. com/help/mcve). – MikeCAT