Guest User

Untitled

a guest
May 20th, 2018
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<iostream.h>
  3. #include <math.h>
  4.  
  5. int main()
  6. {
  7. FILE *we, *wy;
  8. int i, licznik;
  9. int tablica_ASCII[200];
  10. char znak;
  11. char haslo[200];
  12. char plik_jawny[20];
  13. char plik_zaszyfrowany[20];
  14. for (i=0; i<200; i++)
  15. haslo[i]=42;
  16.  
  17. cout<<"Podaj nazwe pliku, ktorego tresc ma zostac zaszyfrowana: " ;
  18. cin>>plik_jawny;
  19. cout<<"Podaj nazwe pliku wynikowego: ";
  20. cin>>plik_zaszyfrowany;
  21. cout<<"Podaj haslo tylko duze litery, bez spacji i znakow specjalnych: " ;
  22. cin>>haslo;
  23.  
  24. int pozycja=0;
  25. for (i=0; i<200; i++)
  26. if (haslo[pozycja]!=42)
  27. {
  28. tablica_ASCII[i]=haslo[pozycja];
  29. pozycja++;
  30. }
  31. else
  32. {
  33. pozycja=0;
  34. i--;
  35. tablica_ASCII[i]=haslo[pozycja];
  36. pozycja++;
  37. }
  38.  
  39. for (i=0; i<200; i++)
  40. tablica_ASCII[i]-=65;
  41. licznik=0;
  42.  
  43. if((we=fopen(plik_jawny,"rb"))!=NULL)
  44. {
  45. if((wy=fopen(plik_zaszyfrowany,"wb"))!=NULL)
  46. {
  47. while((znak=getc(we))!=EOF)
  48. {
  49. if ((znak>=65)&&(znak<=90))
  50. {
  51. znak-=65;
  52. znak+=tablica_ASCII[licznik];
  53. if(licznik==200)
  54. licznik=0;
  55. else
  56. licznik++;
  57. znak=fmod(znak,26);
  58. znak+=65;
  59. putc(znak,wy);
  60. }
  61. else if ((znak>=97)&&(znak<=122))
  62. {
  63. znak-=97;
  64. znak+=tablica_ASCII[licznik];
  65. if(licznik==200)
  66. licznik=0;
  67. else
  68. licznik++;
  69. znak=fmod(znak,26);
  70. znak+=97;
  71. putc(znak,wy);
  72. }
  73. }
  74.  
  75. fclose(wy);
  76. }
  77. fclose(we);
  78. }
  79. cout<<"Szyfrowanie zostalo zakonczone\n";
  80. system("Pause");
  81. return 0;
  82. }
Add Comment
Please, Sign In to add comment