#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <ctime>
#include <iostream>
#include <algorithm>
#include <sstream>
#include <string>
#include <vector>
#include <queue>
#include <stack>
#include <map>
#include <set>
#include <utility>
#include <cctype>
using namespace std;

#define rep(i,n) for(int (i)=0; (i)<(int)(n); ++(i))
#define foreach(c,i) for(__typeof((c).begin()) i=(c).begin();i!=(c).end();i++)
#define Eps (1e-10)

int N;
bool flag[102];
double x[102],y[102];

int main() {
  while (scanf("%d",&N),N) {
    rep(i,N) scanf("%lf,%lf",x+i,y+i);
    fill(flag, flag + N, false);
    //rep(i,N) printf("%lf,%lf\n",x[i],y[i]);
    for (int i = 0; i < N; ++i) {
      for (int j = i+1; j < N; ++j) {
        for (int k = j+1; k < N; ++k) {
          for (int l = 0; l < N; ++l) {
            if (i == l || j == l || k == l) continue;
            if (flag[i] | flag[j] | flag[k] | flag[l]) continue;
            double S, subS[3], subSum = 0;
            S = fabs((x[i]*y[j] + x[j]*y[k] + x[k]*y[i] -
                      y[i]*x[j] - y[j]*x[k] - y[k]*x[i]) / 2);
            subS[0] = fabs((x[l]*y[j] + x[j]*y[k] + x[k]*y[l] -
                            y[l]*x[j] - y[j]*x[k] - y[k]*x[l]) / 2);
            subS[1] = fabs((x[i]*y[l] + x[l]*y[k] + x[k]*y[i] -
                            y[i]*x[l] - y[l]*x[k] - y[k]*x[i]) / 2);
            subS[2] = fabs((x[i]*y[j] + x[j]*y[l] + x[l]*y[i] -
                            y[i]*x[j] - y[j]*x[l] - y[l]*x[i]) / 2);
            rep(ii,3) subSum += subS[ii];
            if (fabs(S-subSum) < Eps) {
              //printf("(%d,%d,%d) : %d | %.3lf %.3lf\n", i,j,k,l,S,subSum);
              flag[l] = true;
            }
          }
        }
      }
    }
    printf("%d\n",count(flag, flag+N, true));
  }
  return 0;
}