1 条题解
-
0
C :
#include<stdio.h> int main(){ int i,n,sum=0; scanf("%d",&n); if(n % 2 == 0){ //判断n是偶数还是奇数 for(i = 1;i <= n;i++){ if(n % i == 0){ //判断i是不是n的约数 sum += i; } } }else{ for(i = 1;i <= n;i++){ if(i % 2 == 0){ sum += i; } } } printf("%d",sum); return 0; }C++ :
#include <iostream> #include <iomanip> #include <cmath> using namespace std; int main(){ int a,i,s=0; cin>>a; if(a%2==0){ for(i=1;i<=a;i++){ if(a%i==0){ s=s+i; } }cout<<s<<endl; } else{ for(i=2;i<a;i=i+2){ s=s+i; }cout<<s; } }Pascal :
var n,i,s:integer; begin readln(n); if odd(n) then begin s:=0; for i:=2 to n do if not odd(i) then s:=s+i;{求偶数之和} end else begin s:=0; for i:=1 to n do if n mod i=0 then s:=s+i;{求约数之和} end; writeln(s); readln; end.Java :
import java.util.Scanner; public class Main { public static void main(String[] args) { @SuppressWarnings("resource") Scanner scanner=new Scanner (System.in); int m=scanner.nextInt(); if (m%2==0) { int sum=0; for (int i=1; i<=m;i++) { if(m%i==0){ sum=sum+i;} } System.out.println(sum); } else {int C=0; for (int a=2;a<=m;a=a+2) { C=C+a; } System.out.println(C); } } }Python :
n=int(input()) if n%2!=0: i=0 s=0 while i<n: s+=i i+=2 print(s) if n%2==0: i=1 s=0 for i in range(1,n+1): if n%i==0: s+=i i+=1 print(s)
- 1
信息
- ID
- 59
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 10
- 标签
- 递交数
- 6
- 已通过
- 4
- 上传者