Go: package main

import "fmt"

func main() {
	var v float64
	for {
		i, _ := fmt.Scan(&v)
		if i == 0 {
			break
		}
		t := v / 9.8
		y := 4.9 * t * t

		N := 0
		for {
			N++
			if height := 5*N - 5; float64(height) > y {
				fmt.Println(N)
				break
			}
		}
	}
}

C++: #include <bits/stdc++.h>
using namespace std;
#pragma GCC optimize("Ofast")
#define all(x) (x).begin(),(x).end()
#define rep(i,n) for(int (i)=0;i<(n);i++)
#define REP(i,m,n) for(int (i)=(m);(i)<(n);(i)++)
#define INF LLONG_MAX - 100
#define MOD 1000000007
#define fcout cout << fixed << setprecision(15)
#define int long long
#define yorn(f) puts((f)?"Yes":"No")
#define YORN(f) puts((f)?"YES":"NO")
#define lowb lower_bound
#define upb upper_bound
typedef long long ll;
typedef pair<int, int> P;
typedef priority_queue<int> pque;
int gcd(int a,int b){return b?gcd(b,a%b):a;};
int lcm(int a,int b){return a/gcd(a,b)*b;};
int mod(int a,int b){return (a+b-1)/b;};
int month[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
template<typename A, size_t N, typename T>
void Fill(A(&array)[N],const T &val){std::fill((T*)array,(T*)(array+N),val);}
template<class T>inline bool chmax(T& a,T b){if(a<b){a=b;return true;}return false;};
template<class T>inline bool chmin(T& a,T b){if(a>b){a=b;return true;}return false;};



signed main() {
	cin.tie(0);
	cout.tie(0);
	ios::sync_with_stdio(false);

	double d;
	while(cin >> d) {
		for(int i = 1;; i++) {
			double y = sqrt(5.*(i - 1) / 4.9);
			if(9.8 * y >= d) {
				cout << i << endl;
				break;
			}
		}
	}
	return 0;
}

C++: #include<iostream>
using namespace std;
main(){
	double in;
	while(cin>>in){
		double t,y;
		t=in/9.8;
		y=4.9*t*t;
		y=(y/5+1);
		int n=y;
		y=y-(int)y;
		if(y>0)++n;
		cout<<n<<endl;
	}	
}

C++: #include<iostream>
using namespace std;
int main()
{
          double a,b,c,d;
          while(cin>>a)
          {
                    b=a/9.8;
                    c=b*b*4.9;
                    int d=(c+5)/5;
                    cout<<d+1<<endl;
          }
return 0;
}

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

int main() {
  double v;
  while(cin >>v){
    double hight= 4.9*(v/9.8)*(v/9.8);
    int kai= ceil((hight +5)/5);
    cout << kai <<endl;
  }
  return 0;
}

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

int main() {
	double v;
	vector<int> r;
	while(scanf("%lf",&v) != EOF)
	{
		r.push_back(int(floor(v*v/98))+2);
	}
	for (int i=0; i<r.size(); i++)
	{
		cout << r[i] << endl;
	}
	return 0;
}

C++: #include<iostream>

using namespace std;



main(){
  double minv;
  while(cin >>minv){
    int i,ans=0;
    double t = minv/9.8;
    double y;
    y = 4.9*t*t;
    double tall;
    for(i=1;; i++){
      tall = 5*i-5;
      if(tall >= y){ans=i;break;}
    }

    cout << ans << endl;

    
  }





  return 0;
}

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

using namespace std;

const double eps = 1e-9;

int main() {
	double v;
	while (scanf("%lf", &v) != EOF) {
		double n = (v * v / 19.6 + 5) / 5.0;
		if (!(fabs(n - (int)n) < eps)) n += 1;
		printf ("%d\n", (int)n);
	}
	return 0;
}

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

int main(){
	double v;
	int f;
	while(scanf("%lf",&v)!=EOF){
		f=v*v/98+2;
		cout<<f<<endl;
	}
}

C++: #include <cstdio>
#include <cstdlib>
#include <cmath>
#include <climits>
#include <cfloat>
#include <map>
#include <utility>
#include <set>
#include <iostream>
#include <memory>
#include <string>
#include <vector>
#include <algorithm>
#include <functional>
#include <sstream>
#include <complex>
#include <stack>
#include <queue>
using namespace std;
static const double EPS = 1e-5;
typedef long long ll;
#define FOR(i,n) for(i=0;i<n;i++)
#define rep(i,n) for(int i=0;i<n;i++)

int main(){
	double s;
	for(;cin>>s;){
		double t=s/9.8;
		double y=4.9*t*t;
		int n=y/5+1;
		if(5*n-5<y)n++;
		cout<<n<<endl;
	}
	return 0;
}

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

double speed(double x) {
	double time = x / 9.8;
	double y = 4.9*time*time;
	double f = (y / 5)+1 ;
	f = floor(f);
	int g = static_cast<int>(f);
	return g;
}

int main() {
	double x;
	while (cin >> x) {
		cout << speed(x) << endl;
	}
	return 0;
}

C++: #include<iostream>
#include<math.h>
using namespace std;
int main()
{
		double v, temp, N;
		cin >> v;
		temp = v / 9.8;
		temp = 4.9 * pow(temp,2);
		N = (temp + 5) / 5;
		cout << ceil(N) << endl;
	return 0;
}

C++: /*****include*****/
#include <iostream>
#include <fstream>
#include <string>

/*****デバッグ定義*****/
//#define DEBUG
/*****マクロ定義*****/

/*****名前空間*****/
using namespace std;

/*****グローバル変数置き場*****/

/*****その他関数置き場*****/

/*****main関数*****/
int main(){
	/*****ファイルオープン*****/
#ifdef DEBUG
	ofstream fout("output.txt");
	ifstream fin("input.txt");
	if(!fout || !fin){
		cout << "Can't open the file.\n";
		return;
	}
#endif
	/*****変数置き場*****/
	double b_v;
	double v_sq;
	long int n;
	/*****処理部*****/
	while(1){
		scanf("%d",&b_v);
		if(b_v == 0)	break;
		n=0;
		v_sq = 0;
		while(v_sq < b_v*b_v){
			n++;
			v_sq = 19.6 * (5*(double)n - 5);
		}
		printf("%d\n",n);
	}
	/*****処理終了後*****/
#ifdef DEBUG
	fout.close();
	fin.close();
#endif
	return 0;
}

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

int main()
{
  double v;
  while (cin >> v) {
    double t = v / 9.8;
    double y = 4.9 * t * t;

    int ans = 1;
    while (5*ans-5 < y)
      ++ans;

    cout << ans << endl;
  }
  return 0;
}

C++: #include <stdio.h>
#include<math.h>
using namespace std;

int main(){
	double v,N;

	while(scanf("%lf",&v)!=EOF){
		for(int N=0;;N+=1){
			if(N >= (v*v+98)/98){
				printf("%d\n",(int)N);
				break;
			}
		}
	}

    return 0;
}

C++: #ifndef _GLIBCXX_NO_ASSERT
#include <cassert>
#endif
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>

#ifdef __GXX_EXPERIMENTAL_CXX0X__
#include <ccomplex>
#include <cfenv>
#include <cinttypes>
#include <cstdbool>
#include <cstdint>
#include <ctgmath>
#include <cwchar>
#include <cwctype>
#endif

#include <algorithm>
#include <bitset>
#include <complex>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <iterator>
#include <limits>
#include <list>
#include <locale>
#include <map>
#include <memory>
#include <new>
#include <numeric>
#include <ostream>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <typeinfo>
#include <utility>
#include <valarray>
#include <vector>

#ifdef __GXX_EXPERIMENTAL_CXX0X__
#include <array>
#include <atomic>
#include <chrono>
#include <condition_variable>
#include <forward_list>
#include <future>
#include <initializer_list>
#include <mutex>
#include <random>
#include <ratio>
#include <regex>
#include <system_error>
#include <thread>
#include <tuple>
#include <typeindex>
#include <type_traits>
#include <unordered_map>
#include <unordered_set>
#endif

#include <array>

using namespace std;

int main ()
{
	double x;
	while( cin >> x )
	{
		cout <<(int) ( pow ( x / 9.8 , 2.0 )*4.9 + 5 +5-(1e-10)) / 5 << endl;
	}
}

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

int main()
{
    int y, t, v, nv, cont = 1;
    while(cin >> nv)
    {
	y = (nv * nv) / 19.6;
	
	while(y>0){	
	    y -= 5;
	    cont++;
	}
	
	cout << cont << endl;
    }
}