Java 算法(二)
【程序9】 题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3。编程找出1000以内的所有完数
//第一种
public class A09 {
public static void main(String[] args) {
int s;
for (int i = 1; i <= 1000; i++) {
s = 0;
for (int j = 1; j < i; j++)
if (i % j == 0)
s = s + j;
if (s == i)
System.out.print(i + " " );
}
System.out.println();
}
}
//第二种:
public class A08{
public static void main(String[] args) {
int i,j,sum;
for(i=1;i<1000;i++)
{
sum = 0;
for(j=1;j<=i/2;j++)
{
if(i%j==0)
{
sum+=j;
}
}
if(sum==i)
{
System.out.print(i+" its factors are: ");
for(j=1;j<=i/2;j++)
{
if(i%j==0)
System.out.print(j+", ");
}
System.out.println();
}
}
}
}
【程序10】 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,
共经过多少米?第10次反弹多高?
public class A10 {
public static void main(String[] args) {
double s = 0;
double h = 100;
for (int i = 1; i <= 10; i++) {
s += h*1.5;
h = h/2;
}
System.out.println("经过路程:"+s);
System.out.println("反弹高度:"+h);
}
}
【程序11】 题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
public class A11 {
public static void main(String[] args) {
int count = 0;
for (int i = 1; i <= 4; i++)
for (int j = 1; j <= 4; j++)
for (int k = 1; k <= 4; k++)
if (i != j && j != k && i != k) {
count += 1;
System.out.println(i*100 + j*10 + k);
}
System.out.println("共" + count + "个三位数");
}
}
【程序12】 题目:输出9*9口诀乘法表
public class A12{
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++)
System.out.print(i + "*" + j + "=" + (i*j) + "\t");
System.out.println();
}
}
}
【程序13】 题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,
又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩
下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少?
public class A13{
public static void main(String[] args) {
int sum = 1;
for (int i = 0; i < 9; i++) {
sum = (sum + 1) * 2;
}
System.out.println("第一天共摘"+sum);
}
}
【程序14】 题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和
public class A14 {
public static void main(String[] args) {
float a = 1.0f;
float b = 1.0f;
float temp;
float sum = 0f;
for (int i = 0; i < 20; i++) {
temp = a;
a = b;
b = b + temp;
System.out.println((int) b + "/" + (int) a);
sum += b / a;
}
System.out.println("前二十项和为"+sum);
}
}
Java 算法(二)的更多相关文章
- Java 算法(一)贪心算法
Java 算法(一)贪心算法 数据结构与算法目录(https://www.cnblogs.com/binarylei/p/10115867.html) 一.贪心算法 什么是贪心算法?是指在对问题进行求 ...
- Java实现二维码技术探讨。
Java生成二维码方法有三种: 1: 使用SwetakeQRCode在Java项目中生成二维码 http://swetake.com/qr/ 下载地址 或着http://sourceforge.j ...
- java算法--稀疏数组
数据结构必要知识 线性结构 线性结构是最常用的数据结构,数据元素之间存在一对一的线性关系. 线性结构有两种不同的存储结构,即顺序存储结构和链式存储结构.顺序存储的线性表称为顺序表,顺序表中的存储元素是 ...
- Java EE : 二、图解 Cookie(小甜饼)
目录 Java EE : 一.图解Http协议 Java EE : 二.图解 Cookie(小甜饼) Java EE : 三.图解Session(会话) 概述 一.概述 二.详细介绍Cookie 传输 ...
- 利用JAVA生成二维码
本文章整理于慕课网的学习视频<JAVA生成二维码>,如果想看视频内容请移步慕课网. 维基百科上对于二维码的解释. 二维条码是指在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图 ...
- JAVA算法系列 冒泡排序
java算法系列之排序 手写冒泡 冒泡算是最基础的一个排序算法,简单的可以理解为,每一趟都拿i与i+1进行比较,两个for循环,时间复杂度为 O(n^2),同时本例与选择排序进行了比较,选择排序又叫直 ...
- JAVA算法系列 快速排序
java算法系列之排序 手写快排 首先说一下什么是快排,比冒泡效率要高,快排的基本思路是首先找到一个基准元素,比如数组中最左边的那个位置,作为基准元素key,之后在最左边和最右边设立两个哨兵,i 和 ...
- java实现二维码
说起二维码,微信好像最先启用,随后各类二维码就开始流行起来了.那什么是二维码呢. 1.什么是二维码?百度一下即可 http://baike.baidu.com/view/132241.htm?fr=a ...
- Java 设计模式(二)-六大原则
Java 设计模式(二)-六大原则 单一职责原则(Single Responsibility Principle) 定义: 不要存在多余一个原因导致类变更,既一个类只负责一项职责. 问题由来: 当类A ...
随机推荐
- C# 基于密码的身份验证报错问题System.Net.NetworkCredential
今天碰到个很奇怪的问题,在用下面这段代码调试时获取身份验证时居然报错,更奇怪的是本地VS中调试正常而在虚机上调试就报错了 ClientCredentials clientCredentials = n ...
- (一)UI设计的一些常识
一.概述 新版本的Xcode似乎框架不明示. UIView:屏幕上看得见摸得着的东西.视图.控件.组件. UIView是一个容器,能容纳其他UIView. UIViewController用来控制UI ...
- 解决unbuntu14.04上的eclipse自动退出的问题
新安装的ubuntu14.04版,把以前12.04上正常使用的eclipse拷贝到14.04上后,启动eclipse后,输入代码时出现点"."提示符就会自动重启. jdk是1.7. ...
- startService与bindService的区别
转自:http://www.devdiv.com/thread-52226-1-1.html Service的生命周期方法比Activity少一些,只有onCreate, onStart, onDes ...
- Windows下比较简单的获取网页源码的方法
第一个方法是使用MFC里面的 <afxinet.h> CString GetHttpFileData(CString strUrl) { CInternetSession Session( ...
- 生产者消费者的java实现
先看最简单的,也就是缓冲区的容量为1 缓冲区容量为1 import java.util.List; public class ProducerAndConsumer2 { static class A ...
- centos 系统时间的同步
1.当你的网站架构涉及到多台服务器的时候,服务器之间的时间必须得同步,这样就涉及到了程序的时间的准确性问题,特别是跟时间相关的操作和系统本身的定时任务. 2.时间同步工具:ntpdate,安装方式:y ...
- infiniDB在linux下完成倒库
在网看到自己的文章被四处烂用,经常搜到自己的文章.关键是,你能把我头像删除了不,有本事,你 把网址也给出http://blog.csdn.net/longshenlmj/article/details ...
- RedHat系列软件管理(第二版) --二进制软件包管理
RedHat系列软件管理 --二进制软件包管理 Linux学习思想-Linux相对与Windows来非常透明,因此,无论是系统,还是软件,都会有本身自带,或者是Man给提供的非常详细的说明/帮助文档, ...
- LeetCode之“排序”:Largest Number
题目链接 题目要求: Given a list of non negative integers, arrange them such that they form the largest numbe ...