一、描写叙述

1、一球从m米高度自由落下。每次落地后反跳回原高度的一半;再落下,求它在 第n次落地时。共经过多少米?第10次反弹多高?

2、有1、2、3、4个数字。能组成多少个互不同样且无反复数字的三位数?都是多少?

程序分析:可填在百位、十位、个位的数字都是1、2、3、4。可是必须满足每一位上的数字各不同样,依据排列组合原理总共同拥有4*3*2=24种。

3、企业发放的奖金依据利润提成。利润(I)低于或等于10万元时。奖金可提10%。利润高于10万元,低于20万元时,低于10万元的部分按10%提成。高于10万元的部分,可可提成7.5%;20万到40万之间时。高于20万元的部分。可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时。高于60万元的部分,可提成1.5%。高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?

程序分析:依据输入的利润推断该利润所属的提成范围,计算结果。

二、源码

1、程序1

package tong.yue.hong;

import java.util.Scanner;

/**
* 一球从m米高度自由落下,每次落地后反跳回原高度的一半;再落下。求它在 第n次落地时。共经过多少米?第10次反弹多高?
* @author tong
*
*/ public class BallHeight { public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("请输入小球落地时的高度:"); double height = scan.nextDouble();
if (height<0) {
System.out.print("输入数据有误。请又一次输入小球落地时的高度:");
height = scan.nextDouble();
}
System.out.print("请输入小球落地的次数:");
int times = scan.nextInt();
if (times<0) {
System.out.print("输入数据有误,请又一次输入小球落地的次数:");
times = scan.nextInt();
}
scan.close();
ballDistance(height,times); } private static void ballDistance(double height, int times) { System.out.println("start height:"+height);
//開始落下之前的高度,以后每次弹起和落下记为一次
double sum = height;
for(int i=1;i<=times;i++){
height /=2.0;
System.out.println("第"+i+"次,球的弹起高度为:"+height);
//每次落地后反跳回原高度的一半,经过的路程为原高度的一半乘以2。由于有弹起和落下
sum +=2*height;
}
System.out.println("第"+times+"次,落地后经过的总距离为:"+sum+"米。 ");
} }

执行结果:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG9uZ3l1ZWhvbmcxMzc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="球下落">

2、程序2

package tong.yue.hong;
/**
* 有1、2、3、4个数字。能组成多少个互不同样且无反复数字的三位数?都是多少?
程序分析:可填在百位、十位、个位的数字都是1、2、3、4。
可是必须满足每一位上的数字各不同样。依据排列组合原理总共同拥有4*3*2=24种。
* @author tong
*
*/ public class PailieZuhe { public static void main(String[] args) {
int count = 0;
for (int i = 1; i <= 4; i++) {
for (int j = 1; j <= 4; j++) {
//个位和十位不能同样
if (j==i) {
continue;
}
for (int k = 1; k <= 4; k++) {
//个位和百位,十位和百位不能同样
if (i!=k&&j!=k) {
int num = i+j*10+k*100;
System.out.print(num+" ");
count++;
if (count%10==0) {
System.out.println();
}
}
}
}
}
System.out.println("\n总计:"+count+"个"); } }

执行结果:

3、程序3

package tong.yue.hong;

import java.util.Scanner;

/**
* 企业发放的奖金依据利润提成。 * 利润(I)低于或等于10万元时,奖金可提10%;
* 利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;
* 20万到40万之间时。高于20万元的部分,可提成5%;
* 40万到60万之间时高于40万元的部分。可提成3%;
* 60万到100万之间时,高于60万元的部分。可提成1.5%;
* 高于100万元时,超过100万元的部分按1%提成
* 从键盘输入当月利润I。求应发放奖金总数?
程序分析:依据输入的利润推断该利润所属的提成范围,计算结果
* @author tong
*
*/
public class Salary { public static void main(String[] args) {
System.out.println("请输入当月利润,单位为万元:");
Scanner scanner = new Scanner(System.in);
double I = scanner.nextDouble();
while (I<0) {
System.out.println("输入数据有误,请又一次输入当月利润。单位为万元:");
I = scanner.nextDouble();
}
scanner.close();
computeBonus(I); } private static void computeBonus(double i) {
double bonus = 0;
// 利润(I)低于或等于10万元时,奖金可提10%;
// 利润高于10万元,低于或等于20万元时。低于10万元的部分按10%提成,高于10万元的部分。可提成7.5%;
// 20万到40万之间时,高于20万元的部分。可提成5%。
// 40万到60万之间时高于40万元的部分。可提成3%;
// 60万到100万之间时,高于60万元的部分。可提成1.5%;
// 高于100万元时,超过100万元的部分按1%提成
if (i<=10) {
bonus = i*0.1;
}else if (i<=20) {
bonus = 10*0.1+(i-10)*0.075;
} else if (i<=40) {
bonus = 10*0.1+10*0.075+(i-20)*0.05;
} else if (i<=60) {
bonus = 10*0.1+10*0.075+20*0.05+(i-40)*0.03;
}else if (i<=100) {
bonus = 10*0.1+10*0.075+20*0.05+20*0.03+(i-60)*0.015;
}else {
bonus = 10*0.1+10*0.075+20*0.05+20*0.03+40*0.015+(i-100)*0.01;
} System.out.println("您本月利润为:"+i+"万元。所得奖金为:"+bonus+"万元。");
} }

执行结果:

JAVA基础编程50题(10-12题)具体解释的更多相关文章

  1. JAVA基础编程50题(4-6题)具体解释

    一.描写叙述 1.将一个正整数分解质因数.比如:输入90,打印出90=2*3*3*5. 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完毕: (1)假设这个质数恰等于n,则说明 ...

  2. Java经典逻辑编程50题

    Java经典逻辑编程50题 2016-11-03 09:29:28      0个评论    来源:Alias_fa的博客    收藏   我要投稿 [程序1] 題目:古典问题:有一对兔子,从出生后第 ...

  3. 6、50道JAVA基础编程练习题跟答案

    50道JAVA基础编程练习题 [程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 程序分析 ...

  4. 50道JAVA基础编程练习题

    50道JAVA基础编程练习题 [程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少? 程序分析 ...

  5. 50道JAVA基础编程练习题 - 题目

    50道JAVA基础编程练习题[1]题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? [2]题目:判断 ...

  6. MQ java 基础编程

    MQ java 基础编程 编写人:邬文俊 编写时间 : 2006-2-16 联系邮件 : wenjunwu430@gmail.com 前言 通过 2 个多星期对 MQ 学习,在 partner 丁 & ...

  7. JAVA基础——编程练习(二)

    JAVA编程练习(二) 今天我为了巩固之前的java基础知识的学习,再次进行实战演习,编写了一个小小的java控制台程序,主要是运用java面向对象的思想来完成这个小项目. 一.项目背景介绍 根据所学 ...

  8. Java经典逻辑编程50题 (转)

    注: 转自https://blog.csdn.net/Alias_fa/article/details/52985112  (摘了题目部分和部分分析,想看原作代码的见原作链接) [程序1] 題目:古典 ...

  9. java基础编程题练习(一)

    1.编程实现用户输入4个整数,按从大到小的顺序排列输出. 思路:将输入的数据存入数组,使用冒泡排序对数组数据进行排序后输出数组 冒泡排序的代码如下: import java.util.Scanner; ...

随机推荐

  1. 欧拉计划&#183;第四题

    题目4:找出由两个三位数乘积构成的回文. 一个回文数指的是从左向右和从右向左读都一样的数字.最大的由两个两位数乘积构成的回文数是9009 = 91 * 99. 找出最大的有由个三位数乘积构成的回文数. ...

  2. uva live-2322 - Wooden Sticks

    首先排个序,然后找一次0花费,然后再找一次0花费,然后再找一次0花费,然后再找一次0花费......... 最后看找了几次,+1就是答案 #include<iostream> #inclu ...

  3. GMM的EM算法

    在聚类算法K-Means, K-Medoids, GMM, Spectral clustering,Ncut一文中我们给出了GMM算法的基本模型与似然函数,在EM算法原理中对EM算法的实现与收敛性证明 ...

  4. C++中的#pragma 预处理指令详解

    源地址:http://blog.csdn.net/roger_77/article/details/660311 在所有的预处理指令中,#pragma 指令可能是最复杂的了,它的作用是设定编译器的状态 ...

  5. 经常使用Firefox插件大全

    Web开发者经常使用的火狐插件 1)FireShot:是一个截图工具,来源于截图软件Screenshot Studio的开发商,是一个Firefox扩展或者说是Firefox版的Screenshot ...

  6. poj2411(状压dp)

    题目链接:http://poj.org/problem?id=2411 题意:由1*2 的矩形通过组合拼成大矩形,求拼成指定的大矩形有几种拼法. 分析:如果是横着的就定义11,如果竖着的定义为竖着的0 ...

  7. Spring相框

    1.什么是Spring相框?Spring有哪些主要模块框架? Spring框架是一个为Java应用程序的开发提供了综合.广泛的基础性支持的Java平台. Spring帮助开发人员攻克了开发中基础性的问 ...

  8. 服务器编程入门(5)Linux服务器程序规范

    问题聚焦:     除了网络通信外,服务器程序通常还必须考虑许多其他细节问题,这些细节问题涉及面逛且零碎,而且基本上是模板式的,所以称之为服务器程序规范.     工欲善其事,必先利其器,这篇主要来探 ...

  9. Python做的眼睛护士

    搞了两天终于搞定了,虽然还存在一点点小问题(窗口的显示位置应该设在(0,0)).但基本可以用了. 代码分两个部分.主界面和遮挡屏幕界面.主界面设置完时间后调用遮挡屏幕界面. 1.主界面(设置 工作时间 ...

  10. UVA12304 2D Geometry 110 in 1! 计算几何

    计算几何: 堆几何模版就能够了. . .. Description Problem E 2D Geometry 110 in 1! This is a collection of 110 (in bi ...