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++: #include <iostream>
#include <cstdio>
#include <vector>
#include <list>
#include <algorithm>
#include <cmath>
#include <stack>
#include <map>
#include <numeric>
#include <sstream>
#include <queue>
#include <iomanip>
using namespace std;

#define REP(i,n) for(int (i)=0; (i)<(n); (i)++)
#define FOR(i,a,b) for(int (i)=(a); (i)<(b); (i)++)
#define PUSH(n,v) for(int i=0; i<(n); i++) {int j; cin >> j; v.push_back(j);}
#define ALL(v) v.begin(), v.end()
#define print(s) cout << (s) << endl

int main() {
    int s;
    double w, h;
    char c;
    while(cin >> s) {
        cin >> c >> w >> c >> h;
        if (w/h/h >= 25) cout << s << endl;
    }
    return 0;
}

C++: #include<iostream>
#include<cstdio>
using namespace std;
int main(){
    int gaku;
    double w,h;
	while(scanf("%d,%lf,%lf",&gaku,&w,&h) != EOF){
	    int bmi = w / (h * h);
        bmi >= 25 ? cout << gaku << endl:cout << "";
	}
	return 0;
}