Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<cs50.h>
- #include<string.h>
- #include<ctype.h>
- int main (int argc , string argv[])
- {
- string k = argv[1];
- //validating code
- if( argc!=2 )
- {
- printf("1\n");
- return 1;
- }
- for(int z=0;z<strlen(k);z++)
- {
- if(!isalpha(k[z]))
- {
- printf("1\n");
- return 1;
- }
- }
- //enciphering...
- string p = GetString();
- for(int i=0,j=0,x=strlen(p);i<x;i++)
- {
- if(isalpha(p[i]))
- {
- int j=i%strlen(k);
- if(isupper(p[i])&&isupper(k[j]))
- {
- p[i]=(((p[i]-'A')+(k[j]-'A'))%26)+'A';
- j++;
- }
- else
- if(islower(p[i])&&islower(k[j]))
- {
- p[i]=(((p[i]-'a')+(k[j]-'a'))%26)+'a';
- j++;
- }
- else
- if(isupper(p[i])&&islower(k[j]))
- {
- p[i]=(((p[i]-'A')+(k[j]-'a'))%26)+'A';
- j++;
- }
- else
- if(islower(p[i])&&isupper(k[j]))
- {
- p[i]=(((p[i]-'a')+(k[j]-'A'))%26)+'a';
- j++;
- }
- }
- }
- printf("%s\n",p);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement