栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

NH-01.【选做题】Gate

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

NH-01.【选做题】Gate

欢迎来到c语言的世界,这是一个诞生于1972年的世界。本系列十六题选做题,将带你游历c语言的世界!

你走到了c语言城堡门口,发现大门紧锁,锁是一个四位密码锁。你的导游表示他也没遇到过这种情况,于是你需要自己解开这个密码。作为本系列的第一关,c语言世界肯定不会为难你,大胆闯关吧!

门的旁边写着提示:第一位数是第K小的质数;第二位数是满足行列式 =0的那个x的绝对值的个位数;

第三位数1234和4321的最大公因数;第四位是463和b的最小公倍数的十位数。

其中,K,a,b均由读入给出。

易证明,在规定的数据范围内,x一定是正整数。

输入格式:

第一行输入三个正整数数K,a,b

输出格式:

四个数,中间不需要空格隔开,表示密码。

样例输入:

2 1 2

样例输出:

3012

数据范围:

1≤K≤2,1≤a≤6,1≤b≤462

 

# include
# include

int zhi(int k);//得出质数 
int matrix(int a);//求行列式的x 
int bei(int b);//求十位数 


int main()
{
	int k, a, b;
	scanf("%d %d %d", &k, &a, &b);
	printf("%d%d%d%dn", zhi(k), matrix(a), 1, bei(b));
	
	
}

int zhi(int k)
{
	int i = 1;
	int j = 1;
	int m ;
	while (i <= k)
	{
		
		j ++;//使j=2,得到第一个质数,与i=1对应 
		exit:
		m = 1;
		while (m <= (int)sqrt(j) )
		{
			
			if (j % m == 0 && m != 1)
			{
				j ++;
				goto exit;//若j可被 1以外的数整除(非质数),则跳过它,j++ 
			}
			m ++;
		}//经过遍历m,无法满足if的,为质数,此时的i就是第几个(本次循环前,上次循环最后i已经++ 
		
		i ++;
	}
	return j;
}


int matrix(int a)
{
	int x = 0;
	int g;
	while ((a * x) != 720)
	{
		x ++;
	}//解方程 
	g = x % 10;
	return g;
}


int bei(int b)
{
	int d = 0;
	int ori = 0;
	if (b > 463)
	{
		ori = b;
	}
	else
	{
		ori =463;
	}//令ori为二者中较大的 
	while(ori % 463 != 0 || ori % b != 0)
	{
		ori ++;
	}//使ori逐步增大,直至为公倍数 
	d = (ori / 10) % 10;
	return d;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/994153.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号