#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
struct bign {
#define maxn 10000
#define yawei 4
#define base 10000
int num[maxn],len;
bool flag;
friend bign abs(const bign &x) {
bign k=x;
k.flag=1;
return k;
}
friend void remove(bign &x) {
while(x.num[x.len]==0&&x.len>1)x.len--;
}
bign() {
memset(num,0,sizeof(num));
flag=1;
len=1;
}
bign(const int &x) {
*this=bign();
if(x) {
int k=x;
if(k<0)k=-k,flag=0;
len=0;
while(k) {
num[++len]=k%base;
k/=base;
}
}
}
bign(const char *x) {
int l=strlen(x),s,t=0,p=0,k=1;
*this=bign();
if(x[0]=='-')flag=0,s=1;
len=0;
for(int i=l-1; i>=s; i--) {
p+=k*(x[i]-'0');
k*=10;
t++;
if(t==4) {
t=0;
num[++len]=p;
p=0;
k=1;
}
}
if(p)num[++len]=p;
}
bign(const string x) {
int l=x.length(),s=0,t=0,p=0,k=1;
*this=bign();
if(x[0]=='-')flag=0,s=1;
len=0;
for(int i=l-1; i>=s; i--) {
p+=k*(x[i]-'0');
k*=10;
t++;
if(t==yawei) {
t=0;
num[++len]=p;
p=0;
k=1;
}
}
if(p)num[++len]=p;
}
bign operator = (const int &x) {
return *this=bign(x);
}
bign operator = (const char *x) {
return *this=bign(x);
}
bign operator = (const string &x) {
return *this=bign(x);
}
bool operator < (const bign &x)const {
if(flag!=x.flag)return flag<x.flag;
if(len!=x.len)return (len<x.len)^flag^1;
for(int i=len; i>=1; i--) {
if(num[i]!=x.num[i]) {
return (num[i]<x.num[i])^flag^1;
}
}
return 0;
}
bool operator < (const int &x)const {
return *
高精度板子
最新推荐文章于 2024-04-24 21:25:41 发布
本文探讨了在电子设计中实现高精度PCB板的关键技术和步骤,包括选择合适的材料、精确布线、布局优化以及考虑热效应。通过详细的实例分析,强调了每个环节对于整体设计精度的重要性。
摘要由CSDN通过智能技术生成