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 <climits>
using namespace std;
int main(){
	double n;
	double maxN = -(1<<30), minN = 1<<30;
	while(cin >> n){
		maxN = max(maxN, n);
		minN = min(minN, n);
	}
	cout << maxN - minN << endl;
	return 0;
}

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

int main()
{
	double hei ;

	double high = 0 ;
	double low = 0 ;

	while( cin >> hei )
	{
		if( hei > high ) high = hei ;

		if( low == 0 ) low = hei ;
		else
		{
			if( hei < low ) low = hei ;
		}
	}

	high -= low ;
	printf("%.1f\n",high) ;

	return 0 ;
}

C++: #include <cstdio>

int main()
{
  double max, min, input;
  scanf("%lf", &input);
  min = max = input;

  while (~scanf("%lf", &input)) {
    if (max < input)
      max = input;
    if (min > input)
      min = input;
  }
  printf("%.1f\n", max-min);
  return 0;
}

C++: #include<iostream>
#include<string>
#include<cmath>
using namespace std; 
int main(){
  double h;
  double max=0,min=1000000;
  while (cin>>h){
    if(h>max)max=h;
    if(h<min)min=h;
  }
  cout<<max-min<<endl;  

  return 0;
}

C++: #include <bits/stdc++.h>
using namespace std;

#define iota(i,n,b,s) for(int i=int(b);i!=int((b)+(s)*(n));i+=(s))
#define range(i,n,m) iota(i,(((n)>(m))?((n)-(m)+1):((m)-(n)+1)),(n),((n)>(m)?-1:1))
#define rep(i,n) iota(i,(n),0,1)

#define INF (1e9)
#define EPS (1e-9)
#define cons(a,b) (make_pair(a,b))
#define car(a) (a.first)
#define cdr(a) (a.second)
#define cadr(a) (car(cdr(a)))
#define cddr(a) (cdr(cdr(a)))
#define all(a) a.begin(), a.end()
#define trace(var) cerr<<">>> "<<#var<<" = "<<var<<endl;

typedef long long Integer;
typedef double Real;

template<class S, class T>
ostream& operator<<(ostream& os, pair<S,T> p) {
  os << '(' << car(p) << ", " << cdr(p) << ')';
  return os;
}

template<class T>
ostream& operator<<(ostream& os, vector<T> v) {
  os << v[0];
  for (int i=1, len=v.size(); i<len; ++i) os << ' ' << v[i];
  return os;
}

int dx[] = { -1, 0, 1, 0 };
int dy[] = {  0, -1, 0, 1 };

int main() {

  Real mi, ma, x;
  mi = INF;
  ma = -INF;

  while (cin >> x, cin) {
    mi = min(mi, x);
    ma = max(ma, x);
  }

  cout << (ma - mi) << endl;

  return 0;
}

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

int main(){
	double n, ma = 0, mi = 1000000;
	while (cin >> n) {
		if (n > ma) ma = n;
		if (n < mi) mi = n;
	}
	cout << (ma - mi) << endl;
	return 0;
}

C++: #include <algorithm>
#include <vector>
#include <math.h>
#include <stdio.h>
#include <cctype>
#include <iostream>
#include <set>
#include <string>
#include <queue>
#include <map>
using namespace std;
int size(string x){
	string::size_type size=x.size();
	return size;
}
#define fu(l,k) for(int i=l;i<k;i++)
#define fd(l,k) for(int i=l;i>k;i--)
#define fi first
#define se second
typedef  vector<string> vs;
typedef  vector<int> vi;
double pi(){
	return M_PI;
}
typedef set<int> set_i;
typedef set<string> set_s;
int INF=1000000;
int main(){
	double n;
	double min=INF,max=0;
	while(cin>>n){
		if(min>=n) min=n;
		if(max<=n) max=n;
	}
	cout<<max-min<<endl;
}

C++: #include <bits/stdc++.h>

using namespace std;

int main() {
    double m, maxm = 0.0, minm = 1000000.0;
    while (scanf("%lf", &m) != EOF) {
        if (m > maxm) maxm = m;
        if (m < minm) minm = m;
    }
    cout << maxm - minm << endl;

    return 0;
}

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

int main(void){

  double mountain;
  double out = 0;

  while( cin >> mountain ){
    out = max( mountain , out );
  }
  printf("%.1f",out);
  return 0;
}

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

int main() {
	vector<float> h;
	float tmp,max,min;

	while (cin >> tmp) h.push_back(tmp);

	max = min = h[0];
	for (auto it = h.begin() + 1; it != h.end(); ++it) {
		if (*it > max) max = *it;
		if (*it < min) min = *it;
	}

	cout << max - min << endl;
	
	return 0;
}

C++: #include <iostream>

using namespace std;


#define INF 2147483647

int main()
{
	double max = 0;
	double min = INF;

	double height;

	while (cin >> height)
	{
		if (height > max) { height = max; }
		if (height < min) { height = min; }
	}

	cout << max - min << endl;

	return 0;
}

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

using namespace std;

int main(void)
{
    ios::sync_with_stdio(false);
    double maxh = 114514810, minh = -1;
    double h;
    while(cin >> h) {
        maxh = max(maxh, h);
        minh = min(minh, h);
    } 
    cout << maxh - minh << endl;

    return 0;
}

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

#define f first
#define s second

#define REP(i,n) for(int i=0; i<(int)(n); i++)
#define FOR(i,c) for(__typeof((c).begin()) i=(c).begin(); i!=(c).end(); i++)
#define ALL(c) (c).begin(), (c).end()
#define EPS (1e-10)
using namespace std;

typedef unsigned int uint;
typedef long long ll;
typedef complex<double> P;

int main(){
  double l = 1e20, h = 0.0;
  double t;
  while(cin>>t){
    h = max(h, t);
    l = min(l, t);
  }
  printf("%.3f\n",h-l);
  return 0;
}

C++: #include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <vector>
#include <algorithm>
#include <string>

using namespace std;

int main(void){

	vector< double > ds;
	double d;

	while( scanf("%lf",&d) != EOF ) {
		ds.push_back( d );
	}
	sort( ds.begin(), ds.end() );
	printf("%.4lf\n",  ds[ds.size()-1] - ds[0] );

    return 0;
}

C++: #include<iostream>
#include<cstdio>
using namespace std;
int main()
{
    double mountain,high=0,low=10000;
    while(scanf("%lf",&mountain)!=EOF){
          //  cout<<mountain<<endl;
        if(mountain>high)high=mountain;
        if(mountain<low)low=mountain;
        //printf("%lf\n",high);
       // printf("%.1lf",high-low);
    }
    printf("%.1lf\n",high-low);
}

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

int main()
{
	double t;
	vector<double> v;
	while(cin >> t)
	{
		v.push_back(t);
	}
	sort(v.begin(), v.end());

	cout << v.back()-v.front() << endl;
}

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

using namespace std;

int main() {
	double height;
	double maxs = -1.0, mins = 1.0e18;
	while (scanf("%lf", &height) != EOF) {
		if (maxs < height) maxs = height;
		if (mins > height) mins = height;
	}
	printf ("%.1lf\n", maxs - mins);
//	system("PAUSE");
	return 0;
}

C++: #include<cstdio>

int main(){
	double t;
	scanf("%lf", &t);
	double max = t, min = t;
	while(~scanf("%lf", &t)){
		if(max < t){
			max = t;
		}
		if(min > t){
			min = t;
		}
	}
	printf("%lf", max - min);
}

C++: #include <stdio.h>
#include<math.h>
#include <string.h>
#include <ctype.h>

int main(){
double n,min,max,f;

scanf("%lf",&n);
min=n;
max=n;
while(scanf("%lf",&n)!=EOF){
if(max<n){
max=n;
}
if(min>n){
min=n;
}
}
f=max-min;
printf("%.1f",f);

return 0;
}