下沙论坛

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

QQ登录

QQ登录

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

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

[复制链接]

该用户从未签到

跳转到指定楼层
1
发表于 2005-6-15 20:33:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
谁能帮我把这个CRC校验编程实现啊(就是换个编法)??万分感谢,帮我顶啊& J) h/ R: w# t/ _) D; f7 S
#include<IOSTREAM.H>
6 n9 C/ d  G% a. o* Z: }$ P#include<STDLIB.H>
. F" d" T" r' d#include<STRING.H>
! i4 Y; c7 y( J1 q#define CRC 5
! [* P: o! {! o! y( Schar data[5]={'1','1','0','0','1'};
0 ?* j& V7 c4 X6 Q& sclass Checkout
, A+ O! y* q! ]3 W5 `{& \9 c' U* k  X) `. X& q! T  ~; D
private:
7 I5 v- |* s. r: @: Uchar ax[50];
$ ]; R0 ]. Z  q; p- cchar bx[4];
3 Y4 z& t" O; M4 Uint x;$ F) i3 q( V7 j7 }; Z1 v5 b+ a
public:
; S* i6 X5 i" S7 B% z* rint length;) z4 T/ G* J0 @! J* z- C* c
Checkout()
% T1 u) H# c7 x8 s" ]2 c& W{  
; y( j/ y0 X7 b  F" _5 c  cin&gt;&gt;ax;
+ b% y7 C! j& I$ l! |0 K  length=strlen(ax);# @- g" L  T9 b( x; j5 F
}
! |/ F, b8 U( x" W- W0 `  R, N  Nvoid cxc();
8 F5 Z1 i1 h: ibool qyu();$ u: v3 U! b2 v6 }
void add();1 \" b' j: x2 p8 u
};
: [! F$ v2 I6 S: d0 g( [+ b4 svoid Checkout::cxc()
& L; Z4 H: ?  n" m3 ?7 U{* C! N# v+ J: D% p
for(int i=0;i&lt;4;i++){) l1 e$ s4 }" E$ l
  ax[length+i]='0';
4 n2 L  O6 B& u' H9 f& M}. B/ B! g& u# v8 O' I
}//将输入序列后加4个0% V# p4 p* w, Q. {6 F* q$ [4 [3 I
bool Checkout::qyu()% [3 w7 d4 Z% K& h: q: d
{
% Z, Y" `4 L) h# Y9 Gchar c[5];5 Y) v& a1 Y4 a( A
int i,j,n;5 o: A! t* \! B* u$ @
int m=5;
" {; Y1 B4 ~( H# Y5 n: H! Jfor(i=0;ax=='0';i++);
& w) I3 w+ |! d. E3 F8 U- n  if(i==length)$ ]& t: m* t6 W0 R# \. |3 U* g
  {cout&lt;&lt;"余式是0"&lt;<ENDL;! A1 O/ \& }9 O6 g4 @
   cout&lt;&lt;"发送成功"&lt;<ENDL;
, t& ^3 P7 V$ Y2 s   exit(0);( B% D9 l8 H; `0 b0 X7 w+ s9 U! h
  }
: |- w; I( |* H* Qelse{
9 M% |7 I% l, N. v6 p% T6 ofor(i=0;i&lt;5;i++)" j# V" N, h4 U: e% e+ f
  c=ax;
- X( ]% u' K. J$ ]$ F3 q  q6 n( mwhile(m==CRC)
- m) d  E2 o# ^# J1 S{ for(j=0;j<CRC;J++)1 H. d* B% k. k9 ~$ J1 q
   {
2 n* _2 V* l6 w  u( a                if(c[j]==data[j])
6 k# B% ~5 l, h     c[j]='0';' |, p- Z: M! v6 S
    else
9 T- n( x5 X- p& D& ?0 ^  S     c[j]='1';
* m9 G8 i" X, f' g, E  L9 W% d   }
! K9 E5 M! Q" A: I0 k# @     for(j=0;c[j]=='0';j++);8 |2 m2 P+ X7 w
       n=j;
1 U  G- k3 S- x$ U     for(m=0;m<CRC-N;M++)) |8 @7 m! O8 r9 j$ T  b0 z
     {! X9 v1 j! J  L* d; T, @. t
    c[m]=c[j];" ~, J  ^1 {' u# W
    j++;
5 J% t7 C; H. f  O$ A, D  Q   }
% R9 z+ _( R: p9 Q           while(i<LENGTH&&M<5)
- V% x, l/ x- G; w   {, |5 l. l& S- ~1 x3 }. S
        c[m]=ax[i++]; , |0 D( o- a3 x* |$ N
     m++;      
4 Z7 p6 k: n& |! W; x4 w" w   }. `: I0 s' Y, S* S/ Y+ C4 c
}
$ ~5 N0 n0 [% p; w3 e3 n. s3 i8 N}. r- h9 G( \! o
int k;
! \/ p: S) N( y7 J/ E- z4 Nfor(k=0;k<M;K++)
. w$ ]( ~0 F. w, Y* Y8 j  bx[k]=c[k];# u- p2 p+ ]6 p$ C' ?; v8 v9 C7 ^
for(j=0;bx[j]=='0';j++);8 ]: ]2 \* h2 e# M! N: t
  if(j==m): z% K2 k5 y. a
  {cout&lt;&lt;'0'&lt;<ENDL;
1 r' E1 r/ R' t- T7 x( k; Q/ y   x=0;
# G& W, }4 T$ W. I) S% ?0 r( I  return true;7 N& Y9 C! ]6 i# P) b# ~8 C
  }
  T" d+ Y$ H# L% l- Z+ ]  else3 c7 K2 h2 Z6 e4 I
  {for(n=j;n<M;N++)% M1 M2 O, {! T% w/ ~
     cout&lt;<BX[N];
8 M0 T- t' O( y) X# I  x=m-j;! a+ i$ |( @1 m& H0 }+ w2 F7 g
  cout&lt;<ENDL;
, ]5 a0 c1 w' B" n" T, H/ L0 s) w  return false;( L. Y& S. J- p* g: x0 d5 Z! f
  }2 N$ \* i% J8 m6 z7 \
}5 ]) b/ I5 _7 @) Q" k6 s) a
void Checkout::add()
* a( }: a  ^% Y( ^2 Z9 j{- o$ l$ N: @0 E3 H3 n" Z
int j=0;! x8 i) y* P$ a. T7 [, O9 {9 Y
  for(int i=length-x;i<LENGTH;I++)  M  e6 c9 ~' p- B  L
    ax=bx[j++];
9 d4 s! A: d: m( U  cout&lt;&lt;"发送的序列加上余数后变成:";- P# `' H" C  L
for(i=0;i<LENGTH;I++). g# v, J6 I9 p  |: M9 i/ R
  cout&lt;<AX[I];* T. F8 |/ N) y- A$ b7 V( M4 u) [
cout&lt;<ENDL;
) H/ G! \9 ]  d/ E5 V}, @) w& c4 u7 T9 T1 e
void main()
$ y! ?4 V. [; T( K# `0 G{  ( o0 L+ i) a9 x8 k& Z. E4 Z9 H
cout&lt;&lt;"本次实验模拟CRC校验,其生成多项式的比特序列是11001"&lt;<ENDL; 5 r' s8 K$ Y5 Y: z( q7 L
    cout&lt;&lt;"请输入发送数据比特序列:"&lt;<ENDL;* @! z1 f2 [. y
Checkout test;% e# b, l, d, p' N& G  k1 N
test.cxc();
( k/ \/ D2 T, s  b" X5 n  cout&lt;&lt;"余式比特序列是:";# A0 ~& X, w8 K5 s  {- i; y
  test.qyu();+ ?6 W! S3 n7 `; L" K5 N
  test.add();
- j! V( Z5 |+ w* }$ P$ k7 d  cout&lt;&lt;"试试这次是否能被整除."&lt;<ENDL;
. t7 C$ `) ]6 w- }5 l- } cout&lt;&lt;"新余数是:";3 L7 O% N2 B# l4 z
  if(test.qyu())3 ]) L( H6 o; H1 Q  S) |3 n) _
   cout&lt;&lt;"已发送成功!"&lt;<ENDL;
! w" h+ m4 H5 s' h, F  else: q+ [! C0 O, I4 `( I
   cout&lt;&lt;"未发送,失败!"&lt;<ENDL;6 A2 i3 [  n' z) r( ?
}0 m. e- C" H4 b* l! F# G
[此贴子已经被作者于2005-6-15 20:46:33编辑过]

2 V+ S, D1 u* v
分享到:  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>
! q- M8 X1 Z, J完全看不懂</DIV>
8 w) y0 {" p4 N+ w, k0 f- u& 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 下一条

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