“for”循环使用,教的是固定数值,我当时想就改成键入数值应该是没错

本文探讨了Java中for循环的应用,包括阶乘计算、求和、奇偶数判断及水仙花数的查找。通过实际代码示例,展示了如何利用for循环解决常见数学问题。

for循环的阶乘“我改成键入数据”

/*阶乘的规矩
	N!= n*(n-1)
	N! = n * (n-1)*......*3*2*1
*/
import java.util Scanner;
class text{
	public static void main(strang[] agrs){
		//创建键入对象
		Scanner sc = new Scanner(system.in);
		int x = sc.nextLine();
		//我想求X的阶乘所以要定义一个初始化值来存放第一次的阶乘,并且不能为0,0乘任何一个数为0
		int y = 1;
		for (int b = 1 ;b < x; b++ ){
			y = y * b;
		}
		System.out.println(x+"阶乘是"+y)
	}
}

下面是求偶数和“改成键入数据”

import java.util Scanner;
class text{
	public static void main(strang[] agrs){
		Scanner sc = new Scanner(system.in)
		int number1 = sc.nextLine();
		int sum =0;
		//这里想求0到sum的所有偶数的和,用取余方式,某个数被2取余为0,则为偶数
		for (int x = 1; x<=number1; x ++ ){
			//我不知道这个是不是取余的符号,shift+6的,
			//这个if语句就是判断当X取余为0的时候,就相加,不为0则跳过
			if(x%2 = =0){    
				sum += x;  	
			}
		}
	}
}

奇数相加

/*
	我目前就想到这个办法来取奇数,不等于0应该就是奇数吧?或者说取余=1就是为奇数
*/
import java.util Scanner;
class text{
	public static void main(strang[] agrs){
		Scanner sc = new Scanner(system.in)
		int number1 = sc.nextLine();
		int sum =0;
		//这里想求0到sum的所有奇数的和,用取余方式,某个数取余等于2,则为奇数
		for (int x = 1; x<=number1; x ++ ){
			//我不知道这个是不是取余的符号,shift+6的
			//这个if语句就是判断当X取余不等于2,就相加,等于则跳过
			if(x%2 <>0){    
				sum += x;  	
			}
		}
	}
}

水仙花数

/*
按照教学讲的,水仙花数就是某个数的个位数和十位数百位数相加。
下面代码是我修改了一下。
我的想法是,想用数组来存放这个范围内的所有数值的个位数百位数千位数等等。
然后并且输出。
*/
import java.util Scanner;
class test{
	Scanner sc = new Scanner(system.in);
	int a = sc.nextLin();
	//判断输入的数值是几位数
	int cout = 0
	while (cout>0){
		a = a / 10;
		cout++
	}
	//这里我想创建数组来存放我键入的数值个 位数 百位数 十位数等等,数组长度等于这个数值的位数
	//(或者不能大于)
	int arr [] = new arr[cout];
	//开始计算水仙花,因为我想从十位数开始算,所以这里S==10是开头
	for(int s==10;s<=a;a++){
	//这里是代码表达式, 我想让他做一个循环,可以自动帮我计算个位数,百位数等等的数值。
	//但,不能大于这个数值的总位数,
		for (b==0;b<=cout;b++){
		//这里就是把每个位数上的数值录入到这个数组里面。
			for (c==0;c<=cout;c++){
					arr[c] = s/10^b %10;
				}
			}
	//开始计算数值里面的数值(开始计算水仙花数)
	//创建一个对象存放总和
		int sum1,sum2,sum3;
		for(int i = 0; i < arr.length;i++){
			sum1 = sum1 + arr[i];
			}
		for (int i = 0; i<arr.length;i++){
			sum2 = sum2 + arr[i];
			}
		for (int i = 0; i<arr.length;i++){
			sum3 = sum3 +arr[i]
			}	
		if(int x = sum1 *3 +sum2*3+sum3*3){
			System.out.println("这个范围的水仙数为"+x)
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值