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

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

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2011, 07:50   #1
Senator16
Пользователь
 
Регистрация: 25.12.2010
Сообщений: 11
По умолчанию

Дан зашифрованный файл на русском языке. Расшифровать его в другой файл по принципу если в защиф-м файле буква б то в другом буква а

Вот мой программный код
Код:
#include<iostream.h>
#include<string.h>
#include<stdio.h>
#include<conio.h>
void main()
{FILE *fp;FILE *gp;
char s[]="*ЎўЈ¤Ґс¦§Ё©Є«¬*®Їабвгдежзийклмноп";
char c[1000];int i,j,e;
i=0;j=0;e=0;
if(fopen("c:\sifr.txt","r")==NULL)
 {printf("\n ЌҐ ¬®Јг ®вЄалвм д*©«");return;}
while((c[i]=getc(fp))!='*')
 {i=i+1;cout<<i;}
c[i]='\0';e=i-1;
fclose(fp);
puts(c);
for(j=0;j<=e;j++)
 for(i=0;i<=32;i++)
  {if(s[i]==c[j])
   {c[j]=s[i-1];
    if(s[0]==c[j])
     c[j]=s[32];
  }}
gp=fopen("c:\rac.txt","w");
fprintf(gp,"%s",c);
fclose(gp);
}
у меня проблема с кодировкой

Последний раз редактировалось MaTBeu; 12.01.2011 в 15:01.
Senator16 вне форума Ответить с цитированием
Старый 12.01.2011, 10:48   #2
Блуд
Пользователь
 
Регистрация: 23.05.2010
Сообщений: 53
По умолчанию

Код:
//---------------------------------------------------------------------------
#pragma hdrstop
#include <iostream.h>
#include <fstream.h>
#pragma argsused
//---------------------------------------------------------------------------
using namespace std;
int main()
{
ifstream file1("C:\\F1.txt");
ofstream file2("C:\\F2.txt");
char buff[255];

if (!file1 ) {
   cout<<"Faili ne naedeni"<<endl;
   system("pause");
   exit(1);
}

while (file1>>buff){
	for (int i = 0; i < strlen(buff); i++)
		 buff[i]-=1;
	file2<<buff<<' ';
}
file1.close();
file2.close();

cout<<"Zashifrovanii tekst sohranen v F2.txt"<<endl;
system("pause");
	return 0;
}
текст вводишь в F1.txt,Выводит в F2.txt

Последний раз редактировалось MaTBeu; 12.01.2011 в 15:01.
Блуд вне форума Ответить с цитированием
Старый 12.01.2011, 14:18   #3
Senator16
Пользователь
 
Регистрация: 25.12.2010
Сообщений: 11
По умолчанию

мне надо на c++
Senator16 вне форума Ответить с цитированием
Старый 12.01.2011, 14:20   #4
kenwood2010
Пользователь
 
Регистрация: 26.11.2010
Сообщений: 97
По умолчанию

так это и на С++ написано!
ты проверь работу и поблагодари человека!
kenwood20072@rambler.ru ICQ: 701 302 135. (Программирование на C++, С. Решение задач по физике)
kenwood2010 вне форума Ответить с цитированием
Старый 13.01.2011, 06:51   #5
Senator16
Пользователь
 
Регистрация: 25.12.2010
Сообщений: 11
По умолчанию

Проверил. Не работает

По крайней мере у меня. А так спасибо что помогаете.

Последний раз редактировалось Stilet; 15.01.2011 в 13:10.
Senator16 вне форума Ответить с цитированием
Старый 13.01.2011, 08:49   #6
Блуд
Пользователь
 
Регистрация: 23.05.2010
Сообщений: 53
По умолчанию

компилятор какой?
Блуд вне форума Ответить с цитированием
Старый 13.01.2011, 08:55   #7
Блуд
Пользователь
 
Регистрация: 23.05.2010
Сообщений: 53
По умолчанию

Код:
#include <iostream.h>
#include <fstream.h>
#include <string.h>

//---------------------------------------------------------------------------
using namespace std;

int main()
{
ifstream file1("F1.txt");
ofstream file2("F2.txt");
char buff[255];

if (!file1 ) {
   cout<<"Faili ne naedeni"<<endl;
   system("pause");
   exit(1);
}

while (file1>>buff){
	for (int i = 0; i < strlen(buff); i++)
		 buff[i]-=1;
	file2<<buff<<' ';
}
file1.close();
file2.close();

cout<<"Zashifrovanii tekst sohranen v F2.txt"<<endl;
system("pause");





	return 0;
}
<string.h> забыл добавить,попробуй.
C++Builder 2009 как то компилирует без него

Последний раз редактировалось Блуд; 13.01.2011 в 08:59.
Блуд вне форума Ответить с цитированием
Старый 15.01.2011, 12:43   #8
Senator16
Пользователь
 
Регистрация: 25.12.2010
Сообщений: 11
По умолчанию

Вот готовая программа. Делал сам.
Код:
#include<iostream.h>
#include<string.h>
#include<stdio.h>
#include<conio.h>
void main()
{FILE *fp;FILE *pk;
clrscr();
char s[]="*ЎўЈ¤Ґс¦§Ё©Є«¬*®Їабвгдежзийклмноп";
char c[50]="";int i,j,e;
i=-1;j=0;e=0;
fp=fopen("c:\sifr.txt","r");
pk=fopen("c:\sif.txt","w");
if(fp==NULL)
 {printf("\n Файл не найден");return;}
  while(c[i]!='*')
 {i=i+1;c[i]=getc(fp);
 }c[i]='\0';
e=i;
for(j=0;j<=e;j++)
 {if(s[0]==c[j])
   c[j]=s[32];
   else
 for(i=0;i<=32;i++)
  {
  if(s[i]==c[j])
   c[j]=s[i-1];
   }}
fprintf(pk,"%s",c);
fclose(pk);fclose(fp);
}

Последний раз редактировалось Stilet; 15.01.2011 в 13:11. Причина: Исправление кодировки
Senator16 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с файлами Женечка92 Помощь студентам 0 13.05.2010 16:01
Работа с файлами. Си jimmywoodes Помощь студентам 3 28.01.2010 09:27
рАБОТА С ФАЙЛАМИ СергейURC Общие вопросы Delphi 8 23.09.2009 15:40
Работа с файлами cr1mson Общие вопросы C/C++ 7 14.01.2009 22:42
Работа с файлами Dim@ Помощь студентам 1 26.12.2007 22:43