2953: A代码填充--学画画

时间限制: 1 Sec  内存限制: 128 MB

提交: 62  解决: 52

题目描述

最近小平迷上了画画,经过琨姐的指导,他学会了RGB色彩的混合方法。对于两种颜料1和颜料2,其对应的RGB色彩表示分别为(R1,G1,B1)和(R2,G2,B2)。

将m份颜料1和n份颜料2进行混合,混合后色彩的RGB表示为 ((m*R1+n*R2)/(m+n),(m*G1+n*G2)/(m+n),(m*B1+n*B2)/(m+n))。

注:本题只需要提交填写部分的代码,请按照C++方式提交。

#include <iostream>

using namespace std;

class RGB

{

public:

    RGB(int r=0,int g=0,int b=0);

    friend RGB operator+(RGB &,RGB &);

    friend RGB operator*(int ,RGB &);

    friend RGB operator/(RGB &,int);

    friend ostream& operator<<(ostream&,RGB&);

    friend istream& operator>>(istream&,RGB&);

    RGB RGBmix(RGB &rgb1,RGB &rgb2,int m,int n);

private:

    int red,green,blue;

};

RGB::RGB(int r,int g,int b)

{

    red=r;

    green=g;

    blue =b;

}

istream& operator>>(istream &in,RGB &rgb)

{

    in>>rgb.red>>rgb.green>>rgb.blue;

    return in;

}

ostream& operator<<(ostream &out,RGB &rgb)

{

    out<<rgb.red<<","<<rgb.green<<","<<rgb.blue<<endl;

    return out;

}

RGB operator*(int n,RGB &rgb)

{

    return RGB(n*rgb.red,n*rgb.green,n*rgb.blue);

}

/*

    请在该部分补充缺少的代码

*/

RGB RGB::RGBmix(RGB &rgb1,RGB &rgb2,int m,int n)

{

    RGB t,t1,t2;

    t=(t1=m*rgb1)+(t2=n*rgb2);

    return t/(m+n);

}

int main()

{

    RGB rgb1,rgb2,rgb;

    int m,n;

    cin>>rgb1>>rgb2;

    cin>>m>>n;

    rgb =rgb.RGBmix(rgb1,rgb2,m,n);

    cout<<rgb<<endl;

    return 0;

}

输入

颜料1和颜料2的 R,G,B 成分(均为整数)

颜料1和颜料2的份数(均为整数)

输出

混合颜料的 R,G,B 成分(均为整数,不进行四舍五入)

样例输入

0 0 0 255 255 255
1 1

样例输出

127,127,127

你  离  开  了  ,  我  的  世  界  里  只  剩  下  雨  。  。  。

#include <iostream>
using namespace std;
class RGB
{
public:
RGB(int r=0,int g=0,int b=0);
friend RGB operator+(RGB &,RGB &);
friend RGB operator*(int ,RGB &);
friend RGB operator/(RGB &,int);
friend ostream& operator<<(ostream&,RGB&);
friend istream& operator>>(istream&,RGB&);
RGB RGBmix(RGB &rgb1,RGB &rgb2,int m,int n);
private:
int red,green,blue;
};
RGB::RGB(int r,int g,int b)
{
red=r;
green=g;
blue =b;
}
istream& operator>>(istream &in,RGB &rgb)
{
in>>rgb.red>>rgb.green>>rgb.blue;
return in;
}
ostream& operator<<(ostream &out,RGB &rgb)
{
out<<rgb.red<<","<<rgb.green<<","<<rgb.blue<<endl;
return out;
}
RGB operator*(int n,RGB &rgb)
{
return RGB(n*rgb.red,n*rgb.green,n*rgb.blue);
}
RGB operator+(RGB &a,RGB &b)
{
RGB c;
c.blue=a.blue+b.blue;
c.green=a.green+b.green;
c.red=a.red+b.red;
return c;
}
RGB operator/(RGB &a,int b)
{
RGB c;
c.blue=a.blue/b;
c.green=a.green/b;
c.red=a.red/b;
return c;
}
RGB RGB::RGBmix(RGB &rgb1,RGB &rgb2,int m,int n)
{
RGB t,t1,t2;
t=(t1=m*rgb1)+(t2=n*rgb2);
return t/(m+n);
}
int main()
{
RGB rgb1,rgb2,rgb;
int m,n;
cin>>rgb1>>rgb2;
cin>>m>>n;
rgb =rgb.RGBmix(rgb1,rgb2,m,n);
cout<<rgb<<endl;
return 0;
}

YTU 2953: A代码填充--学画画的更多相关文章

  1. YTU 2952: A代码填充--谁挡住了我

    2952: A代码填充--谁挡住了我 时间限制: 1 Sec  内存限制: 128 MB 提交: 135  解决: 38 题目描述 n个人前后站成一列,对于队列中的任意一个人,如果排在他前面的人的身高 ...

  2. YTU 2958: 代码填充--雨昕学画画

    2958: 代码填充--雨昕学画画 时间限制: 1 Sec  内存限制: 128 MB 提交: 156  解决: 102 题目描述 雨昕开始学画水彩画,老师给雨昕一个形状(Shape)类,雨昕在Sha ...

  3. YTU 2959: 代码填充--雨昕学矩阵

    2959: 代码填充--雨昕学矩阵 时间限制: 1 Sec  内存限制: 128 MB 提交: 112  解决: 50 题目描述 雨昕开始学矩阵了.矩阵数乘规则:一个数k乘一个矩阵A还是一个矩阵,行数 ...

  4. 一本通 一笔画问题 洛谷P1636 Einstein学画画

    P1636 Einstein学画画 相信大家都玩过一笔画这种游戏吧,这其实算得上是我们能够接触到的比较常见的数学问题,有一个很知名的就是七桥问题 这个问题包括所有的一笔画问题都是在欧拉回路的涵盖范围内 ...

  5. P1636 Einstein学画画

    一笔画问题 P1636 Einstein学画画 如果一个图存在一笔画,则一笔画的路径叫做欧拉路,如果最后又回到起点,那这个路径叫做欧拉回路. 奇点:跟这个点相邻的边数目有奇数个的点 不存在奇数个奇点的 ...

  6. luoguP1636 Einstein学画画 x

    P1636 Einstein学画画 题目描述 Einstein学起了画画, 此人比较懒--,他希望用最少的笔画画出一张画... 给定一个无向图,包含n 个顶点(编号1~n),m 条边,求最少用多少笔可 ...

  7. 从一行代码里面学点JavaScript

    从一行代码里面学点JavaScript 现如今,JavaScript无处不在,因此关于JavaScript的新知识也是层出不穷.JavaScript的特点在于,要学习它的语法入门简简单,但是要精通使用 ...

  8. 洛谷 P1636 Einstein学画画

    P1636 Einstein学画画 题目描述 Einstein学起了画画, 此人比较懒--,他希望用最少的笔画画出一张画... 给定一个无向图,包含n 个顶点(编号1~n),m 条边,求最少用多少笔可 ...

  9. 如何用代码填充S/4HANA销售订单行项目的数量字段

    我的任务是用代码生成S/4HANA销售订单(Sales Order)的行项目,并且填充对应的quantity(数量)值. 最开始我用了下面的代码,把quantity的值写入item字段target_q ...

随机推荐

  1. idea 中的svn的使用

    http://www.cnblogs.com/whc321/p/5669804.html 很详细

  2. php基础 数组 遍历

    //参数默认值// function abc($a,$b,$c=0){// echo $a,$b,$c;// }// abc(1,3); //可变参数//function def(){// $arr= ...

  3. git学习(一)----基础知识

    git是世界上最好用最先进的版本管理系统,那么什么是版本管理系统呢,百度上是这样说的: 举个例子,当你写毕业论文的时候,灵感爆发了修改或者删除了一些内容,但是你还想保留之前的版本,就需要另存为不同的w ...

  4. ng-repeat的作用域问题

    ng-repeat会创建一个子作用域,所以在ng-repeat下面要使用参数时,要用$parent.XXXX参数. 示例如下:

  5. xftp向ubuntu传输文件错误

    xftp向ubuntu传输文件错误原因: 登陆用户对文件夹没有权限. 解决方法:授予权限 chmod 777 该目录名

  6. MYSQL常见运算符和函数【重要】

    字符函数 (1)CONCAT():字符连接 SELECT CONCAT(‘IMOOC’,’-‘,’MySQL’);//IMOOC-MySQL SELECT CONCAT (first_name,las ...

  7. 转 Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)

    转自: http://www.cnblogs.com/huangcong/archive/2011/08/29/2158268.html 黄聪:Python 字符串操作(string替换.删除.截取. ...

  8. 【转载】js中对象的使用

    原文链接:http://www.jb51.net/article/90256.htm[侵删] 简单记录javascript中对象的使用 一.创建对象 //创建一个空对象 var o={}; //创建一 ...

  9. webstorm初始化

    1.皮肤设置,重启后Terminal皮肤生效 2.排除目录 2.1全局排除 2.2局部排除 选中文件夹 右击Make Directroy As 选择 Excluded 3.代码自定义 3.1 cons ...

  10. Ubuntu 16.04安装SQLite Browser操作SQLite数据库

    安装: sudo apt-get install sqlitebrowser 启动: