Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

5 лабораторная работа ОП

.pdf
Скачиваний:
2
Добавлен:
01.12.2023
Размер:
538.44 Кб
Скачать

1

Министерство науки и высшего образования Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования

Томский государственный университет систем управления и радиоэлектроники (ТУСУР)

Кафедра безопасности информационных систем (БИС)

Текстовые файлы

Отчет по практической работе

по дисциплине «Основы программирования»

Студент гр. 711-2

____________ Е. П. Толстолес

___________

11.02.2022

Принял:

Инженер кафедры БИС

_______ Д.Р. Уразаев

11.02.2022

Томск 2022

2

Оглавление

Введение ................................................................................................................

3

2 Листинг программы и процесс их выполнения................................................

5

2.1Листинг исходного кода программ ………………………………………....5

2.2Процесс выполнения программы и вывод данных …………………………9

3 Заключение .........................................................................................................

11

3

1 Введение

Цель работы: Овладеть навыками работы с текстовыми файлами. Задание: составить консольное приложение для решения нижеприведенных задач согласно варианту, согласованному с преподавателем, вводя данные в ходе выполнения программы. Для выполнения предварительно ознакомьтесь с соответствующими разделами данного пособия.

Примечание: следующие задания требуется решить с использованием текстовых файлов. Во всех заданиях предусмотреть в программе: формирование текстового файла, записав в него 20 случайных чисел от –100 до 100, по одному на строке. Используя созданный выше файл как входной, сформировать выходной файл по указанному для каждого варианта правилу.

Условия задач:

1.Записать выходной файл, заменив все положительные числа на максимум;

2.Подсчитать как часто встречается слово, введенное с клавиатуры в тексте.

Random генератор псевдослучайных чисел, то есть алгоритм, который

генерирует последовательность чисел, отвечающую определенным

статистическим критериям случайности.

StreamWriter реализует TextWriter для записи символов в поток в

определенной кодировке.

File.ReadAllText открывает текстовый файл, считывает весь текст

файла в строку и затем закрывает файл.

String.Split возвращает строковый массив, содержащий подстроки данного экземпляра, разделенные элементами заданной строки или массива знаков Юникода.

4

2 Листинг программы и процесс их выполнения

2.1 Листинг исходного кода программ

Листинг программы А представлен ниже.

using System; using System.IO; namespace _1000_7

{

class Program

{

static void Main(string[] args)

{

string line1;

Random rand = new Random(); int numbers,k=0,s=0,t=0; int[] ar = new int [20];

for (int i = 0; i < 20; i++)

{

numbers = rand.Next(-100, 100); using (StreamWriter st = new

StreamWriter("C:\\Users\\Egor\\Desktop\\text.txt",true))

{

st.WriteLine(numbers);

}

}

StreamReader sw = new StreamReader("C:\\Users\\Egor\\Desktop\\text.txt");

line1 = sw.ReadLine(); while (line1 != null)

{

if (Int32.Parse(line1)>0)

{

s=s+ Int32.Parse(line1); k++;

}

line1 = sw.ReadLine();

}

sw.Close(); StreamReader sn = new

StreamReader("C:\\Users\\Egor\\Desktop\\text.txt");

line1 = sn.ReadLine();

s = s / k;

while (line1 != null)

{

ar[t] = Int32.Parse(line1); if (ar[t] > 0)

{

ar[t] = s;

}

line1 = sn.ReadLine(); t++;

}

sn.Close();

for (int i = 0; i < 20; i++)

5

{

using (StreamWriter st = new StreamWriter("C:\\Users\\Egor\\Desktop\\text.txt", true))

{

st.WriteLine(ar[i]);

}

}

}

}

}

Листинг программы B представлен ниже.

using System; using

System.Collections.Generic; using System.Linq;

using System.Text; using System.IO;

namespace _1000_7

{

class Program

{

static void Main(string[] args)

{

{

{

int n = 0; string text =

File.ReadAllText(@"C:\Users\Egor\Desktop\text.txt");

List<string> word = new List<string>();

Console.WriteLine("Введите слово для поиска:"); string search = Console.ReadLine();

string[] str = text.Split(' ');

for (int i = 0; i < str.Length; i++)

{

if (str[i].Contains(search))

{

n++;

}

}

Console.WriteLine(n);

Console.ReadKey();

}

}

}

}

}

6

2.2 Процесс выполнения программы и вывод данных

Процесс выполнения программы А и вывод программы представлен на рисунке 2.1.

Рисунок 2.1 – Вывод данных программой А

7

Процесс выполнения программы В и вывод программы представлен на рисунке 2.2.

Рисунок 2.2 – Процесс выполнения программы В