【问题标题】:Median of 3 Numbers: Without using Array or Sorting Concept3 个数字的中位数:不使用数组或排序概念
【发布时间】:2017-01-30 00:01:57
【问题描述】:

如何在不使用任何数组的情况下计算三个给定数字的中位数。我们可以通过简单的计算或比较来完成吗?

到目前为止我所尝试的:

#include<stdio.h> 
#include<conio.h> 
void main() 
{ 
  int a[3],i,n=3; 
  float m;
  clrscr();
  printf("Enter the elements:\n"); 
     for(i=0;i<n;i++) 
     { 
        scanf("%d",&a[i]); 
     } 
     if(n%2==0) 
     { 
       m=(a[n-1/2]+(a[n/2]))/2; 
     } 
     else 
     { 
       m=a[n/2]; 
     } 
     printf("\nMedian is %f",m); 
     getch(); 
}

首选代码语言:C、Java

【问题讨论】:

  • 我已经使用数组完成了。 @HighPerformanceMark
  • #include #include void main() { clrscr(); int a[3],i,n=3;浮动米; printf("输入元素:\n"); for(i=0;i

标签: arrays if-statement numbers median


【解决方案1】:

Median 是一个位于集合中间的数字,或者您可以将其视为集合中最中间的数字。所以为了找到它,我们只需进行如下比较

median = max(min(a,b), min(max(a,b),c));
答案来自Fastest way of finding the middle value of a triple?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-24
    • 1970-01-01
    • 1970-01-01
    • 2016-07-06
    • 1970-01-01
    • 2013-09-18
    • 2011-09-05
    相关资源
    最近更新 更多