判断一个数n能否同时被3和5整除.用自然语言和传统流程图表示求解的算法

1个回答

  • 被3整除的数,各个数字和为3倍数.

    被5整除的数,末位数字为0或5.

    ==>同时被3和5整除的数,各个数字和为3倍数且末位数字为0或5.

    或者更简单些,能被15整除.

    算法:

    1、判断是否为3倍数

    ————把n拆开

    ————各数字相加除以3

    ————余数==0?

    ————是,转下一步;否,退出NO

    2、判断末位数字是否为0或5

    ————末位数字==0或==5?

    ————是,退出YES;否,退出NO

    1、判断是否为15倍数

    ————n对15取余

    ————余数==0?

    ————是,退出YES;否,退出NO

    程序:

    #include

    void main()

    {

    int i,m,k=10,s=0;

    int a[10];

    printf("输入一个正整数:");

    scanf("%d",&m);

    a[0]=0;

    for(i=1;i