⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testfi.c

📁 这是一个C的源代码
💻 C
字号:
#include "pbc.h"#include "pbc_fp.h"#include "pbc_fieldquadratic.h"int main(void){    field_t fp, fp2;    mpz_t prime;    element_t a, b, c;    mpz_init(prime);    mpz_set_ui(prime, 83); // 83 is 3 mod 4    mpz_setbit(prime, 256);    do {	mpz_nextprime(prime, prime);    } while (mpz_fdiv_ui(prime, 4) != 3);    field_init_fp(fp, prime);    field_init_fi(fp2, fp);    element_init(a, fp2);    element_init(b, fp2);    element_init(c, fp2);    element_printf("field: %Z^2\n", prime);    element_random(a);    element_random(b);    element_printf("a = %B, b = %B\n", a, b);    element_add(c, a, b);    element_printf("a + b = %B\n", c);    element_mul(c, a, b);    element_printf("a * b = %B\n", c);    for (;;) {	element_random(a);	element_printf("new a = %B\n", a);	if (element_is_sqr(a)) break;	printf(" is not a square\n");    }    element_sqrt(c, a);    element_printf("sqrt(a) = %B\n", c);    element_mul(c, c, c);    element_printf("sqrt(a) * sqrt(a) = %B\n", c);    element_invert(c, a);    element_printf("1/a = %B\n", c);    element_mul(c, c, a);    element_printf("1/a * a = %B\n", c);    element_clear(a);    element_clear(b);    element_clear(c);    field_clear(fp);    field_clear(fp2);    mpz_clear(prime);    return 0;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -