下沙论坛

 找回密码
 注册论坛(EC通行证)

用新浪微博连接

一步搞定

QQ登录

QQ登录

下沙大学生网QQ群8(千人群)
群号:6490324 ,验证:下沙大学生网。
用手机发布本地信息严禁群发,各种宣传贴请发表在下沙信息版块有问必答,欢迎提问 提升会员等级,助你宣传
新会员必读 大学生的论坛下沙新生必读下沙币获得方法及使用
查看: 2362|回复: 29
打印 上一主题 下一主题

〓〓救命啊,懂计算机的人帮帮我啊〓〓

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2005-6-15 20:33:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
谁能帮我把这个CRC校验编程实现啊(就是换个编法)??万分感谢,帮我顶啊
5 i5 ^  {/ U: F& [" Z" y#include<IOSTREAM.H>/ c+ l% J- m/ A2 y
#include<STDLIB.H>
0 }% d& F7 l/ \#include<STRING.H>
/ _$ p9 C) Y- H2 \! i- X#define CRC 5* p1 o6 M3 ?1 S0 s( E
char data[5]={'1','1','0','0','1'};$ f* m6 F  L/ Z/ z
class Checkout' t! N1 O5 \* x: i) G; F! ~) ?
{) B( A! T3 \' I) V  N
private:0 A2 O" h7 }8 p, @
char ax[50];
3 ~# i! T  B* p& w6 hchar bx[4];
$ F' K! b/ X$ R8 z. N" xint x;
4 ~. B. K8 O8 u) h) Q7 p( Ipublic:
* ?- d% H/ h' t6 [$ [& Rint length;
2 f  I3 I$ @5 TCheckout()
% e  i! c4 o3 p: T{  # X( h/ z5 d9 ^# O# R
  cin&gt;&gt;ax;
" V+ s, Z: Q; I+ T  y  length=strlen(ax);) `* U5 L5 u, I: ]# S% j- Y
}7 W, l+ z, L  K: U
void cxc();
/ M5 b3 G7 X1 C1 }9 Ibool qyu();
& p& B5 z2 R& tvoid add();+ `# @9 z7 p* p& \5 M& W* v
};
' l" t4 o. ]8 ]4 wvoid Checkout::cxc()
6 ~5 t) w+ U4 R{
) V9 h  p) F9 C* I6 I9 rfor(int i=0;i&lt;4;i++){
; D: b& P) @* m& s$ w1 F" s8 ^2 [  ax[length+i]='0';5 J) a: ?# M2 D3 ^
}& v0 D9 X' P% }: X( s$ r+ x
}//将输入序列后加4个0
+ j- D! U/ X0 }3 L; ]5 ^bool Checkout::qyu()
8 R" [# P) D0 P{+ X$ l/ e4 @6 a# E4 s5 b8 o
char c[5];& ]- D* N. y. j
int i,j,n;
( V# ~( E; P+ f5 A+ R6 K  ]. Oint m=5;
  r/ Y9 j; F- p6 M/ @1 |for(i=0;ax=='0';i++);2 g9 i' j2 C, h$ s& l+ N
  if(i==length)8 x2 z% ?: q# \3 v$ t$ P0 d
  {cout&lt;&lt;"余式是0"&lt;<ENDL;0 {7 g$ v( ?1 i
   cout&lt;&lt;"发送成功"&lt;<ENDL;
% c$ O# J1 `" G   exit(0);9 I& ~% Z- v7 A9 ~' b3 ?
  }: i$ i) G2 w' J
else{
/ c& {4 h3 i) |1 y; [for(i=0;i&lt;5;i++)  M, ?$ ?! m, Q; O- x- t+ O2 p* W9 _
  c=ax;5 e6 Z3 ~) |: b9 M  x' ^
while(m==CRC)
/ w5 J% d( R( d+ y! \{ for(j=0;j<CRC;J++)5 A% ^) {0 B: Q; y$ d) J% `$ O& ^
   {
* i; F9 ]8 j: H                if(c[j]==data[j])
$ e/ D6 g( X0 v6 E3 f; T( K     c[j]='0';
$ l9 N, {" F- \# ^    else9 Y& u) c+ p/ `
     c[j]='1';
, E0 Y; r% c) w   }. M3 ^+ c+ |: R7 A; C
     for(j=0;c[j]=='0';j++);3 _6 t- J5 {: j& t5 z
       n=j;
/ U3 T8 S5 ]$ H7 v" r5 E     for(m=0;m<CRC-N;M++)
2 p' j( ^  j. |4 e5 K! l  G     {
0 M. u- G0 V3 e& b* S    c[m]=c[j];! C: V5 Q* b7 P
    j++;
/ c  L$ @- W, W+ }1 t8 E   }
" Z* W1 R0 H% A& K3 t6 X" w           while(i<LENGTH&&M<5)& b' r4 F$ m7 t! _
   {
- N, }9 f8 P/ k( b2 j        c[m]=ax[i++];
7 `( z% V  ~" H: k4 q9 f( h     m++;      
5 j/ T6 h+ C+ |% E3 ]7 X2 j   }
7 ~* [$ u2 H. C, ?- `}* O( ?, \, X1 B1 ]2 ?# B
}. \, ~: a, X- Z. H
int k;3 U0 a/ ^$ @6 J7 x+ R5 A0 c
for(k=0;k<M;K++)! t& {1 \; Y2 b
  bx[k]=c[k];
9 F) v2 j7 J, H! l# R& Vfor(j=0;bx[j]=='0';j++);# K, N) J% v$ O1 S# b; v6 H
  if(j==m)
& c) \) m5 g' J$ a* F% U  {cout&lt;&lt;'0'&lt;<ENDL;7 {# o! P& S$ o* a$ M0 j1 h6 [
   x=0;6 j9 B( V! W4 Z( o, P! ]% _
  return true;
8 u( u( J$ t# q, d4 T( `  }
  K5 z  E+ P2 Y$ t' \, i  else8 K7 C* b1 T' o% C" o
  {for(n=j;n<M;N++)3 ?8 }" V# x- `# w1 I$ e  e
     cout&lt;<BX[N];
/ ], ~9 ]7 v2 e8 [$ X+ L4 w& K, T" ?6 @  x=m-j;! W8 C, a" q  i
  cout&lt;<ENDL;
) q" E! K, z3 l$ g! B' n; D  return false;
/ F. \/ h7 f9 ^2 a  }7 n0 d# V4 w0 V, z/ v3 @! s( T5 B% i. O
}
4 H# ^: ]9 F" c* S: d8 evoid Checkout::add()& @9 m& G, g8 y, l
{
" M, @! [. X$ y+ n& s4 R' sint j=0;% ~0 [7 ?1 d: O* L* {" \
  for(int i=length-x;i<LENGTH;I++)
' Y* Q) c2 D$ P; u7 Y0 k4 U7 [+ s    ax=bx[j++];
) u0 R6 H4 N! l: d7 }  cout&lt;&lt;"发送的序列加上余数后变成:";
' l/ j# z( @1 @' H# K5 @* Jfor(i=0;i<LENGTH;I++)
* t* B9 _' T0 e3 y2 ]  cout&lt;<AX[I];
$ A# s. ~0 I4 X* s( p cout&lt;<ENDL;
' _& V  i0 i+ @0 x* `4 Y}6 \+ X6 d3 K* L
void main()5 t2 I% ^! W  _7 h6 V# E
{  4 J# w' y3 \1 n8 B% L. v2 _( `
cout&lt;&lt;"本次实验模拟CRC校验,其生成多项式的比特序列是11001"&lt;<ENDL;
( q2 C' K  |0 F8 w5 Y6 W0 O$ m- c, c    cout&lt;&lt;"请输入发送数据比特序列:"&lt;<ENDL;
% S- K- E( t1 t$ r  Z& p Checkout test;  t- J3 [5 |: g, O2 ~$ H
test.cxc();: H8 n# R1 c' U& X# F! N* g
  cout&lt;&lt;"余式比特序列是:";( G2 `$ ^" s/ _8 ]8 O' v+ `
  test.qyu();
# j0 e# j8 z5 S2 |- R* {" S  test.add();/ o  I2 N5 h5 D- P& W( E2 Q! ]
  cout&lt;&lt;"试试这次是否能被整除."&lt;<ENDL;
9 B* Z* y9 q' l2 y cout&lt;&lt;"新余数是:";
' V6 E" {7 Y  t/ U$ t  if(test.qyu())
! I7 Y. C2 u2 m9 W9 d   cout&lt;&lt;"已发送成功!"&lt;<ENDL;
, \7 t5 Y9 @4 e/ W0 |8 w+ T  else
8 e( U9 z* X9 p- ]6 B9 W7 x   cout&lt;&lt;"未发送,失败!"&lt;<ENDL;& T( V6 Z( E/ }4 R! J2 D
}+ ?* f* `3 X* o5 ?
[此贴子已经被作者于2005-6-15 20:46:33编辑过]
0 f& Y* Y6 @5 D5 j1 K# ?- R" e7 r
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩 转发到微博

该用户从未签到

2
发表于 2005-6-15 20:34:00 | 只看该作者
忘了呢,顶上先.来个人,帮帮他

该用户从未签到

3
发表于 2005-6-15 20:35:00 | 只看该作者
复杂

该用户从未签到

4
 楼主| 发表于 2005-6-15 20:37:00 | 只看该作者
HELP

该用户从未签到

5
发表于 2005-6-15 20:39:00 | 只看该作者
UP

该用户从未签到

6
发表于 2005-6-15 20:39:00 | 只看该作者
呵呵,等等,有人来的

该用户从未签到

7
发表于 2005-6-15 20:39:00 | 只看该作者
估计会的都不来

该用户从未签到

8
发表于 2005-6-15 20:40:00 | 只看该作者
完全看不懂

该用户从未签到

9
发表于 2005-6-15 20:42:00 | 只看该作者
<DIV class=quote><B>以下是引用<I>xushengsy</I>在2005-6-15 20:40:10的发言:</B>
9 h- z( U' z  Q6 `; k; i完全看不懂</DIV>
" F+ ~0 ^# R, v/ Y( X) |1 X; Z7 h# M* n% d1 x% g+ c
不是吧

该用户从未签到

10
 楼主| 发表于 2005-6-15 20:45:00 | 只看该作者
。。。。。。。。。。顶

该用户从未签到

11
发表于 2005-6-15 20:46:00 | 只看该作者
看天书也要比这个容易

该用户从未签到

12
 楼主| 发表于 2005-6-15 20:47:00 | 只看该作者
<>就是换个编法。。。。。性质一样的。。。。</P><>谁帮我改一下啊</P>

该用户从未签到

13
 楼主| 发表于 2005-6-15 20:51:00 | 只看该作者
<>就是换个编法。。。。。性质一样的。。。。</P><>谁帮我改一下啊</P>

该用户从未签到

14
发表于 2005-6-15 20:54:00 | 只看该作者
我还是友情支持下把

该用户从未签到

15
发表于 2005-6-15 20:55:00 | 只看该作者
<> 闪过...</P>

该用户从未签到

16
 楼主| 发表于 2005-6-15 21:24:00 | 只看该作者
  • TA的每日心情
    奋斗
    2018-5-4 03:27
  • 签到天数: 2 天

    [LV.1]初来乍到

    17
    发表于 2005-6-15 21:27:00 | 只看该作者
    天书啊 !!!

    该用户从未签到

    18
    发表于 2005-6-15 21:27:00 | 只看该作者
    姘头是什么意思啊

    该用户从未签到

    19
    发表于 2005-6-15 21:30:00 | 只看该作者
    <>嘿嘿</P><>偶也顶虽然我也知道怎么做</P>

    该用户从未签到

    20
     楼主| 发表于 2005-6-15 21:33:00 | 只看该作者
    <>楼上地大哥帮下忙啊</P>

    本版积分规则

    关闭

    下沙大学生网推荐上一条 /1 下一条

    快速回复 返回顶部 返回列表