1、计算1000以内所有不能被7整除的整数之和
1、计算1000以内所有不能被7整除的整数之和
count-->429429
public class day09
{
public static void main(String[] args){
int count=0;
for(int i=0;i<=1000;i++){
if(i%7==0)
count=count;
else
count+=i;
}
System.out.println("count-->"+count);
}
}
2、计算 1+2-3+4-5+6-7…+100的结果
count–>52
public class day09
{
public static void main(String[] args){
int a=1;
int count=0;
for(int i=2;i<=100;i++){
count+=a*i;
a*=-1;
}
count+=1;
System.out.print("count-->"+count);
}
}
3、3、从控制台输入一个正整数,计算该数的阶乘。例如输入5,阶乘为 54321
3、从控制台输入一个正整数,计算该数的阶乘。例如输入5,阶乘为 5*4*3*2*1
从键盘中输入数据:
需要引入库:两种写法
1、import java.util.Scanner
2、import java.util.* 这个表示的是在util中的所有方法
Scanner s=new Scanner(System.in);//从键盘中输入数据
int i=s.nextInt();//整数
String str=s.next();//字符串
import java.util.*;
public class day09
{
public static void main(String[] args){
Scanner s=new Scanner(System.in);//从键盘中输入数据
int i=s.nextInt();//整数
String str=s.next();//字符串
System.out.print(fac(i));
}
public static int fac(int n){
int count=1;
for(int i=n;i>0;i--){
count*=i;
}
return count;
}
}
4、从控制台接收一个正整数,判断该数字是否为质数
质数(质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数)
方法一
import java.util.*;
public class day09
{
public static void main(String[] args ){
Scanner s=new Scanner(System.in);
int a=s.nextInt();
String str=shu(a);
System.out.print(str);
}
public static String shu(int n){
for (int i=2;i<n ;i++ )
{
if(n%i==0){
return "不是质数";//注意这里一定要跳出方法,否则将会
//导致for语句下的语句运行。
}
}
return "是质数";
}
}
方法二
巧用标记和三目运算符
import java.util.*;
public class day09
{
public static void main(String[] args ){
Scanner s=new Scanner(System.in);
int a=s.nextInt();
shu(a);
}
public static void shu(int n){
boolean iszhishu=true;
for (int i=2;i<n ;i++ )
{
if(n%i==0){
iszhishu=false;
}
}
System.out.print(iszhishu?n+"是质数":n+"不是质数");
}
}
5、从键盘接收一个正整数,该正整数作为行数,输出以下图形
*
import java.util.*;
public class day09
{
public static void main(String[] args){
Scanner s=new Scanner(System.in);
System.out.println("请输入数字:");
int a=s.nextInt();
for (int i=1;i<=a ;i++ )//控制换行
{
for (int m=1;m<=a-i ;m++ )//输出空格
{
System.out.print(" ");
}
for (int j=1;j<=2*i-1 ;j++ )//输出*号
{
System.out.print("*");
}
System.out.println();
}
}
}
6、小芳的妈妈每天给她2.5元钱,她都会存起来,
但是,每当这一天是存钱的第5天
或者5的倍数的话,她都会花去6元钱,请问,
经过多少天,小芳才可以存到100元钱
public class day09
{
public static void main(String[] args){
int count=0;
int sum=0;
while (sum!=100)
{
if (count%5!=0)
{
sum+=2.5;
count+=1;
}
else
{
sum-=6;
count+=1;
}
}
System.out.print(count);
}
}
7、一个数如果恰好等于它的因子之和,这个数就是完数,
例如 6 = 1 + 2 + 3,编程找出1000内所有的完数。
public class day09
{
public static void main(String[] args){
for (int i=1;i<1000 ;i++ )
{
int count=0;
for (int j=1;j<i/2 ;j++ )//这里的i需要除二
{
if (i%j==0)
{
count+=j;
}
}
if (count==i)
{
System.out.println(count);
}
}
}
}
8、给一个不多于5位的正整数,
要求:
一、求它是几位数
二、逆序打印出各位数字
import java.util.Scanner;
public class day09
{
public static void main(String[] args){
System.out.println("请输入一个不超过五位数的数字:");
Scanner sc=new Scanner(System.in);
int num=sc.nextInt();
int b=1;
int num2=num;
if(num<0 || num >99999)
{
System.out.println("您输入的数字不合法,请重新输入");
return;
}
else
{
while(num/10!=0)
{
b+=1;//这里的b可以通过while循环算出输入的数字是几位数
num/=10;//更新num1的值
}
System.out.println("该数字是"+b+"位数");
System.out.println("逆序输出的数为:");
for (int i=1;i<=b ;i++ )
{
int j=num2%10;
num2/=10;//更新num2的值
System.out.print(j);
}
}
}
}
本人也是刚刚入门学习java,如有不对,敬请谅解!!!!