ytu 1057: 输入两个整数,求他们相除的余数(带参的宏 + 模板函数 练习)

时间:2023-03-08 20:03:02

1057: 输入两个整数,求他们相除的余数

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 177  Solved: 136
[Submit][Status][Web Board]

Description

输入两个整数,求他们相除的余数。用带参的宏或模板函数来实现,编程序。

Input

两个短整型数a,b

两个长整型数c,d

Output

a/b的余数

c/d的余数

Sample Input

10 9
100000000 999999

Sample Output

1
100

HINT

主函数已给定如下,提交时不需要包含,会自动添加到程序尾部

/* C++代码 */
int main()
{
    short int i1,i2;
    long l1,l2;
    cin>>i1>>i2;
    cout<<mod(i1,i2)<<endl;
    cin>>l1>>l2;
    cout<<mod(l1,l2)<<endl;
    return 0;
}

Source

  水题。
  根据题目可只有两种方法,分别是练习带参的宏模板函数
  在C或C++语言源程序中允许用一个标识符来表示一个字符串,称为“宏”。 “define”为宏定义命令。
  带参的宏 - AC代码:
 #include <iostream>
#define mod(x,y) x%y //带参的宏定义
using namespace std; int main()
{
short int i1,i2;
long l1,l2;
cin>>i1>>i2;
cout<<mod(i1,i2)<<endl;
cin>>l1>>l2;
cout<<mod(l1,l2)<<endl;
return ;
}

  模板函数 - AC代码:

 #include <iostream>
using namespace std; template <class T> //实现模板函数
T mod(T x,T y)
{
return x%y;
} int main()
{
short int i1,i2;
long l1,l2;
cin>>i1>>i2;
cout<<mod(i1,i2)<<endl;
cin>>l1>>l2;
cout<<mod(l1,l2)<<endl;
return ;
}

  推荐链接ytu 1058: 三角形面积(带参的宏 练习)

Freecode : www.cnblogs.com/yym2013