#-*- coding: utf-8-*-import timeimport math#获取3位数的水仙花数start1 = time.time()start = time.time() numbers = []for i in range(100,1000): a = i % 10 b = i // 10 % 10 c = i // 100 if((a ** 3) + (b ** 3) + (c ** 3)) == i: numbers.append(i) for j in numbers:
//7.求两个整数的最大公约数#include<stdio.h>//用穷举法求出最大公约数int gcd1(int m,int n){ int min = m > n ? n : m; while (min) { if (m%min == 0 && n%min == 0) { break; } else { min--; } } return min;}//快速求最大公约数的算法,称为辗转相除法,以下用递归实现int gcd2(int m,int n){ if (n==0
水仙花数是指一个n位正整数(n>=3),他得每个位上得数字得n次幂之和等于它本身(例如:1^3+5^3+3^3=153) for i in range(101,1000): #3位数得水仙花数 l = len(str(i)) #求个位.十位.百位分别是多少 #水仙花数计算公式 1^3+5^3+3^3=153 if i == ((i//100)**l + (i//10%10)**l + (i%100%10)**l): print(i)
package com.zuoye.test;//打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,//其各位数字立方和等于该数本身.//例如:153是一个 "水仙花数 ",//因为153=1的三次方+5的三次方+3的三次方.public class Shuixian { public static void main(String[] args) { int a; int b; int c; int sum1=0; int su
#!/usr/bin/env python# -*- coding: utf-8 -*-print("请输入三位数:")num = input()# 定义常量SumNum = 0# 1.判断当前输入的字符型的数值是否为3位数if len(num) == 3: # 判断数值是否为十进制数据,避免输入的不是数字的字符 if num.isdecimal() is True: # 字符类型for循环时,是以字符串的单个字符输出 for i in num: # 2.求每一位数的3次方的和 Sum