МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Факультет Автоматики и Вычислительной Техники
Кафедра Вычислительной Техники
ОТЧЁТ
Лабораторная работа №3
по курсу Информатика
Работа с файлами
Группа: АБ 121
Студент: Зайцев И.Е.
Преподаватель: Малявко Александр Антонович
Новосибирск 2011
1. Цель работы:
Научиться выполнять чтение и запись результатов с дальнейшим преобразованием выводимой информации
2. 8.1) Чтобы зашифровать текст, записанный с помощью русских букв и знаков препинания, его можно переписать заменив каждую букву на непосредственно следующую за не по алфавиту. (я заменяется на а)
а) зашифровать текст
3.Текст шифруется по таблице ASCII со сдвигом на единицу, символ z меняется на a
for (i=0 ; i<lenght; i++)
{
switch (mass[i])
{
case 'Z':
mass[i]='A';
break;
case 'z':
mass[i]='a';
break;
case ' ':
break;
case 'я':
mass[i]='а';
break;
case 'Я':
mass[i]='А';
break;
default:
mass[i]++;
}
}
4.
/* 8.1) Чтобы зашифровать текст, записанный с помощью русских букв и знаков препинания, его можно переписать заменив каждую букву на непосредственно следующую за не по алфавиту. (я заменяется на а)
• а) зашифровать текст
• б) расшифровать текст
*/
#include "stdafx.h"
#include <iostream>
int _tmain(int argc, _TCHAR* argv[])
{ setlocale(LC_ALL,"russian");
// Определение переменных
char mass[500]={0};
int i=0;
int lenght=0;
// открытие файлов
FILE *fp = fopen("D:/user/Informatika/AB-121/zaitcev/text.txt", "r");
FILE *fw = fopen("D:/user/Informatika/AB-121/zaitcev/text2.txt", "w");
// определение есть ли информация в файле
if ((fp = fopen("D:/user/Informatika/AB-121/zaitcev/text.txt", "r"))==NULL)
{ printf("Ошибка");
}
// Запись информации из файла в массив
fread(mass,1,500,fp);
// Замена букв в массиве(сдвиг на единицу)
lenght =(strlen(mass));
for (i=0 ; i<lenght; i++)
{
switch (mass[i])
{
case 'Z':
mass[i]='A';
break;
case 'z':
mass[i]='a';
break;
case ' ':
break;
case 'я':
mass[i]='а';
break;
case 'Я':
mass[i]='А';
break;
default:
mass[i]++;
}
}
//Запись полученных значений в файл
for (i=0 ; i<lenght; i++)
{
fputc(int (mass[i]),fw);
}
printf ("Текст закодирован успешно");
//закрытие файлов
fclose (fp);
fclose (fw);
getchar();
return 0;
}
5.
Текст “Несмотря на широчайшее внедрение автоматизированных и
компьютеризованных систем сбора”
закодиираван в такой – “Ожтнпуса об щйспшбкщжж гожесжойж бгупнбуйийспгбооьц й лпнрэяужсйипгбооьц тйтужн твпсб”
1. Цель работы:
Научиться выполнять чтение и запись результатов с дальнейшим преобразованием выводимой информации
2.
Чтобы зашифровать текст, записанный с помощью русских букв и знаков препинания, его можно переписать заменив каждую букву на непосредственно следующую за не по алфавиту. (я заменяется на а)
б) расшифровать текст
3. Текст расшифровывается по таблице ASCII со сдвигом на единицу, символ a меняется на z
switch (mass[i])
{
case 'A':
mass[i]='Z';
break;
case 'a':
mass[i]='z';
break;
case ' ':
break;
case 'а':
mass[i]='я';
break;
case 'А':
mass[i]='Я';
break;
default:
mass[i]--;
}
4.
/* 8.1) Чтобы зашифровать текст, записанный с помощью русских букв и знаков препинания, его можно переписать заменив каждую букву на непосредственно следующую за не по алфавиту. (я заменяется на а)
• а) зашифровать текст
• б) расшифровать текст
*/
#include "stdafx.h"
#include <iostream>
int _tmain(int argc, _TCHAR* argv[])
{ setlocale(LC_ALL,"russian");
// Определение переменных
char mass[500]={0};
int i=0;
int lenght=0;
// открытие файлов
FILE *fp = fopen("C:/text2.txt", "r");
FILE *fw = fopen("C:/text3.txt", "w");
// определение есть ли информация в файле
if ((fp = fopen("C:/text2.txt", "r"))==NULL)
{
printf("Ошибка");
}
// Запись информации из файла в массив
fread(mass,1,500,fp);
// Замена букв в массиве(сдвиг на единицу)
lenght =(strlen(mass));
for (i=0 ; i<lenght; i++)
{
switch (mass[i])
{
case 'A':
mass[i]='Z';
break;
case 'a':
mass[i]='z';
break;
case ' ':
break;
case 'а':
mass[i]='я';
break;
case 'А':
mass[i]='Я';
break;
default:
mass[i]--;
}
}
//Запись полученных значений в файл
for (i=0 ; i<lenght; i++)
{
fputc(int (mass[i]),fw);
}
printf ("Текст раскодирован успешно");
//закрытие файлов
fclose (fp);
fclose (fw);
getchar();
return 0;
}
5. текст “Ожтнпуса об щйспшбкщжж гожесжойж бгупнбуйийспгбооьц й лпнрэяужсйипгбооьц тйтужн твпсб” раскодировался в “Несмотря на широчайшее внедрение автоматизированных и
компьютеризованных систем сбора”