【编程目标】
根据第18课贪心算法课程的学习,完成背包问题程序的基本功能。主要应用到引用头文件、命名空间、主函数、变量定义与应用、贪心算法、结构体应用、系统库函数、for语句、if.else语句、数组定义与应用、函数定义、函数调用、标准输入、标准输出等编程技巧。
【编程技术】
编写该程序应用到的编程技术有以下:
引用头文件
命名空间
主函数
变量定义与应用
贪心算法
结构体应用
系统库函数
if.else语句
for语句
数组定义与应用
函数定义
函数调用
标准输入
标准输出
编译程序
运行程序
【学生作品】
实现源代码:
#include
#include
using namespace std;
const int M = 1000005;
struct three
{
double w;
double v;
double p;
}S[M];
bool cmp(three a, three b)
{
return a.p > b.p;
}
int main()
{
int n;
double m;
cout
cin>>n>>m;
cout
for(int i = 0;i < n; i++)
{
cin>>S[i].w>>S[i].v;
S[i].p = S[i].v/S[i].w;
}
sort(S,S+n, cmp);
double sum = 0.0;
for(int i = 0; i < n; i++)
{
if(m > S[i].w){
m-=S[i].w;
sum+=S[i].v;
}else{
sum +=S[i].p * m;
break;
}
}
cout
}
【作者简介】
樊宇轩:男孩,12岁,沣西实验中学初一学生,喜欢轮滑,喜欢看游戏,玩游戏,2018年10月开始,接触编程,希望编出自己的游戏。曾参加过青少年Scratch编程和Python编程的学习。
【老师点评】
根据第18课贪心算法课程的学习,完成背包问题程序的基本功能。主要应用到引用头文件、命名空间、主函数、变量定义与应用、贪心算法、结构体应用、系统库函数、for语句、if.else语句、数组定义与应用、函数定义、函数调用、标准输入、标准输出等编程技巧,运行结果正确,总体实现不错。
【编程益处】
尽早发现孩子天赋
提升逻辑思维能力
培养专注力和耐心
戒除游戏隐
提升学习力和学习兴趣
提高升学竞争力
【编程现状】
2012年,美国陆续有23个州编程进入中小学课程
2014年,英国学龄5岁以上的儿童必须学习电脑编程
2016年,澳洲正式将coding引入了全国必修课程中
2017年,浙江省将信息技术(包含编程)作为高考选考科目(7选3)中的一门
2018年,浙江将Python编程作为高考科目之一,北京、山东等地也将纳入高考。
— THE END —
觉得不错,请关注
领取专属 10元无门槛券
私享最新 技术干货