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

本文共 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

你可能感兴趣的文章
玩转报表排名
查看>>
SQL Server 默认跟踪(Default Trace)
查看>>
[剑指offer] 字符流中第一个不重复的字符
查看>>
平面上给定n条线段,找出一个点,使这个点到这n条线段的距离和最小。
查看>>
Source Insight 3.X 标签插件v1.0发布
查看>>
百度AI生态方法论升级,AI开放平台深入7大细分领域
查看>>
Linux下配置Golang开发环境
查看>>
AI技术出海 - 阿里云GPU服务器助力旷视勇夺4项世界第一
查看>>
《Learning Scrapy》(中文版)第11章 Scrapyd分布式抓取和实时分析
查看>>
[Python]一行代码判断请求参数是否正确
查看>>
gulp前端自动化工具的快速入门案例
查看>>
Java_数据交换_Jackson_用法入门
查看>>
GoCD 19.2.0 发布,ThoughtWorks 的持续集成引擎
查看>>
H3C大数据产品介绍
查看>>
Kafka-0.10.0.0 集群高可靠实验
查看>>
微信程序开发系列教程(三)使用微信API给微信用户发文本消息
查看>>
window上安装mysql数据库
查看>>
Python全栈工程师(多继承、函数重写)
查看>>
Spark2.1.0之内置RPC框架
查看>>
js对于小数的处理
查看>>