ГлавнаяПрограммирование → --Решение задач, Программирование

--Решение задач, Программирование

Задание

Написать функцию (int kol(void)), возвращающую количество одинаковых элементов в динамическом списке. Если одинаковых элементов нет, то об этом надо вывести сообщение. Описание переменных:

class SPISO

{ struct Yzel

{ Yzel* next;

int inf;

};

Yzel* na;

public:

SPISOK ; { na= NULL; return; }

int kol (void); { … }

};

-----------------------------------------------------------------------------------------
Пример выполнения задания 2
Создать класс shisok, содержащий 2 поля – Inf типа string и next - указатель на следующий элемент списка. И методы – конструктор и печать всех элементов списка.

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

Решение:

#include "stdafx.h"

#include <windows.h>

#include <iostream>

using namespace std;



int _tmain(int argc, _TCHAR* argv[])

{

class spi

{

struct NOT

{

int inf;

NOT* next;

NOTяйцо : next(NULL), inf(0) {};

};

NOT* NA;

public:

void vkl (void) //включение нового элемента в начало списка

{

NOT* pvsp = new NOTяйцо;//pvsp- вспомогательный указатель

pvsp->inf=rand()%11; //заполнение поля inf нового элемента

pvsp ->next = NA;//подключение нового элемента в

NA = pvsp; // начало списка



}

spiяйцо:NA(NULL) {} //конструктор.Обнуляет указатель на начало списка



void PR(void) //печать списка

{

NOT* pvsp = NA; //вспомогательный указатель, он

//будет меняться при переходе к след. элементу списка

while (pvsp !=NULL) //цикл печати инф. полей всех

//элементов списка

{

cout<< pvsp->inf<<“ ”;

pvsp= pvsp->next;

};

cout<<" end \n"; //признак окончания списка

}

}START; //создан объект START

Результат прогона

START.vkl ();

START.vkl ();

START.vkl ();

START.vkl ();

START.PR (); 1 4 8 2 end //список из 4-х элементов

START.vkl ();

START.PR (); 3 1 4 8 2 end // список из 5-ти элементов

int ee; // (вначале новый элемент)

cin>>ee;

Детали товара
  • 200 руб.
  • Лабораторная работа
  • C++
  • Нет
  • Visual Studio
  • Есть
Обратите внимание

На нашем сайте есть работы, которые включают в себя несколько задач. Если Вам необходима только одна или несколько задач из всей работы, то вам нет необходимости покупать работу целиком. Мы можем продать задачи по отдельности. Для этого обратитесь к нам удобным для Вас способом.

Также если вдруг какая-то работа будет не соответствовать описанию или вы найдете ошибку, то мы всегда готовы исправить проблему в обговорённые с Вами сроки.