码迷,mamicode.com
首页 > 其他好文 > 详细

第二次作业

时间:2016-03-07 01:27:06      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:

  • 第一版本程序Prog1: + 给定一个数组,实现数组元素求和;,具体要求:实现对一维数组(a[100])的所有元素相加运算。 + 数据准备:a)数组长度:100;b)数组数据来源:实验数据A列:1~100,CSV 格式则填充 前100个数据.

       源代码

      

#include<iostream>
#include<fstream>
using namespace std;

int main(void)
{
    int a[100];
    int sum=0;
    ifstream f("D:\\a.txt");
    for(int i=0;f>>a[i],i<100;i++)
        sum+=a[i];
    cout<<sum<<endl;
    return 0;
}

 

实验结果

技术分享

简单的数组求和,并没有什么难度,数据的提取通过TXT文档来实现。

  • 第二版本程序Prog2: + 改写成一个函数(函数名称为ArraySum),能实现任意长度数组所有元素求和; + 数据准备:a)数组长度:任意; b)数组数据来源:实验数据A列.

源代码

#include<iostream>
#include<fstream>
using namespace std;

void ArraySum(int n)
{
    int *a;
    a=new int[n];
    int sum=0;
    ifstream f("D:\\a.txt");
    for(int i=0;f>>a[i],i<n;i++)
        sum+=a[i];
    cout<<sum<<endl;
    delete []a;
}

int main(void)
{
    int n;//数组长度
    cout<<"数组长度"<<endl;
    cin>>n;
    ArraySum(n);
    return 0;
}

 

实验结果

技术分享

相对于一开始,多了一个数组的长度并没有给定,所以直接在函数里定义数组。

  • 第三版本程序Prog3: + 将Prog2改写成能从文件中读取数据,实现任意长度数组,指定范围内元素相加。 + 数据准备:a)数组长度:任意; b)数组数据来源:从文件中读取.

    源代码

#include<iostream>
#include<fstream>
using namespace std;

void ArraySum(int n,double x,double y)
{
    int *a;
    a=new int[n];
    int sum=0;
    ifstream f("D:\\a.txt");
    for(int i=0;f>>a[i],i<n;i++)
        if(a[i]>=x&&a[i]<=y) sum+=a[i];
    cout<<sum<<endl;
    delete []a;
}

int main(void)
{
    int n;//数组长度
    double x;//求和元素最小值
    double y;//求和元素最大值
    cout<<"数组长度"<<endl;
    cin>>n;
    cout<<"求和元素最小值"<<endl;
    cin>>x;
    cout<<"求和元素最大值"<<endl;
    cin>>y;
    ArraySum(n,x,y);
    return 0;
}

增加求和元素的范围,求和之前筛选出满足条件的求和元素
实验结果技术分享

在编程过程中,要求提取CSV格式数据,这方面并没有了解所以选择了C++中的文件流提取TXT中的数据

上传github https://github.com/Superbiali/data

第二次作业

标签:

原文地址:http://www.cnblogs.com/yiningli/p/5249176.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!