条件循环练习题(while)(三道)

目录

下期在更三道。

第一道

        最小公倍数

                        题目描述:1

                        【问题描述】1

                        【输入格式】1

                        【输出格式】1

                        【输入样例】1

                        【输出样例1       

                          提示1

                          代码1

  第二道

        最大公约数

                题目描述2

               【问题描述】2

                【输入格式】2

                【输出格式】2

                【输入样例】2

                【输出样例】2

                 提示2

                 代码2

   第三道

        角谷猜想

                       【问题描述】3

                        【输入格式】3

                        【输出格式】3

                        【输入样例】3

                        【输出样例】3

                        提示3

                        代码3

  今天的特邀嘉宾是......


下期在更三道。

第一道

        最小公倍数

                        题目描述:1
 
                        【问题描述】1

                                求两个整数M和N的最小公倍数。

                        【输入格式】1

                                输入一行,包括两个整数.

                        【输出格式】1

                                输出只有一行(这意味着末尾有一个回车符号),包括1个整数。

                        【输入样例】1

                                        45 60

                        【输出样例1       

                                        180

                          提示1

                                其实不用while或for,用一个叫做__gcd(x,y) 的函数就可以了。他是求最大公约数的。用公式x*y/__gcd(x,y);输出就可以了(bits/stdc++.h 万能头)

                          代码1

     #include <bits/stdc++.h>
     using namespace std;
     int n,m;
     main() {
             cin>>n>>m;
             cout<<n*m/__gcd(n,m);
     }

  

#include <bits/stdc++.h>
using namespace std;
int n,m;
main() {
	cin>>n>>m;
	cout<<n*m/__gcd(n,m);
}

  第二道

        最大公约数

        

                题目描述2
 
               【问题描述】2

、                                     求最大公约数:求m,n的最大公约数

                【输入格式】2

                                          输入2个正整数 m,n

                【输出格式】2

                                          输出最大公约数

                【输入样例】2

                                          28  6

                【输出样例】2

                                          yue:2

                 提示2

                嗯,上次用的__gcd起作用了。

                 代码2

#include <bits/stdc++.h>
using namespace std;
int n,m;
main() {
    cin>>n>>m;
    cout<<"yue:"<<__gcd(n,m);
}

#include <bits/stdc++.h>
using namespace std;
int n,m;
main() {
	cin>>n>>m;
	cout<<"yue:"<<__gcd(n,m);
}

   第三道

        角谷猜想

                       【问题描述】3

                            在数学上,有一个称为角谷猜想(最早由日本数学家角谷静夫提出)的经典题,其内容是:“对任意的正整数n,若为偶数,则把它除以2,若为奇数,则把它乘以3加1。经过如此有限次运算后,总可以得到正整数值1”。

请你编一个程序,根据输入的正整数n,输出以上运算过程。

                        【输入格式】3

输入数据仅一行包含一个正整数n(2≤n≤100)。

                        【输出格式】3

一行输出一次运算的算式,算式中除了运算符号、等号及数字以外不包含其它任何字符。

                        【输入样例】3

                                3

                        【输出样例】3

                                3*3+1=10

                                10/2=5

                                5*3+1=16

                                16/2=8

                                8/2=4

                                4/2=2        

                                2/2=1

                        提示3

                        只要while判断是否等于1,里面判断是否是偶数和奇数做各个事情,就行了。

                        代码3

#include <bits/stdc++.h>
using namespace std;
int n,m,i;
main() {
    cin>>n;
    for (i=1;n!=1;i++) {
        cout<<n;
        if(n%2==1)cout<<"*3+1",n=n*3+1; else cout<<"/2",n/=2;
        cout<<"="<<n<<"\n";
    }
}

#include <bits/stdc++.h>
using namespace std;
int n,m,i;
main() {
	cin>>n;
	for (i=1;n!=1;i++) {
		cout<<n;
		if(n%2==1)cout<<"*3+1",n=n*3+1; else cout<<"/2",n/=2;
		cout<<"="<<n<<"\n";
	}
}

  今天的特邀嘉宾是......

C-DHEnry!!

如果你上次登进他的网站。你肯定认识他。

那么......

C-DHEnry-CSDN博客C-DHEnry擅长OJ题解/提示,电脑,编程题目/题解/算法,等方面的知识,C-DHEnry关注python,c++,c语言,vim领域.https://blog.csdn.net/weixin_68261272?type=blog

不妨给他一个关注吧!                     

                

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值