Go: package main

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

var maxint = 10000
var scanner = bufio.NewScanner(os.Stdin)

func nextInt() (int, error) {
	scanner.Scan()
	return strconv.Atoi(scanner.Text())
}

func main() {
	scanner.Split(bufio.ScanWords)
	arr := make([]int, 10)
	for i := range arr {
		n, _ := nextInt()
		arr[i] = n
	}

	sort.Slice(arr, func(i, j int) bool {
		return arr[i] >= arr[j]
	})

	arrStr := fmt.Sprintf("%+v", arr[0:3])
	arrStr = arrStr[1:(len(arrStr) - 1)]
	arrStr = strings.Replace(arrStr, " ", "\n", -1)
	fmt.Println(arrStr)
}

C++: #include<stdio.h>
#include<iostream>
using namespace std;
int main(){
	int a = 0,b=0;
	for (int i = 0; i < 10;i++){
		cin >> a;
		if (a>b){
			a = b;
		}

	}
	return 0;
}

C++: #include<stdio.h>
int main(void)
{
	int a,b,max=0,max2=0,max3=0;
	for (a = 1; a <= 10; a++) {
		scanf("%d",&b);
		if (b > max){
			max=b;
		}
		else if (b>max2){
			max2=b;
		}
		else if(b>max3){
			b=max3;
		}
		printf("%d\n %d\n %d\n",max,max2,max3);
		return 0;
	}
}

C++: #include <stdio.h>
int main(void) {
int i,j,d[10];
for(i=0;i<10;i++) scanf("%d",&d[i]);
for(i=0;i<9;i++) for(j=i+1;j<10;j++)
	if(d[i]<d[j]) d[i]+=d[j],d[j]=d[i]-d[j],d[i]-=d[j];
printf("%d\n%d\n%d\n",d[0],d[1],d[2]);
return 0;
}

C++: #include<iostream>
#include<algorithm>
using namespace std;
int main()
{
	int a[10],i;
	for(i=0;i<10;i++)cin>>a[i];
	sort(a,a+10);
	for(i=9;i>6;i--)cout<<a[i]<<endl;
	return 0;
}

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

int main(int argc, const char * argv[]) {
    
    vector<int> heights(10);
    for (int i=0; i<10; i++){
        cin >> heights[i];
    }
    sort(heights.begin(), heights.end(), greater<int>());
    
    for (int i=0; i<3; i++){
        cout << heights[i] << endl;
    }
    
    return 0;
}

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

int main(void)
{
    vector <int> a;
    int b;

    for (int i = 0; i < 10; i++){
    cin>>b;
a.push_back(b);
}

while(1);

sort(a.begin(), a.end());
cout << a[9] << endl << a[8] << endl << a[7] << endl;

return 0;
}

C++: #include <iostream>

int main()
{
        int best[] = {0, 0, 0};
        int t = 0;
        for(int i = 0; i < 10; ++i)
        {
                std::cin >> t;
                for(int j = 0; j < 3; ++j)
                        if(t > best[j])
                        {
                                for(int k = 2; k > j; --k)
                                        best[k] = best[k - 1];
                                best[j] = t;
                                break;
                        }
        }
        for(int i = 0; i < 3; ++i)
                std::cout << best[i] << std::endl;
        return 0;
}

C++: #include <stdio.h>

int main() {
    
    int n = 0, m = 0, l = 0;
    
    int i, tmp;
    for (i = 1; i <= 10; i++) {
      
        scanf("%d", &tmp);
        if (n < tmp) l = m; m = n; n = tmp; continue;
        if (m < tmp) l = m; m = tmp; continue;
        if (l < tmp) l = tmp; continue;
        
    }
    
    printf("%d\n%d\n%d\n", n, m, l);
    
    return 0;
}

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

#define DATA_NUM 10

void swap(int &a, int &b)
{
        int tmp;
        tmp = a;
        a = b;
        b = tmp;
}

int main()
{
        int height[DATA_NUM];
        int max, tmp;

        for(int i=0; scanf("%d\n",&height[i])!=EOF; i++){;}

        for(int i=0; i<DATA_NUM; i++){
                for(int j=i+1; j<DATA_NUM; j++){
                        if(height[i]<height[j]){
                                swap(height[i], height[j]);
                         }
                }
        }
        
        for(int i=0; i<3; i++){
                cout << height[i] << endl;
        }

        return 0;
}

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

using namespace std;

int main()

{
	int a, i;
	
	vector<int> takasa;
	
	for(i = 0; i < 10; i++)
	{
		cin >> a;
		takasa.push_back(a);
	}
	
	
	sort(takasa.begin(), takasa.end());
	
	
	cout << takasa[9] << endl;
	cout << takasa[8] << endl;
	cout << takasa[7] << endl;
	
	
	return 0;
	
}

C++: #include <iostream>
#include <stdio.h>
using namespace std;
int height[10];
void sort(int A[]);
void swap(int &a, int &b);
int main()
{
	int n = 10;
	for (int i = 0; i < 10; i++)
		cin >> height[i];
	sort(height);
	return 0;
}
void sort(int A[])
{
	int i, j, min;
	for (i = 0; i < 9; i++)
	{
		
		for (j = 1; j > 10-i-1; j++)
		{
			if (A[j] > A[j+1])
			{
				swap(A[j], A[j+1]);
			}
		}
	}
	for (i = 0; i < 3; i++)
	{
		printf("%d\n", A[i]);
	}
}
void swap(int &a, int &b)
{
	int t ;
	t = a;
	a = b;
	b = t;
}

C++: #include <stdio.h>
#include <stdlib.h>

int main (void)
{
	int a[10] , max , min;
	for(int i = 0 ; i < 10 ; i++)
	{
		scanf("%d" , &a[i]);
	}
	for(int i = 0 ; i < 9 ; i++)
	{
		for(int j = i + 1 ; j <= 9 ; j++)
		{
			if(a[j] > a[i])
			{
				int z;
				z = a[j];
				a[j] = a[i];
				a[i] = z;
			}
		}
	}
	for(int i = 0 ; i < 3 ; i++)
	{
		printf("%d\n" , a[i]);
	}
	return 0;
}

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

using namespace std;

int main(void)
{
	int input[10];

	for(int i = 0; i < 10; i++){
		cin >> input[i];
	}


	for(int i = 3; i < 10; i++){
		for(int j = 0; j < 3; j++){
			if(input[i] > input[j]){
				input[j] = input[i];
				break;
			}
		}
	}

	sort(input, input+2);

	for(int i = 0; i < 3; i++){
		cout << input[i] << endl;
	}


	return 0;
}

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

int main(){

	int h[9];
	int i,j,a; //ループ用変数
	int temp;



	for(a=0; a<10; a++){

		cout<< a << "つ目の" <<"値を代入してください" << endl;
		cin >> h[a];
	}

	for(i=0; i<10; i++){
		for(j=0; j<10; j++){

			if(h[i]>h[j]){
				temp=h[i];
				h[i]=h[j];
				h[j]=temp;

			}
		}
	}

	cout << "最も高い山は :" << h[0] << endl;

	cout << "２番目に高い山は :" << h[1] << endl;

	cout << "３番目に高い山は :" << h[2] <<endl;


	return 0;


}

C++: int main()
{

        std::vector<int> vec;
        int a;

        for(int i = 0; i < 10; ++i)
        {
                std::cin >> a;
                vec.push_back(a);
        }

        std::sort(vec.begin(),vec.end());

        for(int i = 0; i < 3; ++i) std::cout << vec.at(9-i) << std::endl;

        return 0;
}

C++: #include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
  int x;
  vector<int>a;
  for(int i=0;i<10;i++){
    cin>>x;
    a.push_back(x);
  }
  sort(a.begin(),a.end()); 
  cout<<a[9]<<endl;
  cout<<a[8]<<endl;
  cout<<a[7]<<endl;
}

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

int main()
{
  int high;
  int temp1,temp2;
  int first=0,second=0,third=0;
  
  for(int i=0;i<10;i++){
    cin>>high;
    if(high>first){
      temp1=first;
      first=high;
      temp2=second;
      second=temp1;
      third=temp2;
    } else if (first>=high && high>second){
      temp2=second;
      second=high;
      third=temp2;
    } else if (second>=high && high>third){
      third=high;
    }
  }

  cout<<endl;
  cout<<first<<endl;
  cout<<second<<endl;
  cout<<third<<endl;
  
  return 0;
}

C++: //10ÂÌf[^ðÇÝÝAãÊ3Âð\¦¹æ
#include<iostream>
#include<algorithm>
#include<functional>
using namespace std;

int main(void)
{
	const int N = 10;
	int a[N];
	int i;
	for(i = 0; i < N; i++)
		cin >> a[i];
	sort(a, a+N, greater<int>());
	for(i = 0; i < 3; i++)
		cout << a[i] << endl;
	return 0;
}

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

int main(){
  int h[10];
  int i;
  for(i=0;i<10;i++){
    scanf("%d",&h[i]);
  }

  sort(h, h+10);

  cout<<h[9]<<h[8]<<h[7]<<endl;
  return 0;
}