恭喜,你发布的帖子
发布于 2022-12-15 22:59:44
34楼
试着写一个,比较土,但是好在简单明了
FUNCTION "SumOne" : Void
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_INPUT
IN : LInt;
END_VAR
VAR_OUTPUT
Count : Int;
END_VAR
VAR_TEMP
TempLint : LInt;
SumOne : Int;
END_VAR
BEGIN
#TempLint := #IN;
#SumOne := 0;
WHILE #TempLint <> 0 DO
IF (#TempLint MOD 2) = 1 THEN
#SumOne += 1;
END_IF;
#TempLint := SHR(IN := #TempLint, N := 1);
END_WHILE;
#Count := #SumOne;
END_FUNCTION
请填写推广理由:
分享
只看
楼主