【NYOJ】[acm-63]水仙花数

文章字数:167

问题描述

问题分析

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
#include<stdio.h>
#include<math.h>
int main() {
    int m;
    while(scanf("%d",&m),m!=0) {
        if(pow(m%10,3)+pow(m/10%10,3)+pow(m/100,3)==m)
            printf("Yes\n");
        else
            printf("No\n");
    }
    return 0;
}

标程写的还是挺不要脸的
-.-
不过对于 ? :
的运用确实是需要加强一下意识
现在完全没有用 ? 的想法

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
#include<iostream>
using namespace std;
int main()
{
    int a;
    while(1)
    {
        cin>>a;
        if(a==0) break;
        cout<<((a==153||a==370||a==371||a==407)?"Yes":"No")<<endl;
    }
}

嗯~
那把我自己的改成 ? 形式

1
2
3
4
5
6
7
8
9
#include<stdio.h>
#include<math.h>
int main() {
    int m;
    while(scanf("%d",&m),m!=0) {
    printf("%s\n",pow(m%10,3)+pow(m/10%10,3)+pow(m/100,3)==m?"Yes":"No");
    }
    return 0;
}

题目地址:【NYOJ】[v1-39]水仙花数

加载中...