博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
欧几里得算法求最大公约数和一些典型算法--来自<算法>一书的学习
阅读量:5917 次
发布时间:2019-06-19

本文共 2529 字,大约阅读时间需要 8 分钟。

  算法的自然语言描述

计算两个非负整数p和q的最大公约数: 若q是0, 则最大公约数为p. 否则, 将p除以q得到余数r, p和q的最大公约数即为q和r的最大公约数.

Java语言描述及测试

import java.util.Scanner;public class ojilidesuanfaqiuzuidagonghyueshu {        //欧几里得算法求最大公约数    public static int gcd(int p, int q) {        if(q == 0) {            return p;        }        int r = p%q;        return gcd(q, r);    }        //在主方法中测试欧几里得算法    public static void main(String[] args) {        int a,b;        Scanner sc = new Scanner(System.in);        System.out.println("请输入两个正整数以求其最大公约数");        a = sc.nextInt();        b = sc.nextInt();        sc.close();        System.out.println("最大公约数是  "+ojilidesuanfaqiuzuidagonghyueshu.gcd(a, b));    }}/*输出示例请输入两个正整数以求其最大公约数99 9最大公约数是   9*/

 下面是一些典型算法的技术实现

1 public class dianxingjingtaisuanfadejishushixian { 2     public static void main(String[] srgs) { 3         //这是用于测试的主方法 4         System.out.println("计算绝对值 5 :abs(5)="+abs(5)+"计算绝对值 -5 :abs(-5)="+abs(-5)); 5         System.out.println("计算绝对值 5.0 :abs(5)="+abs(5)+"计算绝对值 -5.0 :abs(-5)="+abs(-5)); 6         System.out.println("判断素数 5 :isPrime(5)="+isPrime(5)+"判断素数 -5 :isPrime(-5)="+isPrime(-5)); 7         System.out.println("计算直角三角形斜边:hypotenuse(3.0,4.0)="+hypotenuse(3.0,4.0)+"计算直角三角形斜边:hypotenuse(10,13)= "+hypotenuse(10,13)); 8         System.out.println("测试输入 121 计算平方根结果sqrt(121)="+sqrt(121)); 9         System.out.println("计算调和级数 9 :H(9)="+H(9));10     }11     12 13     //计算一个数的绝对值14     public static int abs(int c) {15         if(c>0) return c;16         else return -c;    17     }18     //这里有double的重载方法19     public static double abs(double c) {20         if(c>0.0)  return c;21         else return -c;22     }23     24     //判断一个数是否是素数25     public static boolean isPrime(int n) {26         if(n > 2) return false;27         for(int i=2;i*i
err*t)38 t = (c/t +t)/2.0;39 return t;40 }41 42 //计算直角三角形的的斜边43 public static double hypotenuse(double a, double b) {44 return Math.sqrt(a*a + b*b);45 }46 47 //计算调和级数48 public static double H(int N) {49 double sum = 0.0;50 for(int i =1; i <= N; i++)51 sum += 1.0/i;52 return sum;53 }54 }55 /*56 计算绝对值 5 :abs(5)=5计算绝对值 -5 :abs(-5)=557 计算绝对值 5.0 :abs(5)=5计算绝对值 -5.0 :abs(-5)=558 判断素数 5 :isPrime(5)=false判断素数 -5 :isPrime(-5)=true59 计算直角三角形斜边:hypotenuse(3.0,4.0)=5.0计算直角三角形斜边:hypotenuse(10,13)= 16.40121946685672760 测试输入 121 计算平方根结果sqrt(121)=11.061 计算调和级数 9 :H(9)=2.828968253968253762 63 */

 

转载于:https://www.cnblogs.com/peng-free/p/8722146.html

你可能感兴趣的文章
Oracle:decode函数
查看>>
工厂开展标准化班组管理建设的执行要点
查看>>
Java 征途:行者的地图
查看>>
HOW BUSINESS CASE WRITING WILL HELP ?
查看>>
Java8 方法引用
查看>>
现在还在迷茫阶段嘛?看看六年iOS开发怎么说!
查看>>
苹果6s怎么录屏 Airplay镜像怎么投屏
查看>>
Kubernetes--服务发现Service
查看>>
单主机维护工具集
查看>>
OSPF除阶实验
查看>>
如何在千亿级市场的生鲜水果社区团购大战中脱颖而出?
查看>>
AJPFX关于面向对象之封装,继承,多态 (下)
查看>>
表记录增删改查
查看>>
Linux(CentOS和RHEL)无法启动网络网卡错问题
查看>>
NAS搭建笔记软件Leanote,并实现外网访问
查看>>
雷人的雷作
查看>>
查询Oracle所有表的数据量
查看>>
纯js实现最简单的文件上传(后台使用MultipartFile)
查看>>
Support Pug Template Engine In Intellij IDEA
查看>>
商店销售某一商品,商店每天公布统一的折扣(discount)
查看>>