Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
lolopolosko
1354 / 312 / 5
Регистрация: 21.11.2009
Сообщений: 992
#1

Шаблоны!!!Просьба Бедного Студента!!! - C++

07.12.2009, 21:45. Просмотров 448. Ответов 3
Метки нет (Все метки)

Вот делал шаблоны...но при выполнении задачи выдает не правильный результат...не пойму в чем причина((((Плизз!!!!Помогите!!!


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include<iostream>
#define n 10
using namespace std;
 
template <class T>
const T search(T* s)
{
    T* tmp = s;
    for(int i=0;i<n;i++)
        if(s[i] < *tmp){*tmp = i;}
return *tmp;
}
void Enter(int s[])
{
    
    cout<<"Vvedit dodatni elementu masuvy";
    for(int i=0;i<n;i++)
    {
start:
        cin>>s[i];
    if(s[i]<0){cout<<"Warning!!!This Element is not >0"<<"\n"<<"Please Enter >0 Element:"<<endl;goto start;}
    }
}
 
int main()
{
    int s[n];
    Enter(s);
    cout<<"Porad nomer naimenshogo dodatnogo elementa ="<<search(s)<<endl;
    system("pause");
    return 0;
}
И еще !!!Если кто может то плиз помогите вот с этой задачей!!Тоже по шаблонам!!!

Написать шаблон класса для роботы с линейным списком: 1)Создание списка..2)Розмищение елемента в середину списка..3)Удаления елемента из конца списка..
Предусмотреть обработки двух произвольно выбранных исключений.

если что пишите по кусочку я сам потом склею!!!

Серйозно..Помогите кто может студенту....Завтра сдача задач....К тому же у меня 2 семинара...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2009, 21:45     Шаблоны!!!Просьба Бедного Студента!!!
Посмотрите здесь:

Структуры и файлы (посчитать средний балл каждого студента и вывести фамилию студента с наибольшим баллом) - C++
У меня есть структура и файл, в котором находятся фамилии и оценки учащихся, как мне посчитать средний балл каждого студента и вывести...

Просьба - C++
Помогите, пожалуйста, в создании приложения. Уровень знания языков программирования ближе к 0. Суть приложения такова: при запуске...

Глупая просьба... - C++
Нужна блок-схема приведенного ниже кода. Кто сделает - подгоню семизнак! #include &lt;iostream.h&gt; #include &lt;conio.h&gt; #define...

просьба объяснить - C++
#include &lt;cstdlib&gt; #include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; int main() { long a, b; char s, c; int i; ...

Просьба к администрации - C++
Я видел есть тема о основных сортировках.это хорошая очень нужная тема.многим я уверен она помогла. Но вот прошу сделать такую же тему...

Просьба откомпилировать файл - C++
Добрый день господа. Ребята хочу обратиться за помощью. Компельните файл, очень надо не особо разбираюсь. ...

Просьба оценить код - C++
Данный код реализует массивы, размеры которых можно легко изменять, а так же которые можно легко склеивать. Прошу оценить его и...

Просьба исправить ошибки - C++
Условие задачи: З клавіатури ввести довге беззнакове ціле число. Сформувати масив з усіх дільників цього числа, що є простими числами (1...

Убедительная просьба помочь... - C++
Ув. программисты, помогите нубу в Borland C, пожалуйста!.. Есть 2 задания, не могу никак написать... Уже облазил весь форум почти......

Просьба уточнить часть кода. - C++
Доброго дна. Хотел бы уточнить что выполняет строка: Ranch-&gt;Fly(); Код функции: for(i=0;i&lt;NumberHorses;i++) { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
07.12.2009, 21:49     Шаблоны!!!Просьба Бедного Студента!!! #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
#ifndef _LIST_H
#define _LIST_H
#include "ListNode.h"
 
template <class NODETYPE1>
class Spisok
{    
public:
    Spisok();
    ~Spisok();
    void WriteFromFront(NODETYPE1);
    NODETYPE1 ReadFromPosition(int);
    bool DeleteFromPosition(int);
    int IsEmpty() const; 
    void WriteFromEnd(const NODETYPE1 );
    void print() const;
 
private:
      ListNode<NODETYPE1> *Head;
     ListNode<NODETYPE1> *End;
     ListNode<NODETYPE1>* GetNewPtr(const NODETYPE1 &);
     
};
 
//Проверено
template<class NODETYPE1>
Spisok <NODETYPE1>::Spisok()
{
    Head=NULL;
    End=NULL;
 
}
//Проверено
template<class NODETYPE1>
ListNode<NODETYPE1>* Spisok<NODETYPE1>::GetNewPtr(const NODETYPE1 &data)
{   
    
    ListNode<NODETYPE1> *Ptr=new ListNode<NODETYPE1>;
    Ptr->conteyner=data;
    Ptr->Next=NULL;
    return Ptr;
}
 
//Проверено
template<class NODETYPE1>
void Spisok<NODETYPE1>::WriteFromFront( NODETYPE1  data)
{
    ListNode<NODETYPE1> *NewPtr=GetNewPtr(data);
    if(!IsEmpty())
    {
        Head=End=NewPtr;
    }
    else 
    {
        NewPtr->Next=Head;
        Head=NewPtr;
    }
}
template<class NODETYPE1>
//Проверено
Spisok<NODETYPE1>::~Spisok()
{
    ListNode<NODETYPE1> *curptr=Head,*tempPtr=NULL;
    if(IsEmpty())
    {
    
 
        while(curptr!=NULL)
        {
            tempPtr=curptr;
            curptr=curptr->Next;
            delete tempPtr;
        }
    }
}
 
template<class NODETYPE1>
//Проверено
void Spisok<NODETYPE1>::WriteFromEnd(const NODETYPE1  data)
{
    ListNode<NODETYPE1> *NewPtr=GetNewPtr(data);
    if(!IsEmpty())  Head=End=NewPtr;
    else 
    {
        End->Next=NewPtr;
        End=NewPtr;
    }
}
//Проверено
template<class NODETYPE1>
bool Spisok<NODETYPE1>::DeleteFromPosition(int pos)
{
    int temp=0,temp1=0;
    ListNode<NODETYPE1> *NewPtr=Head;
    ListNode<NODETYPE1> *TempPtr=Head;
    ListNode<NODETYPE1> *TempPtr1=Head;
    ListNode<NODETYPE1> *TempPtr2=Head;
    if(!IsEmpty()) return false;
    else
    {
        while(NewPtr->Next) {temp++;NewPtr=NewPtr->Next;}
        if(temp<pos || pos<0) {cout<<"Удаление невозможно"<<endl;return false;}
        while(temp1!=pos)  {TempPtr=TempPtr->Next;temp1++;}
        if(pos==0) {Head=TempPtr->Next;delete TempPtr;TempPtr=Head;return true;}
        if(TempPtr==End) 
        {
            while(TempPtr1->Next!=End) TempPtr1=TempPtr1->Next;
            delete End;
            End=TempPtr1;
            End->Next=NULL;
            return true;
        }
        while(TempPtr2->Next!=TempPtr) TempPtr2=TempPtr2->Next;
        TempPtr2->Next=TempPtr->Next;
        delete TempPtr;
        return true;
 
    }
}
//Проверено
template<class NODETYPE1>
NODETYPE1 Spisok<NODETYPE1>::ReadFromPosition(int pos)
{
    int temp=0,temp1=0;
    ListNode<NODETYPE1> *NewPtr=Head;
    ListNode<NODETYPE1> *TempPtr=Head;
    if(!IsEmpty()) return NULL;
    while(NewPtr) {temp++;NewPtr=NewPtr->Next;}
    if(pos>temp || pos<0) return NULL;
    if(pos==0) return Head->conteyner;
     pos--; 
    while(pos)
    {
        pos--; 
        TempPtr=TempPtr->Next;       
    }
    return TempPtr->conteyner;
}
//Проверено
template<class NODETYPE1>
int Spisok<NODETYPE1>::IsEmpty() const
{
    if(Head==NULL)
        return 0;
    else return 1;
}
 
//Проверено
template<class NODETYPE1>
void Spisok<NODETYPE1>::print() const
{
    ListNode<NODETYPE1> *TempPtr=Head;  
    while(TempPtr)
    {       
        cout<<TempPtr->conteyner
            <<endl;
        TempPtr=TempPtr->Next; 
    }
}
 
#endif _LIST_H
Так?
lolopolosko
1354 / 312 / 5
Регистрация: 21.11.2009
Сообщений: 992
07.12.2009, 23:47  [ТС]     Шаблоны!!!Просьба Бедного Студента!!! #3
Ща попробую!!

Добавлено через 2 минуты
не могу скомпилировать так ка Не удается открыть файл include: ListNode.h: No such file or directory

можно узнать адрес откуда это???

Добавлено через 15 минут
кто есть на форуме!!!помогите!!!!Хотябы посмотрите в чем ошибка програмы!!

Добавлено через 1 час 36 минут
Sekt, не помогло но спасибо!
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
08.12.2009, 12:40     Шаблоны!!!Просьба Бедного Студента!!! #4
listnode.h ето просто header со структурой
C++
1
2
3
4
5
6
7
8
9
#ifndef _LISTNODE_H
#define _LISTNODE_H
template <class NODETYPE1>
struct ListNode
{
  NODETYPE1 conteyner;
  ListNode *Next;
};
#endif _LISTNODE_H
Yandex
Объявления
08.12.2009, 12:40     Шаблоны!!!Просьба Бедного Студента!!!
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru