ModifiableElement DynamicHashArray::FindElement(AccountNumber p_Key) { ArrayIndex SlotNumber; DynamicHashString DHString; ModifiableElement Result; AccountNumber p_Temp = p_Key; char buf[10]; for (int i = 0; ; i ++) { SlotNumber = CalculateHash(p_Temp); DHString = DynamicHashString(GetString(SlotNumber)); Result = DHString.FindElement(p_Temp); if (Result != "") break; else if (DHString.GetChain() == 0) break; else { sprintf(buf,"\f%d",i); p_Temp = p_Key + buf; p_Temp = p_Temp.Mid(0,p_Temp.GetSize()-1); } } return Result; }