/ 基础 / 题库 /

循环的作用一:范围遍历

循环的作用一:范围遍历

Background

一,范围遍历:
当我们要将某一范围,比如m到n之间所有的数字、符号依次输出或者进行检查时,可以用循环来实现。具体方法是设置一个代表m-n范围内所有数字的变量i,然后将其不断+1直到n,具体代码如下:

    int m,n;                //定义范围边界m,n 
    cin>>m>>n;              //输入m,n 
    int i=m;                //用变量i代表m到n之间所有数字 
    i=m;                //m到n第一个数字是m,所以i的初始值是m 
    while(i>=m && i<=n)     //i的范围是m到n 
    {
        cout<<i<<"  ";      //重复执行的命令
        
        i=i+1;                  //将i的数值+1,变成下一个数 
    }

例如,我们可以通过范围遍历来解决鸡兔同笼的问题,假设鸡和兔子一共有n个头,200条腿,那么鸡的数量范围就是0-200,我们可以将每种情况依次进行计算,找出符合要求的情况(腿的数量加起来是200)进行输出。

#include<iostream>
using namespace std;
int main()
{
    int n;//总数量
    cin>>n;
    
    int i=0;                                //鸡的数量,最少为0
    while(i>=0 && i<=n)             //鸡的数量0-n 
    {
        int t=n-i;                      //总数量-鸡的数量=兔子的数量t
        
        if(i*2 + t*4 == 200 )           //如果当前腿的数量==200 
        {
            cout<<i<<" "<<t;            //将当前鸡和兔子的数量输出 
         } 
        
        i=i+1;                          //鸡的数量从0变化到n,每次+1 
     } 

    return 0;
}

Description

现在笼子里鸡和兔子的数量加起来是n只,他们一共有100条腿,请你编写程序帮忙计算出鸡有多少只,兔子有多少只。

Format

Input

一个整数n表示鸡和兔子的总数(25 <= n <= 50)

Output

一行2个整数分布表示鸡的数量和兔子的数量,用空格隔开

Sample 1

Input

25

Output

0 25

Limitation

1s, 1024KiB for each test case.

Source

Vijos Original

信息

ID
1000
难度
10
分类
(无)
标签
(无)
递交数
6
已通过
0
通过率
0%
上传者