下沙论坛

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

QQ登录

QQ登录

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

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

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2005-6-15 20:33:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
谁能帮我把这个CRC校验编程实现啊(就是换个编法)??万分感谢,帮我顶啊2 s$ T2 `: I- t9 i  a
#include<IOSTREAM.H>9 C8 p3 C4 k" P2 m' D  Z8 P( h
#include<STDLIB.H>/ V/ J( H8 g8 Z) v5 w
#include<STRING.H>- p7 T+ r! J$ k0 n1 V6 H% d
#define CRC 5
  [5 p+ f' b  ?: Y+ i2 B1 q  s7 {4 mchar data[5]={'1','1','0','0','1'};
2 r5 v9 W; b  x  N( tclass Checkout& Y0 e( _5 |- u
{
/ D9 q8 m& S/ nprivate:
2 t" ^% A+ Y6 ]+ D, Fchar ax[50];3 {: h; i+ F; g& [& H1 {
char bx[4];, J- G- k7 h2 x) f. J
int x;0 t5 C7 }3 e2 `% M- f/ c' B. z
public:
( N* W0 ^5 _. H  o% ]+ I4 ]int length;- d, u. n- G; g- R1 m) V- W$ H3 R
Checkout()
! H* S  |$ o8 {0 F* R  R{  1 F: u  v6 n; b( B9 a/ [: g- `% q1 T
  cin&gt;&gt;ax;
1 l( S$ Y) v; j# R+ v$ G0 ?  length=strlen(ax);8 }& X: z9 @/ F/ \4 J+ {
}( O% N+ {" l8 f! ~! J
void cxc();
6 n& d# Z8 n% a) k0 zbool qyu();
! m  b9 }5 Z" Ovoid add();
6 l- k# M/ U8 m% Q5 Q};) \- H! b0 x5 Y6 `: t# U# c
void Checkout::cxc()
# u; j4 {' t  k+ y- j{% z$ P/ L; j. J4 J
for(int i=0;i&lt;4;i++){  C, ~# |* I2 G, X6 [% {% Z
  ax[length+i]='0';" n2 L( X) i1 K8 B; q
}9 Y1 E/ R6 g1 ~; T4 I) E8 f
}//将输入序列后加4个0, g6 j: M, d" D" l
bool Checkout::qyu()1 y; R* k# ?, ?4 u* W
{* O& \, B3 `% _0 F! E5 C  L
char c[5];$ f% J) d$ e5 E8 ^* m" R
int i,j,n;
8 v; i5 g# U/ a, {/ G6 Rint m=5;
* T0 u; h% A& w5 p! l. d! ]for(i=0;ax=='0';i++);( S" I4 c1 Q5 t) u( L$ ~/ Z
  if(i==length)
; n8 i/ p# \- B! E$ y  {cout&lt;&lt;"余式是0"&lt;<ENDL;6 h) `* i7 ~9 i, E; m
   cout&lt;&lt;"发送成功"&lt;<ENDL;
' f  l1 v9 h" b9 v5 q" n7 K! Z   exit(0);
2 @+ g2 `3 I$ I/ w' O, O) _+ S, P  }7 {, k4 B% A5 u' g5 `
else{
8 e5 L0 W* C. F" l' Lfor(i=0;i&lt;5;i++)
8 W* `9 l6 q5 ^  c=ax;+ r, S  L9 p3 ~) a  b: j
while(m==CRC)9 i! e$ k2 ^- u& k
{ for(j=0;j<CRC;J++)
0 e/ j( M' b7 ]8 i. K   {
% l9 j1 ]2 w: X7 `* a                if(c[j]==data[j])
) i' {& a1 t; ]8 ?4 e     c[j]='0';3 U+ s8 x3 N; L, u) y0 x
    else: s8 J4 Y; j- a) L
     c[j]='1';
) N. ^! H" L- J: O. w* t   }! {; H, i+ l- p) t- I' c: B2 ^- O
     for(j=0;c[j]=='0';j++);. @7 I% _2 c9 G( X( H0 T  a5 j$ H; G
       n=j;  k, V6 v: V  ?7 j& y
     for(m=0;m<CRC-N;M++)7 R! G5 T1 U* t4 h
     {$ o, p6 h* K& ]" t
    c[m]=c[j];
& B% Y. y* w9 H! B6 v" O5 b# Y    j++;; j" o, i" C- O+ ^. I  L, j8 S# C
   }
" T9 c+ a, Z. T0 Q3 O           while(i<LENGTH&&M<5)# I: }" C. V9 x! R8 j# n- X
   {
: C* G" c7 t/ L        c[m]=ax[i++]; & P5 ^) Z. A6 u3 A0 z4 D: j3 O9 r
     m++;      
3 f) H/ O* O; ?( V" p# s   }
2 a" L5 o0 u' ~* D+ l}
7 @6 F; Y+ _0 Q" f7 k}
- g0 X$ s5 R+ |; L5 d2 `int k;
$ N6 ]& O( W+ Q9 E, j9 Cfor(k=0;k<M;K++)( V$ u  P  \# F
  bx[k]=c[k];9 m! n0 P" ]2 \0 F" [2 \& b( ^
for(j=0;bx[j]=='0';j++);
5 a- i1 V9 ^# ^$ t2 ?1 m3 J  if(j==m)3 ~+ J0 h3 a$ K# S
  {cout&lt;&lt;'0'&lt;<ENDL;
* @0 j5 d; ^0 d: e$ K   x=0;: f; K9 d$ F& i7 N
  return true;
6 _! r7 P) b5 v+ k( r  }
, t! `* L4 I) W/ S  else3 m+ E, L# C" S0 ]  \- A
  {for(n=j;n<M;N++)' h- ~1 e6 u% k& Q; H
     cout&lt;<BX[N];( X+ L# n0 x/ ~  G
  x=m-j;; Y5 W3 l' T! m, S) |
  cout&lt;<ENDL;* E, m5 h0 a$ @9 V# g
  return false;
8 e# M, q# a% t  }5 r# H% k$ A4 c, _) a2 r9 c0 [
}5 I# m% y6 C8 w+ X. Z4 f
void Checkout::add()2 H! b' C; {, t7 P
{
: o5 D' I$ F  _int j=0;
! ^  ?! p5 F0 A# h, Z2 [0 t9 X  for(int i=length-x;i<LENGTH;I++)4 t2 ]+ |+ r6 @: N0 Q- u  q
    ax=bx[j++];
& O$ {- N* G3 V9 M1 c# L: B  cout&lt;&lt;"发送的序列加上余数后变成:";; G9 }& C7 m, u) ?+ e/ X. w, @( @8 N2 `
for(i=0;i<LENGTH;I++)- i! R6 z$ I: x
  cout&lt;<AX[I];9 l2 t! a. k. X+ @* T! s+ I! _
cout&lt;<ENDL;
. K; w" p* V/ Y% p+ Z# y" Z}
4 P* ?& e5 @# R5 }& U' z5 F, wvoid main()
- |2 I( T5 A+ u/ G9 F1 X{  
' ]! G1 p( x! o& M& Q9 jcout&lt;&lt;"本次实验模拟CRC校验,其生成多项式的比特序列是11001"&lt;<ENDL;
. G7 p# \/ A3 i/ u& j; k8 E    cout&lt;&lt;"请输入发送数据比特序列:"&lt;<ENDL;* o' h: A$ v( U
Checkout test;1 }5 M8 U/ `5 ]8 U+ c9 m
test.cxc();
( B% u0 m9 N8 d) v1 [3 @4 g  cout&lt;&lt;"余式比特序列是:";( O% ^: ?7 a! o7 g8 U: C2 ~
  test.qyu();+ }* p( ^% `% R, z! J6 W8 \' s
  test.add();
% F0 v, w, s! V# Y" e0 v& o  cout&lt;&lt;"试试这次是否能被整除."&lt;<ENDL;
4 [1 b" r4 m  j$ o- @ cout&lt;&lt;"新余数是:";
/ m0 k. R7 k' B  if(test.qyu())0 _- ]# k, w# ]
   cout&lt;&lt;"已发送成功!"&lt;<ENDL;  O# Q5 |  J# [: \$ D
  else
  z" r* D) E3 T   cout&lt;&lt;"未发送,失败!"&lt;<ENDL;; g* A6 R9 p1 }
}& `2 \) ~. T) {
[此贴子已经被作者于2005-6-15 20:46:33编辑过]
7 }+ ~% z+ x6 q! P+ D
分享到:  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>
) n8 V' M" V" J完全看不懂</DIV>
' w* |+ B, j4 R  C( Z. |* W( `: [/ o* ]. s" L
不是吧

该用户从未签到

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 下一条

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