gzt1993828 发表于 2016-7-23 18:19:10

n=0
Sum=0
while n<=1000:
    n+=1
    if n/3==int(n/3) or n/5==int(n/5):
      Sum+=n
    if n==999:
      print(Sum)

小建 发表于 2016-8-2 16:22:06

我的答案:233168
a =
sum = 0
for i in a:
    sum += i
print(sum)

弧矢七 发表于 2016-8-7 05:20:54

#include<stdio.h>
int main()
{
        int i,k=0;
       
        for(i=1;;i++)//这里判断所有3的倍数的和
        {
                k+=3*i;
                if(i*3>1000)
                {
                        break;
                }
        }
       
        int a,b=0;
        for(a=1;;a++)//这里是所有5倍数的和
        {
                b+=5*a;
                if(5*a>1000)
                {
                        break;
                }
        }
       
        printf("%d\n",k+b);
       
        return 0;
}



不知道对不对 我的答案是269340,出题的人没有写出正确答案吗?

始终 发表于 2016-8-12 01:31:48

def sumn(n):
    s = 0
    i = 0
    while i < n:
      if i % 3 == 0 or i % 5 == 0:
            s += i
      i += 1
    return sum
print(sumn(1000))

impossible 发表于 2016-8-18 07:30:28

#include <stdio.h>

int main()
{
        unsigned int i,sum=0;
        for(i=0;i<1000;i++){
                if(i%3==0||i%5==0)sum+=i;
        }
        printf("%d",sum);
       
        return 0;
}
                if(i%3==0||i%5==0)sum+=i;
        }
        printf("%d",sum);
       
        return 0;
}

随心而活 发表于 2016-8-18 11:00:43

#include <stdio.h>
int main()
{
        int i;
        long sum = 0;

        for(i = 1; 3 * i <=1000 || 5 * i <= 1000; i++)
        {
                if(3 * i % 5 != 0 && 3 * i <= 1000)
                {
                        sum += 3 * i;
                }
                if(5 * i <= 1000)
                {
                        sum += 5 * i;
                }
        }

        printf("\nsum = %ld\n", sum);
}

夏目悠 发表于 2016-8-20 10:42:23

无名侠 发表于 2015-7-8 17:54
错了,有的数同时是3和5的倍数。
比如 15

他那个用if不会有15的的倍数

夏目悠 发表于 2016-8-20 10:46:32

WilliamYu 发表于 2015-10-19 18:46
int sum, sum1, sum2, sum3, a, b, c;
a = 999 / 3;
b = 999 / 5;


等差数列,666

TAI 发表于 2016-8-22 14:25:15

num = 0
for i in range(1000):
    if i%3 == 0 or i%5 == 0:
      num = num + i
      
print(num)
>>> 233168

愤怒的大头菇 发表于 2016-9-2 12:00:26

list1 = []

for i in range(1,1000):
      if not (i % 5) or not (i % 3):
            list1.append(i)


print(sum(list1))

            

答案:233168

鱼油小白 发表于 2016-9-6 16:09:56

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int i, s = 0;
    for(i = 1; i < 1000; i++)
    {
      if(i % 3 == 0 || i % 5 == 0)
      {
            s += i;
      }
    }
    printf("%d",s);

    getch();
    return 0;
}

天外飞mao 发表于 2016-9-9 09:54:48

count = 0
for r in range(1000):
    if r%3==0 or r%5==0:
      count += r

print(count)

>>>
233168

cat73 发表于 2016-9-26 21:35:17

final int END = 1000;
int sum = 0;
for(int i = 15; i <= END; i += 15) {
    sum += i * 7 - (3 + 6 + 9 + 12 + 5 + 10);
}
for(int i = (END - END % 15) + 1; i <= END; i++) {
    if(i % 3 == 0 || i % 5 == 0) {
      sum += i;
    }
}

toBeNot 发表于 2016-9-27 10:40:03

public class MultiplesOf3and5
{
      public static void main(String[] args)
      {
                int sum = 0;
                for(int i = 0;i <= 1000;i++)
                {
                        if(i%3==0 || i%5==0)
                        sum += i;
                }
               
                System.out.println("1000以内的3或5的倍数的数字之和为:" + sum);
      }
}

776667 发表于 2016-9-29 10:44:01

def euler(number):
    return sum()

if __name__ == '__main__':
    print(euler(1000))

谦虚求学 发表于 2016-10-20 10:11:30

{:5_94:}

joker11111 发表于 2016-10-26 16:25:42

本帖最后由 joker11111 于 2016-10-26 17:02 编辑

//找1000以下的,属于3或5的倍数的数字之和
#include <windows.h>
#include <iostream>
#include <time.h>

using namespace std;

long int fun(int m);
int main()
{
        clock_t start, finish;
        double totaltime;
        start = clock();

        int m = 1000;
        cout << " 1000以下属于3或5的倍数的数字之和为:" << fun(m) << endl;

        finish = clock();
        totaltime = (double)(finish - start) / CLOCKS_PER_SEC;
        cout << "此程序的运行时间为" << totaltime << "秒" << endl;
        system("pause");
        return 0;
}

long int fun(int m)
{
        long int s = 0,i = 0;
        while (i < m)
        {
                if (0 == i % 3 || 0 == i % 5)
                        s = s + i;
                i++;
        }
        return s;
}

运行结果为:233168
运行时间:0.005秒

会魔法的魔法 发表于 2016-10-28 10:28:38

var i = 1001, sum=0;
while(--i){
        if(!(i%3 && i%5)){
                sum += i;
        }
}

梦想绘制者 发表于 2016-11-2 16:29:56

Sum = 0
for i in range(1000):
        if i%3 == 0 or i%5 == 0:
                Sum += i
print('The sum is %d' %Sum)

tsembrace 发表于 2016-11-6 21:19:43

"""
欧拉计划
10以下的自然数中,属于3或5的倍数的数字有3,5,6,9,它们之和为23
找出1000以下的自然数中,属于3或5倍数的所有数字之和
"""
def exactNum(m,n,num):
    if num%m==0 or num%n==0:
      return True
    else:
      return False
sum=0
for i in range(1,1000):
    if exactNum(3,5,i):
      sum=sum+i
print("1000以内整数中属于3或5倍数的所有数字之和为:"+str(sum))
页: 1 2 [3] 4 5 6 7 8 9 10 11 12
查看完整版本: 题目1:找出1000以下自然数中3和5的倍数之和