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

7 отчёт Смолева В.А

..docx
Скачиваний:
3
Добавлен:
03.08.2021
Размер:
188.08 Кб
Скачать

Поволжский Государственный Университет Телекоммуникаций и Информатики

Кафедра ПОУТС

Лабораторная работа №7

Строки

Выполнила :

Студентка гр. ИСТ 74У

Смолева В.А.

Проверили:

Д.т.н., проф. Лиманова Н.И.

Асс. Горелов Г.А.

Самара 2017

Задание: Научиться работать со строками

Вариант 14

Написать программу, вычисляющую процент схожести двух строк (учитывать только набор символов, но не их порядок).

Листинг программы

#include <iostream>

#include <windows.h> //для функции Sleep()

#include <string.h>

double process(char *S1, char *S2) //задание функции

{

int i, x=0;

double K, N;

if(strlen(S1)>=strlen(S2)) //сравнение длин строк

{

for(i=0; i != strlen(S2); i++){

if(S1[i] == S2[i])

x++; //подсчёт одинаковых

Sleep(1);//приостанавливает работу потока, в котором она была вызвана, на указанное в аргументе время или до поступления сигнала по которому вызывается функция обработки сигналов или программа завершает свою работу

}

N = strlen(S1);

}

else

{

for(i=0; i != strlen(S1); i++){

if(S1[i] == S2[i])

x++;//подсчёт одинаковых

Sleep(1);//приостанавливает работу потока, в котором она была вызвана, на указанное в аргументе время или до поступления сигнала по которому вызывается функция обработки сигналов или программа завершает свою работу

}

N = strlen(S2);

}

return ((x/N)*100);//подсчёт совпадений от нормы и умноженное на 100

}

using namespace std;

int main(void)

{

char S1[20], S2[20]; //задание строк

setlocale(LC_ALL, ""); //задание кирилицы

cout<<"Введите первую строку: ";

gets(S1);

cout<<"Введите вторую строку: ";

gets(S2);

printf("%.0f - процент совпадения строк S1 и S2 \n", process(S1, S2)); //вызов функции

system("pause");

return 0;}

Пример выполнения программы

Соседние файлы в предмете Программирование