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

Журнал лабороторних робіт з дисципліни: Алгоритми і структури данних

Виконав студент гр.РПЗ-314 Перевірив викладач:

Богословський Віктор Манєва Р. І.

2016

Лабораторна робота №1

Завдання: 8. Задано рядок S, що складається з латинських букв і пробілів. Визначити кількість слів у даному рядку.

Код програми:

#include <iostream>

#include <conio.h>

void main() {

char str[255];

std::cout << "Enter a string: ";

std::cin.getline(str, 255);

int words = 0;

for (int i = 0; str[i] != '\0'; i++) {

if (str[i] == ' ') {

words++;

};

};

std::cout << "The number of words = " << words + 1 << std::endl;

_getch()

}

Вивід:

Питання до захисту :

Як задати кількість символів в рядковій змінній?

Відповідь: За допомогою одновимірного масиву (вектору) з типом елементів char.

Як можна звернутися в програмі до першого символу рядкової змінної s?

Відповідь: «Ім’я рядкової змінної»[0];

Поясніть призначення і формат оператора Length.

Відповідь: оператор length повертає кількість символів рядка

Як додати кілька символів в строкову змінну?

Відповідь: За допомогою функцій конкатенації:

strcpy( char dest, const char src) – копіює строку src у кінець строки dest, зберігаючи src.

strcat( char dest, const char src) - приєднує строку src у кінець строки dest та повертає змінену dest.

Роботу виконав Роботу перевірив

Богословський В. Манєва Р. І.

Задніпровський В.

Лабораторна робота №2 «Робота з чергою та стеком»

Завдання: : Вміст заданого текстового файлу F, розділеного на рядки, переписати в текстовий файл G, переносячи при цьому в кінець кожного рядка всі вхідні в неї цифри (зі збереженням вихідного взаємного порядку як серед цифр, так і серед решти букв рядка).

Код программи:

#include <iostream>

#include <fstream>

#include <string>

#include <locale>

#include <cstdlib>

using namespace std;

typedef unsigned int unint;

void main(void)

{

unint i = 0, menu = 0;

cout << "***************************MENU*****************************\n----------------Created by Zadneprovskyi Vlad---------------\nATTENTION!!! This programm works with strings to 256 symbols\n------------------------------------------------------------\nSelect operation:\n1.Download the string from .txt file\n2.Write the string in the program\n3.Exit\n------------------------------------------------------------\nEnter menu item: ";

cin >> menu;

switch (menu) {

case 1:

{

system("cls");

ifstream fin("sourceOfText.txt");

char buff1[256] = { " " };

cout << "BUFF: ";

while (!fin.eof())

{

fin >> buff1;

cout << buff1;

}

fin.close();

cout << endl;

for (i = 0; i < 256; i++)

{

if (buff1[i] > 47 && buff1[i] < 58)

{

cout << buff1[i];

}

}

for (i = 0; i < 256; i++)

{

if (buff1[i] <= 47 || buff1[i] >= 58)

{

cout << buff1[i];

}

}

system("pause");

break;

}

case 2:

{

unint count = 0;

system("cls");

cout << "Enter number of symbols your string: ";

cin >> count;

char buff2[256] = { " " };

cout << "\nEnter your string: ";

for (i = 0; i < count; i++)

{

cin >> buff2[i];

}

cout << endl;

for (i = 0; i < 256; i++)

{

if (buff2[i] > 47 && buff2[i] < 58)

{

cout << buff2[i];

}

}

for (i = 0; i < 256; i++)

{

if (buff2[i] <= 47 || buff2[i] >= 58)

{

cout << buff2[i];

}

}

system("pause");

break;

}

case 3:

{

system("pause");

break;

}

default:

{

cout << "Error! Wrong number!";

system("pause");

break;

}

}

}

Вивід:

С текстового файлу:

В программі:

Питання до захисту

У чому переваги і недоліки організації структур у вигляді стека?

Відповідь:Плюс стека:

  • Простота стека.

Мінуси стека:

  • Неможливість звернення до потрібної структури безпосередньо, Лише за LIFO.

  • Відсутність навігації.

У чому переваги і недоліки організації структур у вигляді черги?

Відповідь:Плюси черги:

  • Дуже легко знайти той чи інший елемент.

Мінуси черги:

  • Чим більше елеменів в черзі тим більше пам’яті потребує .

Для моделювання яких реальних завдань зручно використовувати стек? А для яких чергу?

Відповідь: Черга використовуеться, коли треба щоб зберегти послідовність елементів у массиві.

З якою метою в програмах виконується перевірка на порожнечу стека і черги?

Відповідь:перевірка на порожнечу стека і черги використовується для перевірки массиву, порожій массив чи ні.

Роботу виконав Роботу перевірив

Богословський В. Манєва Р. І.

Задніпровський В.

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