Go: package main

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

var scanner = bufio.NewScanner(os.Stdin)

func nextString() string {
	scanner.Scan()
	return scanner.Text()
}

func nextInt() int {
	n, err := strconv.Atoi(nextString())
	if err != nil {
		fmt.Printf("strconv.Atoi failed: %v\n", err)
	}
	return n
}

func nextFloat64() (float64, error) {
	return strconv.ParseFloat(nextString(), 64)
}

func main() {
	scanner.Split(bufio.ScanWords)

	for {
		var s int
		var w, h float64
		_, err := fmt.Scanf("%d,%f,%f", &s, &w, &h)

		if err != nil {
			break
		}

		if w/(h*h) >= 25 {
			fmt.Println(s)
		}
	}
}

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

// ?????¬???????????¬??????
#pragma region MACRO
#define P(x) cout << (x) << endl
#define p(x) cout << (x)
#define PED cout << "\n"
#define rep(i,n) for(int i=0; i<(int)n; ++i)
#define REP(i,x,n) for(int i=x; i<(int)n; ++i)
#define repi(i,n) for(int i=0; i<=(int)n; ++i)
#define REPI(i,x,n) for(int i=x; i<=(int)n; ++i)
#define ILP while(true)
#define FOR(i,c) for(__typeof((c).begin())!=(c).begin(); i!=(c).end(); ++i)
#define ALL(c) (c).begin(), (c).end()
#define mp make_pair
#pragma endregion

// ???
#pragma region TYPE_DEF
typedef long long ll;
typedef pair<int, int> pii;
typedef pair<string, string> pss;
typedef pair<string, int> psi;
typedef pair<int, string> pis;
typedef vector<int> vi;
typedef vector<double> vd;
typedef vector<long> vl;
typedef vector<long long> vll;
typedef vector<string> vs;
#pragma endregion

// Effective std
#pragma region ESTD
template<typename C, typename T> int count(C& c, T t) { return count(ALL(c), t); }
template<typename C, typename F> int count_if(C& c, F f) { return count_if(ALL(c), f); }
template<typename C, typename T> void erase(C& c, T t) { remove(ALL(c), t), c.end(); }
template<typename C> void remove(vector<C>& c, unsigned int index) { c.erase(c.begin()+index); }
template<typename C, typename T, typename U> void replace(C& c, T t, U u) { replace(ALL(c), t, u); }
template<typename C, typename F, typename U> void replace_if(C& c, F f, U u) { (ALL(c), f, u); }
template<typename C> void reverse(C& c) { reverse(ALL(c)); }
template<typename C> void sort(C& c) { sort(ALL(c)); }
template<typename C, typename Pred> void sort(C& c, Pred p) { sort(ALL(c), p); }
#pragma endregion

// ?????°
#pragma region CONST_VAL
#define PI (2*acos(0.0))
#define EPS (1e-9)
#define MOD (int)(1e9+7)
#define INF numeric_limits<int>::infinity()
#pragma endregion


int main()
{
    vi v;
    int s;
    float w, h;
    while(scanf("%d,%f,%f",&s,&w,&h)) {
        if (w/(h*h)>=25) v.push_back(s);
    }
    for (int el : v) P(el);
    return 0;
}

C++: #include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <utility>
#include <cstring>
#include <cmath>
#include <queue>
#include <map>
#include <set>
using namespace std;
 
#define rep(i,n) for(int i=0; i<n; i++)
#define FOR(i,s,n) for(int i=s; i<n; i++)
#define ALL(x) x.begin(), x.end()
#define pb push_back
#define foreach(it,con) for(auto it=con.begin();it!=con.end();it++)
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int,int> pii;
typedef vector<int> vi;



int main(){
	int n;
	while(cin>>n,n){
		rep(i,n){

		}
	}
	return 0;	
}

C++: #include<iostream>
#include<math.h>
#include<vector>
#include<algorithm>
#include<cstdio>
using namespace std;

int main(){
int s;
double w,h,BMI;
char p;

while(cin>>s>>p>>w>>p>>h){
    BMI=w/(h*h);

    if(BMI>=25){
        cout<<s<<endl;
    }
}
    return 0;
}

C++: #include <stdio.h>

int main(int argc, char **argv)
{
	int id;
	float w, h;
	
	while(scanf("%d,%f,%f", &id, &w, &h) != EOF){
		if((w / (h*h)) >= 25.0){
			printf("%d\n", id);
		}
	}
	
	return 0;
}

C++: #include<stdio.h>
int main(){
	float a,b,c;
	printf("????¢¨??????????????????????????\???????????????:");
	while(1){
		scanf("%f",&a);
		if(a<85){
			printf("????????????\n??????????????\?????????:");
		}
		else{
			printf("?????????????????§?????????(^??^)9m??????????????¬??°\n");
			break;
		}
	}
	printf("???????????\???????????????(m):");
	scanf("%f",&b);
	c=a/(b*b);
	if(c<22){
		printf("????????????BMI???%1.0f?????¨???????????§????????¨??£??¨??¨??????????????£??????????????????\n",c);
	}
	else if(c>=25){
		printf("????????????BMI???%1.0f???????????°??????????????§??????",c);
	}
	else{
		printf("????????????BMI???%1.0f????¨??????§??????(??????\n",c);
	}
	return 0;
}

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

using namespace std;

double calc(double w, double h) {
    return w / (h * h);
}

int main() {
    double weight, height; // 体重、身長
    int num; //学籍番号
    char d; //dummy

    set<int> fats; // 肥満児の学籍番号

    while (cin >> num >> d >> weight >> d >> height) {
        if (calc(weight, height) >= 25.0) {
            fats.insert(num);
        }
    }

    for (set<int>::iterator i = fats.begin(); i != fats.end(); i++) {
        cout << *i << endl;
    }
    
    return 0;
}

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

int main() {
  int n;
  double w, h, bmi;
  char c;

  while (cin >> n >> c >> w >> c >> h) {
    bmi = w/(h*h);
    if (bmi > 25.0) cout << n << endl;
  }

  return 0;
}

C++: #include <stdio.h>

int main(void)
{
	unsigned int num[2000];
	double weight[2000],height[2000];
	int i=0;
	int qty;
	
	while((scanf("%d,%lf,%lf",&num[i],&weight[i],&height[i])) != EOF)
	{
		i++;
	}
	
	qty = i;
	
	for(i=0;i<=qty;i++)
	{
		if((weight[i] / (height[i] * height[i])) >= 25.0)
		{
			printf("%d\n",num[i]);
		}
	}
	
	return 0;
}

C++: #define _USE_MATH_DEFINES
#include <iostream>
#include <sstream>
#include <cmath>
#include <algorithm>
#include <queue>
#include <stack>
#include <limits>
#include <map>
#include <string>
#include <cstring>
#include <set>
#include <deque>

using namespace std;

typedef long long ll;
typedef pair<int,int> P;

int main(){
	int a;
	double b,c;
	while(~scanf("%d,%lf,%lf",&a,&b,&c)){
		if(b/(c*c) > 25.0){
			cout << a << endl;
		}
	}
}

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

int main()
{
  double w, h;
  int n;
  int c = 0;
  while (scanf("%d,%lf,%lf", &n, &w, &h) != EOF){
    if (w / h / h >= 25.0){
      cout << n << endl;
      c++;
    }
  }
  if (c == 0){
    cout << "????????????" << endl;
  }

  return 0;
}

C++: #include <bits/stdc++.h>
#define range(i,a,b) for(int (i)=(a);(i)<(b);(i)++)
#define rep(i,n) range(i,0,n)
using namespace std;

int main(void){
	int n;
	double h,w;
	char tmp;
	while(cin >> n >> tmp >> w >> tmp >> h){
		if(cin.eof()) break;
		double bmi=w/h/h;
		if(bmi >= 25.0) cout << n << endl;
	}
	return 0;
}

C++: #include <iostream>

using namespace std;

int main(){
        int n;
        double w,h;
        char c,d;
        while(cin >> n >> c >> w >> d >> h){ 
                if(w/h/h>25) cout << n << endl;
        }   
}

C++: #include <iostream>
#include <algorithm>
#include <iomanip>
#include <map>
#include <set>
#include <queue>
#include <stack>
#include <numeric>
#include <bitset>
#include <cmath>

static const int MOD = 1000000007;
using ll = long long;
using u32 = unsigned;
using u64 = unsigned long long;
using namespace std;

template<class T> constexpr T INF = ::numeric_limits<T>::max()/32*15+208;

int main() {
    int s; double w, h;
    while(scanf("%d,%lg,%lg", &s, &w, &h) != EOF){
        if(w/h/h >= 25) cout << s << "\n";
    }
    return 0;
}