Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
8lab.docx
Скачиваний:
5
Добавлен:
04.08.2019
Размер:
37.41 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Факультет Автоматики и Вычислительной Техники

Кафедра Вычислительной Техники

ОТЧЁТ

Лабораторная работа №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. текст “Ожтнпуса об щйспшбкщжж гожесжойж бгупнбуйийспгбооьц й лпнрэяужсйипгбооьц тйтужн твпсб” раскодировался в “Несмотря на широчайшее внедрение автоматизированных и

компьютеризованных систем сбора”

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]