Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2010, 12:23   #1
4ygynOK
 
Регистрация: 29.05.2010
Сообщений: 3
По умолчанию Немного динамики, работа с файлом ну и + шифроване по XOR...

смотрите в основном 3-ий кейз в нём необходимо взять текст из файла и его зашифровать по ксору наложением ключа:

#include <stdio.h>
#include <conio.h>
#include <iostream.h>
#include <stdlib.h>

void main(void){

FILE *file;
char* file_name = "file.txt";
int sch;
printf ("Vvedite nomer neobxodimou operacii:\n\n");
printf("1. Vvedenie texta c klaviatyry.\n2. Ispolzovanie gotovogo texta. \n3. Shifrotext");
printf("Number: ");
scanf("%d",&sch);
switch(sch){

case 1:

char ch;
file = fopen( file_name, "w" );
printf("Vvedite shifryemyu text:\n");
scanf("%c",&ch);

do {
ch=getchar();
putc(ch, file);
}while(ch!='$');

fclose(file);

break;

case 2:

file = fopen( file_name, "r" );
if(file!=NULL){
printf("Text iz fila:\n");
ch=getc(file);
while (ch!=EOF){
putchar(ch);
ch=getc(file);
}
printf("\n");
}
else{
printf("File not found !!!\n");
}
fclose(file);
break;
case 3:

char *d_vxod;
char *d_rez;
int i=0;

d_vxod=new char [1000];
if (d_vxod<=0){
printf("Error!!!");
}
d_rez=new char [1000];
if (d_rez<=0){
printf("Error!!!");
}

union Char4un {
unsigned char k[16]; };
union Char4un key;
key.k[0]=0x01;
key.k[1]=0x23;
key.k[2]=0x45;
key.k[3]=0x67;
key.k[4]=0x89;
key.k[5]=0xAB;
key.k[6]=0xCD;
key.k[7]=0xEF;
key.k[8]=0x00;
key.k[9]=0x11;
key.k[10]=0x22;
key.k[11]=0x33;
key.k[12]=0x44;
key.k[13]=0x55;
key.k[14]=0x66;
key.k[15]=0x77;
file = fopen( file_name, "r" );
if(file!=NULL){
printf("Text iz fila:\n");

for (int j=0;j<sizeof(d_vxod);j++){
d_vxod[j]=getc(file);
for (int s=0;s<sizeof(key.k);s++){
d_vxod[j]=d_vxod[j]^key.k[s];

putchar(d_vxod[j]);
d_vxod[j]=getc(file);
}

}
delete d_vxod;
delete d_rez;
printf("\n");
}
else{
printf("File not found !!!\n");
}
fclose(file);

break;
}
}


Всысказывайте любые предположения буду всё проверять....
4ygynOK вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Немного работа на Паскале Evgenii90 Фриланс 13 09.04.2010 15:21
Работа с файлом.. dimorik Win Api 2 23.03.2010 21:26
Работа с файлом Илюха... Помощь студентам 0 06.12.2009 20:42
Работа с файлом ! PPikaso Помощь студентам 3 29.10.2009 14:21
Работа с файлом D_E_N Общие вопросы Delphi 6 17.07.2009 14:03