每日打卡一小时(第十六天)

一.问题描述

 二.设计思路

1.利用数组输入数据

2.创建一个二维数组利用循环记录每组数据前面的值除以某个数等于后面的值的数

3.记录每组的最大值和最小值

4.最大值中找最小值,最小值中找最大值

5.输出

三.流程图

 

四.代码实现

#include <iostream>
using namespace std;
int main()
{
    int n,v,xmin=0,nmax=0;
    cin >> n;
    int a[100][2];
    int b[100][2];
    for (int i = 0; i < n; i++)
    {
        cin >> a[i][0] >> a[i][1];
    }
    for (int i = 0; i < n; i++)
    {
        for (v=1;v<100; v++)
        {
            if (a[i][0] / v == a[i][1] )
            {
                b[i][1] =  v ;
            }
        }
        for (v=1; v < 100; v++)
        {
            if (a[i][0] / v <= a[i][1] )
            {
                b[i][0] =  v ;
                break;
            }
        }
    }
    for (int i = 1; i < n; i++)
    {
        if (b[nmax][0] < b[i][0])
        {
            nmax = i ;
        }
        if (b[xmin][1] > b[i][1])
        {
            xmin = i;
        }
    }
    cout << b[nmax][0] << " " << b[xmin][1] << endl;
}

 

posted @ 2023-04-25 19:43  伐木工熊大  阅读(10)  评论(0)    收藏  举报