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

Есть готовая рабочая прога. Нужно дописать пару строчек... - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача в С++. Функции и массивы. http://www.cyberforum.ru/cpp-beginners/thread415077.html
Найти минимальный из елементов двумерного массива, который не повторяется.
C++ Задача в С++. ТЕМА : ОПЕРАЦИИ СО СТРОКАМИ ТЕМА : ОПЕРАЦИИ СО СТРОКАМИ Напишите программу, которая вставляет символ тире после каждого перехода с буквы на цифру и наоборот с цифры на букву в введенной с клавиатуры строке. http://www.cyberforum.ru/cpp-beginners/thread415075.html
[C++] Задан массив точек... C++
Тема: Массивы Задан массив точек. Определить из них точку, что круг, с центром в ней, покроет остальные при минимальном радиусе. Докажите это (т.е. выбирается точка и считается радиус покрывающего...
Перевод из 2 в 10 сс C++
Всем привет. Вот у меня вопрос такой, есть программа, которая переводит из 2 сс в 10 сс, учитывая дробную часть... Вот, а как сделать проверку на правильность ввода двоичного числа? Например: ввожу...
C++ Двумерный массив http://www.cyberforum.ru/cpp-beginners/thread415057.html
В двумерном массиве, элементы которого целые числа, вставить новую строку после всех строк, в которых нет ни одного четного элемента! помогите!
C++ поиск символов Здравствуйте! Подскажите как произвести поиск символов в введенной строке? подробнее

Показать сообщение отдельно
Колямбий
7 / 7 / 0
Регистрация: 18.12.2011
Сообщений: 137

Есть готовая рабочая прога. Нужно дописать пару строчек... - C++

22.12.2011, 23:15. Просмотров 439. Ответов 1
Метки (Все метки)

Вот программа (полностью рабочая):

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
#include <iostream>
#include <conio.h>
using namespace std;
 
#define N 10
 
template <class TYPE>
class stack {
private:
    enum { 
        EMPTY=-1
    };
    TYPE *s;
    int len, top;
public:
    stack() {             //Создает стек из 1000 элементов
        len=1000; 
        s=new TYPE[1000]; 
        top=EMPTY; 
    }               
    stack(int size) {     //Создает стек из заданного числа элементов
        len=size; 
        s=new TYPE[size]; 
        top=EMPTY; 
    }       
    ~stack() {            //Удаляет стек
        delete s; 
    }                                           
    void reset() {         //Очищает стек
        top=EMPTY; 
    }                                       
    void push(TYPE c) {      //Добавить элемент в стек
        s[++top]=c;  
    }                               
    TYPE pop() {           //Забрать элемент из стека
        return s[top--];  
    }                               
    TYPE top_of() {         //Возвращает верхний элемент стека
        return s[top]; 
    }                               
    bool empty() {        //Проверяет, пустой ли стек
        return bool(top==EMPTY); 
    }                       
    bool full() {         //Проверяет, полный ли стек
        return bool(top==len-1); 
    }                       
};
 
 
void main(){
    
    stack<int> s(N);
    
    int i=0;
    while (!s.full())
        s.push(++i);
 
    cout<<"Stack:\n";
 
    while(!s.empty())
        cout<<s.pop()<<"\n";
 
    getch();
}
Есть два вопроса:
1. Можно ли используя уже созданные конструкторы в классе, вывести по аналогии с int символьные char ? или необхлдимо создавать новые конструкторы?
2. Собственно, помогите, пожалуйста, добавить в прогу, вывод символьных элементов.

Добавлено через 26 минут
вот сам подумал, дописал:

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
#include <iostream>
#include <conio.h>
using namespace std;
 
#define N 10
 
template <class TYPE>
class stack {
private:
    enum { 
        EMPTY=-1
    };
    TYPE *s;
    int len, top;
public:
    stack() {             //Создает стек из 1000 элементов
        len=1000; 
        s=new TYPE[1000]; 
        top=EMPTY; 
    }               
    stack(int size) {     //Создает стек из заданного числа элементов
        len=size; 
        s=new TYPE[size]; 
        top=EMPTY; 
    }       
    ~stack() {            //Удаляет стек
        delete s; 
    }                                           
    void reset() {         //Очищает стек
        top=EMPTY; 
    }                                       
    void push(TYPE c) {      //Добавить элемент в стек
        s[++top]=c;  
    }                               
    TYPE pop() {           //Забрать элемент из стека
        return s[top--];  
    }                               
    TYPE top_of() {         //Возвращает верхний элемент стека
        return s[top]; 
    }                               
    bool empty() {        //Проверяет, пустой ли стек
        return bool(top==EMPTY); 
    }                       
    bool full() {         //Проверяет, полный ли стек
        return bool(top==len-1); 
    }       
    
};
 
 
void main(){
    
    stack<int> s(N);
    
    int i=0;
    while (!s.full())
        s.push(++i);
 
    cout<<"Stack int:\n";
    
    while(!s.empty())
        cout<<s.pop()<<" ";
 
    cout<<endl<<"\n";
    cout<<"Stack char:\n";
    
    stack <char> s_ch(5); // stack из 4 элементов char
    s_ch.push('o');
    s_ch.push('l');
    s_ch.push('l');
    s_ch.push('e');
    s_ch.push('H');
 
    while(!s_ch.empty())
        cout<<s_ch.pop()<<" ";
    
    getch();
}
Работает как по заданию, но скажите это можно организовать как то через цикл с массивом?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru