首页 > 编程语言 > 密码工程-扩展欧几里得算法

密码工程-扩展欧几里得算法

时间:2023-05-10 09:33:12浏览次数:34  
标签:gcd int 欧几里得 unsigned 密码 算法 printf extendedgcd

密码工程-扩展欧几里得算法
20201331黄文刚
任务详情:
0. 在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务

  1. 参考《密码工程》p112伪代码实现ExtendedGCD(int a, int b, int *k, int *u, int *v)算法(5
  2. 在测试代码中计算74模167的逆。(5
  3. 自己设计至少两个测试代码。5
  4. 提交代码和运行结果截图

代码

//myexgcd
#include<stdio.h>
int main()
{
    unsigned int a,b;
    int u,v,gcd;
    int extendedgcd(unsigned int a,unsigned int b,int *x,int *y);
    printf("请输入a和b:");
    scanf("%d%d",&a,&b);
    gcd=extendedgcd(a,b,&u,&v);
    printf("u=%d,v=%d\n",u,v);
    printf("最大公因子k=%d\n",gcd);
    printf("%d*%d+%d*%d=%d\n", u, a, v, b, gcd);
    return 0;
    }
    int extendedgcd(unsigned int a,unsigned int b,int *x,int *y)//扩展欧几里得算法;
    {
    if(b==0)
      {
        *x=1;
        *y=0;
        return a;
      }
    int ret=extendedgcd(b,a%b,x,y);
    int t=*x;
    *x=*y;
    *y=t-a/b*(*y);
    return ret;
}

实现

标签:gcd,int,欧几里得,unsigned,密码,算法,printf,extendedgcd
From: https://www.cnblogs.com/killerqueen4/p/17387026.html

相关文章

  • 密码工程—小素数
    一、任务详情在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务参考《密码工程》p107伪代码基于Eratosthenes算法实现intSmallPrimeList(intn,int*plist,int*len),其中plist返回素数列表,len返回列表长度(5’)2写出测试代码,至少包括n=2,n=你的四位学号,n>2^2......
  • 密码工程-小素数
    在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务参考《密码工程》p107伪代码基于Eratosthenes算法实现intSmallPrimeList(intn,int*plist,int*len),其中plist返回素数列表,len返回列表长度(10’)2写出测试代码,至少包括n=2,n=你的四位学号,n>2^20次方的测试代......
  • 密码工程-小素数
    密码工程-小素数0.在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务1.参考《密码工程》p107伪代码基于Eratosthenes算法实现intSmallPrimeList(intn,int*plist,int*len),其中plist返回素数列表,len返回列表长度(5’)2写出测试代码,至少包括n=2,n=你的四位......
  • 可变策略的拟人式三维装箱算法实现-开源
    问题给定一个长方体容器和较多不同形态的长方体货物,需确定装箱策略,使货物尽可能多地装填到容器中。假设与约束1、货物可向上码放;2、货物必须完全包含在容器中;3、任意两个货物内的任意一点不可在空间中的同一位置;4、货物不可悬空放置,即货物下方必须有其他货物或容器底部支撑;5、......
  • 密码工程-小素数
    在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务参考《密码工程》p107伪代码基于Eratosthenes算法实现intSmallPrimeList(intn,int*plist,int*len),其中plist返回素数列表,len返回列表长度(5’)2写出测试代码,至少包括n=2,n=你的四位学号,n>2^20次方的测试代......
  • 密码工程-小素数
    任务详情0.在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务1.参考《密码工程》p107伪代码基于Eratosthenes算法实现intSmallPrimeList(intn,int*plist,int*len),其中plist返回素数列表,len返回列表长度(5’)2写出测试代码,至少包括n=2,n=你的四位学号,n>2......
  • 代码随想录算法训练营第七天 | 454.四数相加II 、383.赎金信 
    ......
  • 国密算法环境配置
    国密算法环境配置参考链接openssl配置:https://blog.csdn.net/bruce135lee/article/details/81811403openssl命令:https://www.cnblogs.com/rocedu/p/14891816.html#opensslgmssl-tasslgmssl配置:https://blog.csdn.net/zyhse/article/details/112350363......
  • 算法学习day09字符串part02-28、459--待办
    packageLeetCode.stringpart02;/***28.找出字符串中第一个匹配项的下标*给你两个字符串haystack和needle,请你在haystack字符串中找出needle字符串的第一个匹配项的下标(下标从0开始)。*如果needle不是haystack的一部分,则返回-1。*实例:*输入:hayst......
  • 算法学习day10栈与队列part01-232、225
    packageLeetCode.StackAndQueuepart01;importjava.util.LinkedList;importjava.util.Queue;/***225.用队列实现栈*请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop和empty)。*实现MyStack类:*voidpush(intx)将元......