/* encrypt_screen.c This function is part of the Polybius Square program. It encrypts user input and writes it to the screen. Copyright (C) 2015, 2016 Scott C. MacCallum scm@ma.sdf.org This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . */ #include #include #include #include void encrypt_screen(void) { int index; int element_number = 1; int array_number[5]; int element_letter = 97; int array_letter[25]; int counter; int value; char letter; char empty_message[2]; char message[20]; strcpy(empty_message, "0"); strcpy(message, "0"); printf("\n"); printf("Your message will be encrypted using this\n"); printf("Polybius Square.\n"); /* At index zero, initialize the elements in the array of numbers with values one through five */ for (index = 0; element_number < 6; index++) array_number[index] = element_number++; printf("\n"); printf(" "); /* At index zero, print the values of the elements in the array of numbers */ for (index = 0; index < 5; index++) printf("%d ", array_number[index]); printf("\n"); /* At index zero, print the value of the element in the array of numbers */ printf("%d ", array_number[0]); /* At index zero, initialize the elements in the array of letters with ASCII values ninety-seven through one hundred twenty-one */ for (index = 0; element_letter < 122; index++) array_letter[index] = element_letter++; /* At index zero, print the five ASCII values of the elements in the array of letters */ for (index = 0; index < 5; index++) printf("%c ", array_letter[index]); printf("\n"); /* At index one, print the ASCII value of the element in the array of numbers */ printf("%d ", array_number[1]); /* At index five, print the five ASCII values of the elements in the array of letters */ for (index = 5; index < 10; index++) printf("%c ", array_letter[index]); printf("\n"); /* At index two, print the ASCII value of the element in the array of numbers */ printf("%d ", array_number[2]); /* At index ten, print the five ASCII values of the elements in the array of letters */ for (index = 10; index < 15; index++) printf("%c ", array_letter[index]); printf("\n"); /* At index three, print the ASCII value of the element in the number array */ printf("%d ", array_number[3]); /* At index fifteen, print the five ASCII values of the elements in the letter array */ for (index = 15; index < 20; index++) printf("%c ", array_letter[index]); printf("\n"); /* At index four, print the ASCII value of the element in the number array */ printf("%d ", array_number[4]); /* At index twenty, print the five ASCII values of the elements in the letter array */ for (index = 20; index < 25; index++) printf("%c ", array_letter[index]); printf("\n"); printf("\n"); printf("Limit your message to seventy-five letters;\n"); printf("end it with an exclamation point.\n"); printf("\n"); printf("Message: "); for (counter = 0; counter < 77; counter++) { scanf("%c", &letter); letter = tolower(letter); /* a */ if (letter == array_letter[0]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[0]); printf("%d", array_number[0]); } /* b */ if (letter == array_letter[1]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[0]); printf("%d", array_number[1]); } /* c */ if (letter == array_letter[2]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[0]); printf("%d", array_number[2]); } /* d */ if (letter == array_letter[3]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[0]); printf("%d", array_number[3]); } /* e */ if (letter == array_letter[4]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[0]); printf("%d", array_number[4]); } /* f */ if (letter == array_letter[5]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[1]); printf("%d", array_number[0]); } /* g */ if (letter == array_letter[6]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[1]); printf("%d", array_number[1]); } /* h */ if (letter == array_letter[7]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[1]); printf("%d", array_number[2]); } /* i */ if (letter == array_letter[8]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[1]); printf("%d", array_number[3]); } /* j */ if (letter == array_letter[9]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[1]); printf("%d", array_number[4]); } /* k */ if (letter == array_letter[10]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[2]); printf("%d", array_number[0]); } /* l */ if (letter == array_letter[11]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[2]); printf("%d", array_number[1]); } /* m */ if (letter == array_letter[12]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[2]); printf("%d", array_number[2]); } /* n */ if (letter == array_letter[13]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[2]); printf("%d", array_number[3]); } /* o */ if (letter == array_letter[14]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[2]); printf("%d", array_number[4]); } /* p */ if (letter == array_letter[15]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[3]); printf("%d", array_number[0]); } /* q */ if (letter == array_letter[16]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[3]); printf("%d", array_number[1]); } /* r */ if (letter == array_letter[17]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[3]); printf("%d", array_number[2]); } /* s */ if (letter == array_letter[18]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[3]); printf("%d", array_number[3]); } /* t */ if (letter == array_letter[19]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[3]); printf("%d", array_number[4]); } /* u */ if (letter == array_letter[20]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[4]); printf("%d", array_number[0]); } /* v */ if (letter == array_letter[21]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[4]); printf("%d", array_number[1]); } /* w */ if (letter == array_letter[22]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[4]); printf("%d", array_number[2]); } /* x */ if (letter == array_letter[23]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[4]); printf("%d", array_number[3]); } /* y */ if (letter == array_letter[24]) { value = strcmp(empty_message, message); if (value == 0) { strcpy(message, "Encrypted Message: "); printf("\n"); printf("%s", message); } printf("%d", array_number[4]); printf("%d", array_number[4]); } /* ! */ if (letter == '!') { printf("\n"); exit(0); } if (counter == 76) { printf("\n"); printf("\n"); printf("ERROR, bad input."); printf("\n"); printf("\n"); exit(1); } } }