Getting Closer to fixing this
+- EncryptionUtility.c +- PA01_Main
This commit is contained in:
parent
4b87557bcf
commit
dc1a4f1638
2 changed files with 52 additions and 18 deletions
|
|
@ -21,11 +21,11 @@ Dependencies: as needed
|
|||
*/
|
||||
SquareArrayType *clearArrayType( SquareArrayType *data )
|
||||
{
|
||||
int rowIndex;
|
||||
int oneDimensionIndex;
|
||||
|
||||
for( rowIndex = 0; rowIndex < data->sideSize; rowIndex++ )
|
||||
for( oneDimensionIndex = 0; oneDimensionIndex < data->sideSize; oneDimensionIndex++ )
|
||||
{
|
||||
free( data->array[ rowIndex ] );
|
||||
free( data->array[ oneDimensionIndex ] );
|
||||
}
|
||||
|
||||
free( data->array );
|
||||
|
|
@ -50,7 +50,7 @@ Dependencies: as needed
|
|||
*/
|
||||
SquareArrayType *createArrayType( int sideSize )
|
||||
{
|
||||
int rowIndex, colIndex;
|
||||
int oneDimensionIndex, twoDimensionIndex;
|
||||
SquareArrayType *newData;
|
||||
|
||||
newData = (SquareArrayType *)malloc( sizeof( SquareArrayType ) );
|
||||
|
|
@ -59,13 +59,13 @@ SquareArrayType *createArrayType( int sideSize )
|
|||
|
||||
newData->array = (int **)malloc( sideSize * sizeof( int * ) );
|
||||
|
||||
for( rowIndex = 0; rowIndex < sideSize; rowIndex++ )
|
||||
for( oneDimensionIndex = 0; oneDimensionIndex < sideSize; oneDimensionIndex++ )
|
||||
{
|
||||
newData->array[ rowIndex ] = (int *)malloc( sideSize * sizeof( int ) );
|
||||
newData->array[ oneDimensionIndex ] = (int *)malloc( sideSize * sizeof( int ) );
|
||||
|
||||
for( colIndex = 0; colIndex < sideSize; colIndex++ )
|
||||
for( twoDimensionIndex = 0; twoDimensionIndex < sideSize; twoDimensionIndex++ )
|
||||
{
|
||||
newData->array[ rowIndex ][ colIndex ] = (int)ASTERISK;
|
||||
newData->array[ oneDimensionIndex ][ twoDimensionIndex ] = (int)ASTERISK;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -175,33 +175,67 @@ SquareArrayType *encryptData( const char *toEncrypt )
|
|||
// iterate through the array (backwards?) [Past Charles, see diagram that you made of Square Array]
|
||||
int oneDimensionIndex;
|
||||
int twoDimensionIndex;
|
||||
int differenceIndex;
|
||||
int currentCharacter = 0;
|
||||
int flagEndString = 0;
|
||||
for(oneDimensionIndex = stringLenRoot - 1; oneDimensionIndex >= 0; oneDimensionIndex--)
|
||||
// for(oneDimensionIndex = stringLenRoot - 1; oneDimensionIndex >= 0; oneDimensionIndex--)
|
||||
// {
|
||||
// // one dimension to move through array
|
||||
// for(twoDimensionIndex = stringLenRoot - 1; twoDimensionIndex >= 0; twoDimensionIndex--)
|
||||
// {
|
||||
// if(flagEndString == 1)
|
||||
// {
|
||||
// // check the flag, if it is set, then start putting random data into rest of the array.
|
||||
// encryptedData->array[oneDimensionIndex][twoDimensionIndex] = getRandomLetterValue();
|
||||
// }
|
||||
// // second dimension to move through array
|
||||
// if(toEncrypt[currentCharacter] == NULL_CHAR)
|
||||
// {
|
||||
// // if the null character is there, replace with the Unprintable, set flag to one.
|
||||
// encryptedData->array[oneDimensionIndex][twoDimensionIndex] = UNPRINTABLE_CHAR_VALUE;
|
||||
// flagEndString = 1;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// // otherwise, continue putting the data into the 2d array.
|
||||
// encryptedData->array[oneDimensionIndex][twoDimensionIndex] = toEncrypt[currentCharacter];
|
||||
// }
|
||||
// currentCharacter = currentCharacter + 1;
|
||||
// }
|
||||
// }
|
||||
for(oneDimensionIndex = stringLenRoot * 2; oneDimensionIndex >= 0; oneDimensionIndex--)
|
||||
{
|
||||
//
|
||||
for(twoDimensionIndex = oneDimensionIndex; twoDimensionIndex >= 0; twoDimensionIndex--)
|
||||
{
|
||||
// one dimension to move through array
|
||||
for(twoDimensionIndex = stringLenRoot - 1; twoDimensionIndex >= 0; twoDimensionIndex--)
|
||||
//
|
||||
differenceIndex = oneDimensionIndex - twoDimensionIndex;
|
||||
if(differenceIndex < stringLenRoot && twoDimensionIndex < stringLenRoot)
|
||||
{
|
||||
if(flagEndString == 1)
|
||||
{
|
||||
// check the flag, if it is set, then start putting random data into rest of the array.
|
||||
encryptedData->array[oneDimensionIndex][twoDimensionIndex] = getRandomLetterValue();
|
||||
}
|
||||
// printf("C ");
|
||||
// second dimension to move through array
|
||||
if(toEncrypt[currentCharacter] == NULL_CHAR)
|
||||
{
|
||||
// if the null character is there, replace with the Unprintable, set flag to one.
|
||||
encryptedData->array[oneDimensionIndex][twoDimensionIndex] = UNPRINTABLE_CHAR_VALUE;
|
||||
encryptedData->array[twoDimensionIndex][differenceIndex] = UNPRINTABLE_CHAR_VALUE;
|
||||
currentCharacter = currentCharacter + 1;
|
||||
flagEndString = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
// otherwise, continue putting the data into the 2d array.
|
||||
encryptedData->array[oneDimensionIndex][twoDimensionIndex] = toEncrypt[currentCharacter];
|
||||
encryptedData->array[twoDimensionIndex][differenceIndex] = toEncrypt[currentCharacter];
|
||||
}
|
||||
if(flagEndString == 1)
|
||||
{
|
||||
// check the flag, if it is set, then start putting random data into rest of the array.
|
||||
encryptedData->array[twoDimensionIndex][differenceIndex] = getRandomLetterValue();
|
||||
}
|
||||
currentCharacter = currentCharacter + 1;
|
||||
}
|
||||
}
|
||||
//printf("\n");
|
||||
}
|
||||
// once null character is reached, put the 'unprintable character' then random data afterward.
|
||||
// returns a Square Array.
|
||||
return encryptedData;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue