Go: package main

import (
	"bufio"
	"fmt"
	"os"
	"strconv"
)

var sc = bufio.NewScanner(os.Stdin)

func read() string {
	sc.Scan()
	return sc.Text()
}

func main() {
	sc.Split(bufio.ScanLines)
	max := 0.0
	min := 1000000.0
	for sc.Scan() {
		n, _ := strconv.ParseFloat(sc.Text(), 64)
		if max < n {
			max = n
		}
		if min > n {
			min = n
		}
	}
	fmt.Println(max - min)
}

C++: #include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

int main() {
    double height;
    vector<double> v;
    while(cin >> height){
        v.push_back(height);
    }
    
    sort(v.begin(),v.end());
    int len= v.size();
    double dif;
    dif = v[len-1]-v[0];
    cout << dif << endl;
}

C++: #include <iostream>

using namespace std;

int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0);

	double h, max = 0.0, min = 3776.0;
	while (cin >> h)
	{
		if (h > max) max = h;
		if (h < min) min = h;
	}

	cout << max - min << endl;

	return 0;
}

C++: #include <iostream>
#include <algorithm>
using namespace std;

int main() {
  int i = 0;
  double x,diff,height[100000];
  while(cin >> x) {
    height[i] = x;
    i++;
  }
  sort(height,height+i);
  diff = height[i-1] - height[0];
  cout << diff << endl;
}

C++: #include<cstdio>
#include<iostream>
#include<algorithm>
#include<climits>
using namespace std;

int main(){
  double n,max=0,min=INT_MAX;
  while(scanf("%lf",&n)!=EOF){
    if(max<n) max=n;
    if(min>n) min=n;
  }
  printf("%f\n",max-min);
  return 0;
}

C++: #include<iostream>
#include<cstdio>
using namespace std;

main(){
  double moun=0;
  double  max = 0;
  double  min = 100000;
  while(cin >> moun){
    
    if(moun >= max)max = moun;
    if(moun <= min)min = moun;

  }
  printf("%.1f\n",(max - min));
  
}

C++: #include<iostream>
using namespace std;

int main(){

	double high, low, m;
	
	high = 0.0;
	low = 0.0;
	while(cin >> m){
		high = max(high, m);
		low = min(low, m);
	}

	cout << high - low << endl;

	return 0;

}

C++: #include<bits/stdc++.h>
#include<vector>
#include<list>
#include<stack>
#include<queue>
#include<algorithm>
using namespace std;


int main(){
    double a=-1,b=-1,c;
    while(scanf("%lf",&c)!=EOF){
        if(a==-1){
            a=c;
        }else if(b==-1){
            b=c;
        }
        b=max(a,c);
        c=min(b,c);
    }
    printf("%.10lf\n",a-b);
    return 0;
}

C++: #include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int main(){
	float mon,low=1000000,high=0;
	while(cin>>mon){
		if(low>mon)low=mon;
		if(high<mon)high=mon;
	}
	cout<<high-low<<endl;
	return 0;
}

C++: #include<iostream>
#include<algorithm>
#include<set>
#include<map>
#include<vector>
#include<queue>
#include<cstring>
#include<cmath>
#include<cstdio>
#include<cstdlib>
using namespace std;
#define REP(i,a,n) for(int i = a ; i < n ; i++)
#define rep(i,n) REP(i,0,n)

typedef long long ll;

void solve(){
}

int main(){
  double min=-1,max=-1;
  double h;

  while(cin>>h){
    if(min == -1 || min > h) min = h;
    if(max == -1 || max < h) max = h;
  }
  printf("%.1f\n",max-min);
}

C++: #include <algorithm>
#include <functional>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <string>
#include <sstream>
#include <iostream>
#include <iomanip>
#include <vector>
#include <list>
#include <stack>
#include <queue>
#include <map>
#include <set>
#include <bitset>
#include <climits>

#define all(c) (c).begin(), (c).end()
#define rep(i,n) for(int i=0;i<(n);i++)
#define pb(e) push_back(e)
#define mp(a, b) make_pair(a, b)
#define fr first
#define sc second

const int INF=100000000;
int dx[4]={1,0,-1,0};
int dy[4]={0,1,0,-1};
using namespace std;
typedef pair<int ,int > P;
typedef long long ll;

vector<double> vec;
int main() {
    double t;
    while(cin>>t) {
        vec.pb(t);
    }
    sort(all(vec));
    cout<<vec[vec.size()-1]-vec[0]<<endl;
    return 0;
}

C++: #include<iostream>
#include<cstdio>
using namespace std;

int main(){

	double high, low, m;
	
	high = 0.0;
	low = 100000000.0;
	while(cin >> m){
		high = max(high, m);
		low = min(low, m);
	}

	printf("%lf\n", high - low);

	return 0;

}

C++: #include<iostream>
#include<set>
using namespace std;

int main()
{
	set<double> height;
	set<double>::iterator it;
	double d;

	while (cin>>d)
		height.insert(d);

	d = *--height.end() - *height.begin();
	cout<<d<<endl;

	return 0;
}

C++: #include<iostream>
using namespace std;int main(){double a,tans,hans;cin >> a;tans = a; hans = a;while(cin>>a) if(tans>a) tans = a; if(hans<a) hans = a;cout << hans - tans << endl;}

C++: #include <iostream>
#include <cstdio>
using namespace std;
int main(){

  int i=0;
  double a[100000],max,min;

  while(scanf("%lf",&a[i]) != EOF ){
    i++;
  }
  
  max=a[0];
  min=a[0];

  for(int j=1 ; j < i-1 ; j++){
    
    if( max < a[j] ){
      max=a[j];
    }
    if( min > a[j] ){
      min=a[j];
    }

  }

  printf("%.1f\n",max-min);

  return 0;

}

C++: #include <vector>
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <iterator>
#include <string>
using namespace std;

int main(){
	for(int i = 0; i < 10000000; ++i){
		putchar('0');
	}

	puts("");
}

C++: #include <iostream>
#include <vector>
#include <algorithm>
#include <set>
#include <queue>
#include <stack>
#include <string>
#include <map>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>

#define rep(i, n) for(int i = 0; i < n; i ++)
#define ALL(T) T.begin(), T.end()
#define mp make_pair
#define pb push_back

using namespace std;

typedef pair<int, int> pii;
typedef unsigned long long ull;
typedef vector<int> vi;
typedef vector<string> vs;

const int INF = 1 << 24;

int main(void){
    double ma = 0, mi = INF, n;

    while(cin >> n){
        if(n > ma) ma = n;
        if(n < mi) mi = n;
    }

    printf("%.1f\n", ma - mi);

    return 0;
}

C++: #include<cstdio>
#include<cmath>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<iostream>

using namespace std;



void Solution()
{
    int n = 0;
    double a[n];
    
    while (cin>>a[n])
    {
        n++;
    }
    
//    for (int i = 0; i < n - 1; i++)
//    {
//        for (int j = i + 1; j < n; j++)
//        {
//            if (a[i] < a[j])
//            {
//                double temp = a[i];          //swap
//                a[i] = a[j];
//                a[j] = temp;
//            }
//        }
//    }
    
    sort(a, a + n); //sorting as ascedning sequence
    
    cout.setf(ios::fixed); //"setf" is used for “half-adjusting”
    cout.precision(1);
    
//    cout<<a[0] - a[n - 1]<<endl;
    cout<<a[n - 1] - a[0]<<endl;
    
}

int main()
{
    Solution();
    return 0;
}

C++: #include <iostream>
#include <algorithm>

using namespace std;

int main(){

	double minValue= 1000000000;
	double maxValue= -1;
	double tmp;
	while(cin>>tmp){
		maxValue=max(maxValue,tmp);
		minValue=min(minValue,tmp);
	}
	cout<<maxValue-minValue<<endl;

	return 0;
}

C++: #include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int main(){
	float mon,low=1000000,high=0;
	while(cin>>mon&&mon!=0){
		if(low>mon)low=mon;
		if(high<mon)high=mon;
	}
	cout<<high<<" "<<low<<" "<<high-low<<endl;
	return 0;
}

C++: #include<iostream>
#include<algorithm>
#include<vector>

using namespace std;

vector<double> mt;

int main() {
	
	double a;
	mt.clear();
	
	int b = 0;
	
	while( cin >> a)
	{
		mt.push_back(a);	
		b++;		
	}
	sort(mt.begin(), mt.end());
	cout << fixed << mt[b] - mt[0] << "\n";
	
	
	return 0;
}

C++: #define _USE_MATH_DEFINES
#include<iostream>
#include<iomanip>
#include<algorithm>
#include<cctype>
#include<cmath>
#include<cstdio>
#include<deque>
#include<list>
#include<set>
#include<stack>
#include<string>
#include<sstream>
#include<map>
#include<queue>
#include<vector>
using namespace std;

int main() {
	double M, m;
	double a; cin >> a; M = m = a;
	while (cin >> a) {
		M = max(M, a);
		m = min(m, a);
	}
	cout << fixed << setprecision(1);
	cout << M - m << endl;
	return 0;
}