摘要:用實現下圖的第五種整數相加算法實現代碼算法描述參考我的博客
用ABAP實現下圖的第五種整數相加算法:
實現代碼:
REPORT zint. PARAMETERS: a TYPE int4 OBLIGATORY DEFAULT 100, b TYPE int4 OBLIGATORY DEFAULT 100. DATA: threshold TYPE int4. FORM add USING a TYPE int4 b TYPE int4 CHANGING cv_result TYPE int4. DATA: n TYPE int4 VALUE 0, c TYPE int4 VALUE 0. DATA: i TYPE int4 VALUE 1. DATA: boolean_a TYPE abap_bool, boolean_b TYPE abap_bool, _a TYPE int4, _b TYPE int4, aa TYPE int4, bb TYPE int4. DATA(wrapper_one) = zcl_integer=>value_of( 1 ). DATA(wrapper_c) = zcl_integer=>value_of( c ). aa = a. bb = b. WHILE i < threshold. DATA(wrapper_a) = zcl_integer=>value_of( aa ). DATA(wrapper_b) = zcl_integer=>value_of( bb ). boolean_a = boolc( wrapper_a->and( wrapper_one )->get_raw_value( ) EQ 1 ). boolean_b = boolc( wrapper_b->and( wrapper_one )->get_raw_value( ) EQ 1 ). _a = COND int4( WHEN boolean_a EQ abap_true THEN 1 ELSE 0 ). _b = COND int4( WHEN boolean_b EQ abap_true THEN 1 ELSE 0 ). wrapper_a = zcl_integer=>value_of( _a ). wrapper_b = zcl_integer=>value_of( _b ). wrapper_c = zcl_integer=>value_of( c ). DATA(_n_wrapper) = wrapper_a->xor( wrapper_b )->xor( wrapper_c ). DATA(b_or_c) = wrapper_b->or( wrapper_c ). DATA(b_and_c) = wrapper_b->and( wrapper_c ). DATA(_c_wrapper) = wrapper_a->and( b_or_c )->or( b_and_c ). c = _c_wrapper->get_raw_value( ). DATA(_n_i0_wrapper) = zcl_integer=>value_of( COND int4( WHEN _n_wrapper->get_raw_value( ) > 0 THEN i ELSE 0 ) ). DATA(wrapper_n) = zcl_integer=>value_of( n ). n = wrapper_n->or( _n_i0_wrapper )->get_raw_value( ). wrapper_a = zcl_integer=>value_of( aa ). aa = wrapper_a->shift_right( )->get_raw_value( ). wrapper_b = zcl_integer=>value_of( bb ). bb = wrapper_b->shift_right( )->get_raw_value( ). cv_result = n. DATA(wrapper_i) = zcl_integer=>value_of( i ). wrapper_i->shift_left( ). i = wrapper_i->get_raw_value( ). ENDWHILE. ENDFORM. START-OF-SELECTION. DATA: i TYPE int4. threshold = ipow( base = 2 exp = 30 ). PERFORM add USING a b CHANGING i. WRITE: / i.
算法描述參考我的SCN博客?Just for fun – Implement a + b using pure bitwise operation in ABAP
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/28311.html
摘要:用實現下圖的第五種整數相加算法實現代碼算法描述參考我的博客 用ABAP實現下圖的第五種整數相加算法:showImg(https://segmentfault.com/img/remote/1460000013503348); 實現代碼: REPORT zint. PARAMETERS: a TYPE int4 OBLIGATORY DEFAULT 100, b...
摘要:而且這種現象在德國的法定節假日里更加突出。所以本文提到的這些東西都是在德國節假日里無聊的產物,對于顧問的實際工作可能幫助不大。這也是在這篇文章里介紹的眾多用搞出來的無聊的東西里唯一被官方認可的工具,囧。直接用執行里的事務碼或者函數。 國慶大假馬上就要來臨了,我們聊點輕松的話題,關于假期。 Jerry的成都同事李貝寧(Li Ben), 《SAP成都研究院李三郎:SCP Applicati...
摘要:年月日晚,成都地鐵一號線,手機上突然彈出來一條金庸去世的新聞。作為一個開發人員,我在金庸這十四部名著里看到的,是的江湖。金庸的這個武功設定,和公司的數字化轉型,向的轉型很像。 2018年10月30日晚,成都地鐵一號線,Jerry手機app上突然彈出來一條金庸去世的新聞。 Jerry識字很早,小學一年級就開始蹭我父親的《射雕英雄傳》看了。小時候,我爸工作的車間里有一位領導,退休后把自己家...
閱讀 2569·2021-11-23 09:51
閱讀 2481·2021-09-30 09:48
閱讀 1076·2021-09-10 10:51
閱讀 2213·2021-08-12 13:22
閱讀 3568·2021-08-11 10:24
閱讀 2166·2019-08-30 15:55
閱讀 646·2019-08-30 14:05
閱讀 3211·2019-08-30 13:03