Mistři v programování na #hovnokod

Objeveno po 10 letech :-)

  public static char[] toCharArray(Reader reader, int length) throws IOException
  {
      char[] array = new char[length];
      int off = 0;
      while (true)
      {
        int l = reader.read(array, off, length);
        if (l == -1) {
            break;
        }
        off += l;
      }
      reader.close();
      return array;
  }

michal dvorak,

timestamp :)

bool Datum::jeDatumZajtra(string paDatum)
{
	if (paDatum.size() < 10)
	{
		std::cout << "ZLY FORMAT DATUMU !!! ma to byt: napr 01.12.2016";
		throw std::invalid_argument("Zly format datumu zadaj ho vo formate 08.12.2016");
	}

	string dni = paDatum.substr(0, 2);
	string mesiace = paDatum.substr(3, 2);
	string roky = paDatum.substr(6, 4);

	int odovzd_dni = atoi(dni.c_str());
	int odovzd_mesiace = atoi(mesiace.c_str());
	int odovzd_roky = atoi(roky.c_str());

	time_t now;
	tm nowLocal;

	now = time(NULL);
	nowLocal = *localtime(&now);
	// mesiace +1 roky + 1900 
	int dniTeras, mesiaceTeras, rokyTeras;
	dniTeras = (int)nowLocal.tm_mday;
	mesiaceTeras = (int)nowLocal.tm_mon;
	mesiaceTeras++; // zvecsene koli funkcnosti 
	rokyTeras = (int)nowLocal.tm_year;
	rokyTeras += 1900; // zvecsene koli funkcnosti

	int pomocnaMesiace = mesiaceTeras; // lebo potrebujem menit aj mesiac 
	switch (pomocnaMesiace)
	{
	case 1: {
		if (dniTeras <= 30) { dniTeras += 1; break; }
		
		if (dniTeras == 31)
		{
			dniTeras = 1; mesiaceTeras = 2; break;
		}

	}

	case 2: {
		if (dniTeras <= 28) { dniTeras += 1; break; }
		
		if (dniTeras == 29)
		{
			dniTeras = 1; mesiaceTeras = 3; break;
		}

	}

	case 3: {
		if (dniTeras <= 30) { dniTeras += 1; break; }
		if (dniTeras == 31)
		{
			dniTeras = 1; mesiaceTeras = 4; break;
		}

	}

	case 4: {
		if (dniTeras <= 29) { dniTeras += 1; break; }
		
		if (dniTeras == 30)
		{
			dniTeras = 1; mesiaceTeras = 5; break;
		}

	}

	case 5: {
		if (dniTeras <= 30) { dniTeras += 1; break; }
		
		if (dniTeras == 31)
		{
			dniTeras = 1; mesiaceTeras = 6; break;
		}

	}

	case 6: {
		if (dniTeras <= 29) { dniTeras += 1; break; }
		
		if (dniTeras == 30)
		{
			dniTeras = 1; mesiaceTeras = 7; break;
		}

	}

	case 7: {
		if (dniTeras <= 30) { dniTeras += 1; break; }
		
		if (dniTeras == 31)
		{
			dniTeras = 1; mesiaceTeras = 8; break;
		}

	}

	case 8: {
		if (dniTeras <= 30) { dniTeras += 1; break; }
		
		if (dniTeras == 31)
		{
			dniTeras = 1; mesiaceTeras = 9; break;
		}

	}

	case 9: {
		if (dniTeras <= 29) { dniTeras += 1; break; }
		
		if (dniTeras == 30)
		{
			dniTeras = 1; mesiaceTeras = 10; break;
		}

	}

	case 10: {
		if (dniTeras <= 30) { dniTeras += 1; break; }
		
		if (dniTeras == 31)
		{
			dniTeras = 1; mesiaceTeras = 11; break;
		}

	}

	case 11: {
		if (dniTeras <= 29) { dniTeras += 1; break; }
		
		if (dniTeras == 30)
		{
			dniTeras = 1; mesiaceTeras = 12; break;
		}

	}

	case 12: {
		if (dniTeras <= 30) { dniTeras += 1; break; }
		
		if (dniTeras == 31)
		{
			dniTeras = 1; mesiaceTeras = 1; rokyTeras++; break;
		}

	}
	}

	if (odovzd_roky == rokyTeras &&
		odovzd_mesiace == mesiaceTeras &&
		odovzd_dni == dniTeras)
	{
		return true;
	}
	else {
		return false;
	}
}

bool Datum::jeDatumVIntervale(string paSkusanyDatum, string paDatumOd, string paDatumDo)
{

	if (paDatumDo.size() < 10 || paDatumOd.size() < 10 || paSkusanyDatum.size() < 10)
	{
		std::cout << "ZLY FORMAT DATUMU !!! ma to byt: napr 01.12.2016";
		throw std::invalid_argument("Zly format datumu zadaj ho vo formate 08.12.2016");
	}


	// premienam skusany na dni od roku 2000  "12.10.2016"
	string dniSkusaneho = paSkusanyDatum.substr(0, 2);
	string mesiaceSkusaneho = paSkusanyDatum.substr(3, 2);
	string rokySkusajuceho = paSkusanyDatum.substr(8, 2); // je tu len 16 

	int pocetDniSkusaneho = (atoi(rokySkusajuceho.c_str())*365);
	pocetDniSkusaneho += (atoi(mesiaceSkusaneho.c_str()) * 30);
	pocetDniSkusaneho += atoi(dniSkusaneho.c_str());

	// premienam datumOD na dni od roku 2000  "12.10.2016"
	string dniOd = paDatumOd.substr(0, 2);
	string mesiaceOd = paDatumOd.substr(3, 2);
	string rokyOd = paDatumOd.substr(8, 2); // je tu len 16 

	int pocetDniOd = (atoi(rokyOd.c_str()) * 365);
	pocetDniOd += (atoi(mesiaceOd.c_str()) * 30);
	pocetDniOd += atoi(dniOd.c_str());

	// premienam DatumDO na dni od roku 2000  "12.10.2016"
	string dniDo = paDatumDo.substr(0, 2);
	string mesiaceDo = paDatumDo.substr(3, 2);
	string rokyDo = paDatumDo.substr(8, 2); // je tu len 16 

	int pocetDniDo = (atoi(rokyDo.c_str()) * 365);
	pocetDniDo += (atoi(mesiaceDo.c_str()) * 30);
	pocetDniDo += atoi(dniDo.c_str());

	if (pocetDniOd <= pocetDniSkusaneho && pocetDniSkusaneho <= pocetDniDo)
	{
		return true;
	}

	return false;

	
}

Anonymous,

Většina idiotů píše length <> 0, tohle je ovšem trumfuje ;-)

if (otherValues != null && otherValues.length < 0) {
//...
}

Lukáš “Louie” Balint,

Ked sa nahodou porusia fyzikalne zakony, radsej tu stranku vypni.

if (2==1) {
	vypni_stranku('', TRUE);	
}

Matej Evin,

Naši lektoři javy vymýšlí kokotiny

public static boolean isInteger(String s) {
      boolean ret = true;
      try { 
     Integer.parseInt(s); 
      } catch(NumberFormatException e) { 
     ret = false; 
 
      }
      return ret;
   }
 
   public static boolean isFloat(String s) {
      boolean ret = true;
      try { 
     Float.parseFloat(s); 
      } catch(NumberFormatException e) { 
     ret = false; 
      }
      return ret;
   }
 
   public static boolean isDouble(String s) {
      boolean ret = true;
      try { 
     Double.parseDouble(s); 
      } catch(NumberFormatException e) { 
     ret = false; 
      }
      return ret;
   }

Anonymous,