Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТП. Лабораторный практикум(вариант №5).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.04 Mб
Скачать
      1. Задания к лабораторной работе

№ п/п

  1. Формат ключа

Вид поиска:

1 - по совпадению

2 – по интервалу

3 – по выражению

Формат неключевых полей записи

Метод поиска

1

  1. int

1

char[], float

1

2

  1. int, float[]

2

char[]

2

3

  1. int[]

1

int, int[]

3

4

  1. char[]

1

float

4

5

  1. float[]

2

int, char[]

5

6

  1. char[]

3

int, char

6

7

  1. int, char, float, char[]

1

-

7

8

  1. int[], float, char

2

-

8

9

  1. float

3

int[], char[]

1

10

  1. float[]

1

int, char[]

2

11

  1. char[]

1

int

3

12

  1. char[]

3

int

4

13

  1. int

1

char

5

14

  1. int[]

2

int, float

6

15

  1. float[]

3

float

7

16

  1. char[], char[]

1

-

8

17

  1. char[]

2

float

1

18

  1. char[]

3

int[]

2

19

  1. int[]

2

int, char

3

20

  1. float

2, 3

char[][]

4

Содержание отчета

  1. Титульный лист.

  2. Задание кафедры, соответствующее варианту.

  3. Цель работы.

  4. Краткие теоретические сведения.

  5. Формализованный алгоритм.

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

  7. Контрольный пример.

  8. Выводы по работе.

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

Написать программу, реализующую один из алгоритмов программного поиска данных в информационном массиве, расположенном в оперативной памяти. Формат ключа char[], вид поиска – по интервалу, формат неключевых полей записи float, метод поиска – по двоичному дереву.

Блок-схема программы представлена на рисунке 10.

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

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

#include <locale.h>

#include <string.h>

int compareStrings(char* string1, char* string2) // Функция для сравнения двух строк, 1 если 1

строка > 2, 0 если равны, -1 в обратном случае

{

int minLength;

if (strlen(string1) >= strlen(string2)) minLength = strlen(string2);

else minLength = strlen(string1);

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

{

if (string1[i] > string2[i]) return 1;

if (string1[i] < string2[i]) return -1;

}

if (strlen(string1) == strlen(string2)) return 0;

if (strlen(string1) > strlen(string2)) return 1;

return -1;

}