首页 > 代码库 > PAT 乙级 1010 一元多项式求导 (25) C++版
PAT 乙级 1010 一元多项式求导 (25) C++版
1010. 一元多项式求导 (25)
时间限制
400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为n*xn-1。)
输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。
输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是0,但是表示为“0 0”。
输入样例:3 4 -5 2 6 1 -2 0输出样例:
12 3 -10 1 6 0
注意点:判断输入结束不能以最后一个为0判断,且要仔细考虑输出情况
1 // 1010.cpp : 定义控制台应用程序的入口点。 2 // 3 4 #include "stdafx.h" 5 #include<iostream> 6 #include<vector> 7 8 using namespace std; 9 10 class number 11 { 12 public: 13 int coefficient;//系数 14 int power;//指数 15 }; 16 17 int main() 18 { 19 vector<number> v; 20 number num; 21 char c; 22 23 while (1) 24 { 25 cin >> num.coefficient >> num.power; 26 27 v.push_back(num); 28 29 if ((c = getchar()) == ‘\n‘)//判断输入结束 30 break; 31 } 32 33 vector<number>::iterator i, end = v.end(); 34 35 for (i = v.begin(); i != end; i++) 36 { 37 if (i == v.begin()&&i->power!=0)//当不为常数且为第一个元素求导 38 cout << (i->coefficient)*(i->power) << " " << (i->power) - 1; 39 else if (i == v.begin() && i->power == 0)//是常数即仅有一个元素 40 cout << 0 << " " << 0; 41 else 42 { 43 if (i->power != 0) 44 cout <<" "<< (i->coefficient)*(i->power) << " " << (i->power) - 1; 45 } 46 } 47 48 return 0; 49 }
PAT 乙级 1010 一元多项式求导 (25) C++版
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。