--Решение задач, Программирование
Написать функцию (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
- Есть
На нашем сайте есть работы, которые включают в себя несколько задач. Если Вам необходима только одна или несколько задач из всей работы, то вам нет необходимости покупать работу целиком. Мы можем продать задачи по отдельности. Для этого обратитесь к нам удобным для Вас способом.
Также если вдруг какая-то работа будет не соответствовать описанию или вы найдете ошибку, то мы всегда готовы исправить проблему в обговорённые с Вами сроки.