Median-求中位数,文件中数字升序排列

Median-求中位数,文件中数字升序排列:

//Median-求中位数,文件中数字升序排列
#include<iostream>
#include<fstream>
#include<cstdlib>

int main()
{
	using namespace std;
	ifstream fin;
	ofstream fout;

	double median,tem1,tem2;
	int count = 1;

	fin.open("numbers.dat");
	if(fin.fail())
	{
		cout<<"Input file opening failed.\n";
		exit(1);
	}

	fin>>tem1;
	while(!fin.eof())
	{
		count++;
		fin>>tem1;
	}

	cout<<count<<endl;
	fin.close();

	fin.open("numbers.dat");
	if(fin.fail())
	{
		cout<<"Input file opening failed.\n";
		exit(1);
	}

	if(count % 2)
		for(int i = 1;i <= (count/2+1);i++)
			fin>>median;
	else
		{
			for(int i = 1;i <= (count/2);i++)
			{
				fin>>tem1;
			}
				fin>>tem2;
				//cout<<tem1<<endl;
				//cout<<tem2<<endl;
				median = (tem1+tem2)/2;
		}

	cout<<"The median of the numbers is "<<median<<endl;

	fin.close();
	return 0;

}

文件1:

1 2 3 4 5 6

结果1:

6
The median of the numbers is 3.5

文件2:

1 2 3 4 5 6 7

结果2:

7
The median of the numbers is 4
时间: 2024-11-10 10:54:58

Median-求中位数,文件中数字升序排列的相关文章

求fasta文件中互补序列

一个名为read_1.fa 的fasta文件,里面有若干序列,如: >@r1TGAATGCGAACTCCGGGACGCTCAGTAATGTGACGATAGCTGAAAACTGTACGATAAACNGTACGCTGAGGGCAGAAAAAATCGTCGGGGACATTNTAAAGGCGGCGAGCGCGGCTTTTCCG>@r2NTTNTGATGCGGGCTTGTGGAGTTCAGCCGATCTGACTTATGTCATTACCTATGAAATGTGAGGACGCTATGCCTGTACCAAATC

Python 统计yaml文件中数字出现的次数

背景需求: 公司开发了一个抽奖系统,大概功能是可以设置抽奖号码,然后设置抽奖的等级及数量,再从设置的号码中抽取. 由于是抽奖系统,需要评估一下数字中奖的概率.我对这个系统进行了以下处理 1.编写初始化抽选号码,即根据初始化接口清空已有号码数据 2.根据设置号码池 3.根据抽奖接口返回数据取出中奖号码 4.将数据写入yaml文件 5.设置100次循环抽奖 6.对yaml文件进行处理,读取数据 7.按照条件取出数据 8.取出文件中出现频率最高的数字 最后结果为 附yaml文件读取代码 import

求排序数组中数字k出现的次数

思路:如果从头到尾遍历数组,那时间复杂度是O(n).我们可以利用题目给出的条件,由于是排序数组,我们可以利用二分查找来实现 时间复杂度为O(log2N) 具体代码如下: #include<iostream> #include<cassert> using namespace std; int findfirstk(int *ar, int len, int k, int start, int end)//利用二分查找找到第一个k出现的位置 { if(start > end)

js数组中数字从小到大排列

function findMin(start,arr){ var iMin = 99999; var iMinIndex = -1; for(var i = start;i<arr.length;i++){ if(arr[i]<iMin){ iMin = arr[i]; iMinIndex = i; } } return iMinIndex; } var arr = [12,5,8,7,-1,33,100,-101]; for(var i = 0;i<arr.length;i++){ /

10G整数文件中寻找中位数或者第K大数

来源:http://hxraid.iteye.com/blog/649831 题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数.内存限制为 2G.只写出思路即可(内存限制为 2G的意思就是,可以使用2G的空间来运行程序,而不考虑这台机器上的其他软件的占用内存). 分析: 既然要找中位数,很简单就是排序的想法.那么基于字节的桶排序是一个可行的方法 (请见<桶排序 >): 思想:将整形的每1byte作为一个关键字,也就是说一个整形可以拆成4个keys,而且最高位的keys越大,整数越

求出数组中所有数字的和&amp;&amp;弹出层效果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

数组-07. 求一批整数中出现最多的个位数字

数组-07. 求一批整数中出现最多的个位数字(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 徐镜春(浙江大学) 给定一批整数,分析每个整数的每一位数字,求出现次数最多的个位数字.例如给定3个整数1234.2345.3456,其中出现最多次数的数字是3和4,均出现了3次. 输入格式: 输入在第1行中给出正整数N(<=1000),在第2行中给出N个不超过整型范围的正整数,数字间以空格分隔. 输出格式: 在一行中按格式“M:

数位dp(求1-n中数字1出现的个数)

题意:求1-n的n个数字中1出现的个数. 解法:数位dp,dp[pre][now][equa] 记录着第pre位为now,equa表示前边是否有降数字(即后边可不可以随意取,true为没降,true为已降):常规的记忆化搜索 代码: /****************************************************** * author:xiefubao *******************************************************/ #p

(hdu step 4.1.5)find the nth digit(求S串中的第n个位置上是什么数字)

题目: find the nth digit Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 689 Accepted Submission(s): 244   Problem Description 假设:S1 = 1S2 = 12S3 = 123S4 = 1234.........S9 = 123456789S10 = 123456789