WD5003ABYX
一般做海报是用CORELDRAW来做的,用A1尺寸设计好后,可以用A3或A4的打印机打印 ,然后拼接成A1尺寸大海报。
整幅送广告社六色高精彩喷也是每平方米40元上下。
用PHOTOSHOP也可以做设计,做不能分成A3或A4纸打印,还是要用CORELDRAW打印,或外送彩喷。
WORD可排A1尺寸,但除非送专业打印社的大幅打印机打印处,其他小尺寸打印机无法给你出稿,包括常见的广告社。
PPT不适合作图文混排的排版。
...
高精度计算的高精度加法
高精度运算主要解决以下三个问题:一、加数、减数、运算结果的输入和存储 运算因子超出了整型、实型能表示的范围,肯定不能直接用一个数的形式来表示。
在Pascal中,能表示多个数的数据类型有两种:数组和字符串。
数组:每个数组元素存储1位(在优化时,这里是一个重点!),有多少位就需要多少个数组元素;用数组表示数的优点:每一位都是数的形式,可以直接加减;运算时非常方便。
用数组表示数的缺点:数组不能直接输入;输入时每两位数之间必须有分隔符,不符合数值的输入习惯;字符串:String型字符串的最大长度是255,可以表示255位。
Ansistring型字符串长度不受限制。
用字符串表示数的优点:能直接输入输出,输入时,每两位数之间不必分隔符,符合数值的输入习惯;用字符串表示数的缺点:字符串中的每一位是一个字符,不能直接进行运算,必须先将它转化为数值再进行运算;运算时非常不方便;综合以上所述,对上面两种数据结构取长补短:用字符串读入数据,用数组存储数据:var st:string; x,y:array[0..255]of integer;{定义两个数组,X和Y,用来储存数} i,j,l1,l2:integer; begin readln(st); l1:=length(st);{------length(x),该函数是获取字符串X的长度,返回为整型} for i:=0 to 255 do x[i]:=0;{数组初始化,该句等价于'fillchar(x,sizeof(x),o);',即给一数组整体赋值,但运行速度快于用'for'语句对数组中的每一个数赋值} for i:=l1 downto 1 do x[l1-i+1]:=ord(st[i])-ord('0');{------这里是重点,把字符串转换为数值,储存在数组中} readln(st); l2:=length(st);{------length(x),该函数是获取字符串X的长度,返回为整型} for i:=0 to 255 do y[i]:=0;{数组初始化,该句等价于'fillchar(y,sizeof(y),o);'} for i:=l2 downto 1 do y[l2-i+1]:=ord(st[i])-ord('0');{------这里是重点,把字符串转换为数值,储存在数组中} 对字符串转为数值原理补充:ord(x)-48,如果X='1',因为'1'的ASCLL码是49,所以减去48就等于1,间接地把字符转换为数值了,各位初手要好好体会.二、运算过程 在往下看之前,大家先列竖式计算35+86。
注意的问题:(1)运算顺序:两个数靠右对齐;从低位向高位运算;先计算低位再计算高位;(2)运算规则:同一位的两个数相加再加上从低位来的进位,成为该位的和;这个和去掉向高位的进位就成为该位的值;如上例:3+8+1=12,向前一位进1,本位的值是2;可借助MOD、DIV运算完成这一步;(3)最后一位的进位:如果完成两个数的相加后,进位位值不为0,则应添加一位;(4)如果两个加数位数不一样多,则按位数多的一个进行计算;if l1for i:=1 to l1 do begin x[i]:=x[i]+y[i]; x[i+1]:=x[i+1]+x[i] div 10; x[i]:=x[i] mod 10; end; 三、结果的输出(这也是优化的一个重点) 按运算结果的实际位数输出 var st:string; x,y:array[0..255]of integer; i,j,l1,l2:integer; begin readln(st); l1:=length(st); for i:=0 to 255 do x[i]:=0; for i:=l1 downto 1 do x[l1-i+1]:=ord(st[i])-ord('0'); readln(st); l2:=length(st); for i:=0 to 255 do y[i]:=0; for i:=l2 downto 1 do y[l2-i+1]:=ord(st[i])-ord('0'); if l1for i:=1 to l1 do begin x[i]:=x[i]+y[i]; x[i+1]:=x[i+1]+x[i] div 10; x[i]:=x[i] mod 10; end; write('x+y='); j:=255; while x[j]=0 do j:=j-1; for i:=j downto 1 do write(x[i]); readln; end.四、优化:以上的方法的有明显的缺点:(1)浪费空间:一个整型变量(-32768~32767)只存放一位(0~9);(2)浪费时间:一次加减只处理一位;针对以上问题,我们做如下优化:一个数组元素存放四位数;(integer的最大范围是32767,5位的话可能导致出界)将标准数组改为紧缩数组。
第一步的具体方法:l:=length(s1); k1:=260; repeat {————有关字符串的知识} s:=copy(s1,l-3,4); val(s,a[k1],code); k1:=k1-1; s1:=copy(s1,1,l-4); l:=l-4; until lk1:=k1+1; 而因为这个改进,算法要相应改变:(1)运算时:不再逢十进位,而是逢万进位(mod 10000; div 10000); (2)输出时:最高位直接输出,其余各位,要判断是否足够4位,不足部分要补0;例如:1,23,2345这样三段的数,输出时,应该是100232345而不是1232345。
改进后的算法:var a,b:string; k,i,c,d:longint; e,z,y:array[0..255]of integer; begin readln(a); readln(b); if length(b)>length(a) then for i:=1 to length(b)-length(a) do a:='0'+a else for i:=1 to length(a)-length(b) do b:='0'+b; for i:=length(a) downto 1 do begin c:=ord(a[i])-48; d:=ord(b[i])-48; if c+dC++参考程序:#include#include#include using namespace std; int main() { char a1[100],b1[100]; int a[100],b[100],c[100],lena,lenb,lenc,i,x; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c)); gets(a1); gets(b1); //输入加数与被加数 lena=strlen(a1); lenb=strlen(b1); for (i=0;i=1;i--) coutreturn 0; }
如何用VBA把EXCEL表格娴绗ORD文档里
当前普遍的做法是:先用Excel做好表格,再把表粘到Word里。
可是粘到Word里后表的格式全变了,还得重新进行调试,费时又费力。
其实,完全可以按下述方法来轻松转换。
首先,用Excel编辑好一个表格,然后点击“文件”→“另存为web页”。
web页就是网页文件,在“保存选项”处把“保存整个工作簿”调整成“选择:工作表”,把默认文件名“page.htm”根据实际情况改成你所需要的名字,如:“工作表.htm”,再点击“保存”。
注意,在改名时绝对不可以把后面的.htm去掉,只要改“.”前面的部分就可以了。
找到刚才保存好的“工作表.htm”,如果你所安装的操作系统是WindowsXP或Windows2000,可以在文件上面直接点击鼠标右键,选择“打开方式”最下面的“打开程序”选项,在列表中找到“Word”,选中并确定。
如果你所使用的操作系统是windows98,则操作方法略有不同,需要在“工作表.htm”上按住shift键的同时点击鼠标右键,之后再进行上述操作。
用Word程序打开该文件后,不要做任何编辑操作,直接点击“文件”→“另存为”,把文件名改成“工作表Word版”,把保存类型选成“Word文档”,再点击“保存”即可。
现在再打开刚才保存的“工作表word版”文件看看,是不是转换得很完美呢?...
警察抓住了四个偷东西的嫌疑人,其中一个人是主谋。
审问谁是主谋主...
var a,b,c,d:integer;begin for a:=0 to 1 do for b:=0 to 1 do for c:=0 to 1 do for d:=0 to 1 do if (a+b+c+d=1) then if ord(a1)+ord(c=1)+ord(d=1)+ord(d1)=3 then begin if a=1 then writeln('A is killer.'); if b=1 then writeln('B is killer.'); if c=1 then writeln('C is killer.'); if d=1 then writeln('D is killer.'); end; readln;end.
EXCEL里,如何按指定的条件累加数量?
按指定条件累加数量,有三种方式(楼主的问题适用第二、三种,详见实例图片下方):一、运用数据透视表,插入-数据透视表,实例下图:二、运用SUMIF函数(只适用于符合一个条件的求和),sumif(条件区域,条件,求和区域),实例见下图:楼主的问题:=sumif(A2:A10,"ABC01*",B2:B10)三、运用SUMPRODUCT函数,sumproduct("条件"*"条件",求和区域)实例见下图:楼主的问题:=sumproduct((left(A2:A10,5)="ABC01")*B2:B10)