Краткое описание программы, Описание функций - Программирование на языках высокого уровня

Программа считывает исходные данные из файла Input. txt, располагающегося в корневой папке программы. Исходные данные вида:

<Символ, кол-во повторений которого надо подсчитать в строках и сравнить где больше>

<Первая строка>

<Вторая строка>

Программа проверяет наличие файла Input. txt и наличие исходных данных в нем. Если на данном этапе обнаружены ошибки, программа выводит соответствующее сообщение на экран. Иначе программа выполняет поиск слов, которые встречаются и в первой и во второй строке, и единожды выводит их на экран. Далее программа подсчитывает количество символов в строках, которые совпадают с символом из исходных данных, сравнив значения, программа выводит сообщение о том, в какой строке заданный символ встречается чаще.

Описание функций

§ Int StrLenth (char* str) - функция вычисления длины строки до нулевого байта.

Псевдокод:

Цикл по i от 0 до тех пор пока str[i] не равняется нулевому байту

Инкремент счетчика lenth;

Возвращение значения lenth;

§ Void StrSymbolMatch (char* Str1, char* str2, char Symbol) - функция вычисления количества совпадений заданного символа в строке и вывода сообщения на экран.

Псевдокод:

Вычисление длины строки str1 функцией StrLenth;

Цикл по i от 0 до длины строки str1;

Если str1 [i] равен заданному символу symbol

Инкремент счетчика q1;

Вычисление длины строки str2 функцией StrLenth;

Цикл по i от 0 до длины строки str2;

Если str2 [i] равен заданному символу symbol

Инкремент счетчика q2;

Если q1 > q2

Вывод сообщения: В первой строке заданный символ встречается чаще;

Если q1 < q2

Вывод сообщения: Во второй строке заданный символ встречается чаще;

Если q1 = q2 и q1!= 0

Вывод сообщения: Заданный символ одинаково часто встречается в строках;

Если q1 = q2 и q1 = 0

Вывод сообщения: Заданный символ в строках отсутствует;

§ Void FindMatchWordsInTwoStrings (char* Str1, char* str2) - функция поиска слов, которые содержатся и в первой и во второй строках, и вывода на экран.

Псевдокод:

Вычисление длины lenstr1 строки str1 с помощью функции StrLenth;

Пока str1 [i] равен пробелу

I++;

Пока i < lenstr1

{

Индекс начала слова sword1 = i;

Пока str1 [i] не равно пробелу и нулевому байту

I++;

Индекс конца слова eword1 = i - 1;

Цикл по m от sword1 до тех пор пока m не равна eword1 + 1

{

Массив слов WordsMas1 [qwords1] [n]=str1 [m];

N++;

}

Счетчик слов qwords1++;

Пока str1 [i] равен пробелу

I++;

}

I = 0;

Вычисление длины lenstr2 строки str2 с помощью функции StrLenth;

Пока str2 [i] равен пробелу

I++;

Пока i < lenstr2

{

Индекс начала слова sword2 = i;

Пока str2 [i] не равно пробелу и нулевому байту

I++;

Индекс конца слова eword2 = i - 1;

Цикл по m от sword2 до тех пор пока m не равна eword2 + 1

{

Массив слов WordsMas2 [qwords2] [n]=str2 [m];

N++;

}

Счетчик слов qwords2++;

Пока str2 [i] равен пробелу

I++;

}

Цикл по I от 0 до qwords1

Цикл по k от (i + 1) до qwords1

Если строки WordsMas1 [i] и WordsMas1 [k] равны

Затереть строку WordsMas[k];

Цикл по I от 0 до qwords1

Цикл по k от 0 до qwords2

Если строки WordsMas1 [i] и WordsMas2 [k] равны

{

Вывод WordsMas1 [i];

Аварийный выход из цикла;

}

Похожие статьи




Краткое описание программы, Описание функций - Программирование на языках высокого уровня

Предыдущая | Следующая