Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/34: Рейтинг темы: голосов - 34, средняя оценка - 4.97
0 / 0 / 0
Регистрация: 13.07.2010
Сообщений: 46
1

Подсчитать количество различных элементов в очереди и вывести их на экран

21.03.2012, 00:10. Показов 6876. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
1. Подсчитать число различных элементов в очереди и вывести их на экран
2.
3.
На контрольной были эти задачи. Нужно их решить. Помогите пжл

 Комментарий модератора 
sam5213, Правила
2.4. На каждый вопрос создавайте по одной теме - это помогает избежать путаницы в ответах и облегчает поиск.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.03.2012, 00:10
Ответы с готовыми решениями:

Подсчитать количество различных символов, которые не являются буквами или цифрами, и вывести их на экран
Задание: Дана строка. Подсчитать количество различных символов, которые не являются буквами или...

Подсчитать и вывести на экран количество отрицательных, положительных и нулевых элементов массива
1)Подсчитать и вывести на экран количество отрицательных, положительных и нулевых элементов...

Подсчитать и вывести на экран количество элементов массива: в которых дробная часть меньше 0,35
Объявить одномерный массив из 17 элементов типа double. Заполнить его случайными дробными (!)...

Сформировать массивы А[15] и B[10]. Вывести их на экран. Подсчитать количество ненулевых элементов и максимальные значения в обоих массивах
Сформировать массивы А и B. Вывести их на экран. Подсчитать количество ненулевых элементов и...

1
80 / 79 / 35
Регистрация: 02.12.2011
Сообщений: 966
Записей в блоге: 3
23.03.2012, 03:32 2
Лучший ответ Сообщение было отмечено sam5213 как решение

Решение

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
65
66
67
68
69
70
71
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
 
class Queue {
    int *a;
    int length;
public:
    Queue();
    ~Queue();
    void push(int number);
    int pop();
    void show();
};
 
//конструктор
Queue :: Queue() {
    length = 0;
    a = new int[length];
}
 
//деструктор
Queue :: ~Queue() {
    delete[] a;
}
 
//добавляем элемент в очередь
void Queue :: push(int number) {
    int *newQ = new int[length + 1];
    newQ[0] = number;
    for (int i = 1; i <= length; i++) {
            newQ[i] = a[i - 1];
    }
    delete[] a;
    a = newQ;
    length++;
}
 
//берем последний элемент из очереди
int Queue :: pop() {
    int lastElem = a[length - 1];
    int *newQ = new int[length - 1];
    for (int  i = 0; i < length - 1; i++) {
        newQ[i] = a[i];
    }
    delete[] a;
    a = newQ;
    length--;
    return lastElem;
}
 
//вывести очередь на экран
void Queue :: show() {
    cout << "Our queue:" << endl;
    for (int i = 0; i < length; i++) {
        cout << a[i] << " " ;
    }
    cout << endl;
    cout << "length = " << length << endl;
}
 
int main()
{
    Queue q;
    for (int i = 0; i < 5; i++) {
        q.push(i);
    }
    q.show();
    return 0;
}
Добавлено через 13 минут
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
#include <iostream>
 
using std::cout;
using std::endl;
using std::cin;
 
class Stack {
    int *a;
    int length;
public:
    Stack();
    ~Stack();
    void push(int number);
    int pop();
    void show();
};
 
//Конструктор
Stack :: Stack() {
    length = 0 ;
    a = new int[0];
}
 
//Деструктор
Stack :: ~Stack() {
    delete[] a;
}
 
//Добавить первый элемент
void Stack :: push(int number) {
    int *newS = new int[length + 1];
    newS[0] = number;
    for (int i = 1; i <= length; i++) {
            newS[i] = a[i - 1];
    }
    delete[] a;
    a = newS;
    length++;
}
 
//Вытащить первый элемент
int Stack :: pop() {
    int  firstElement = a[0];
    int *newStack = new int[--length];
    for (int i = 1; i < length + 1; i++) {
        newStack[i - 1] = a[i];
    }
    delete[] a;
    a = newStack;
    return firstElement;
}
 
//Вывод стека на экран
void Stack :: show() {
    int sumCr = 0;
    cout << "Our stack:" << endl;
    for (int i = 0; i < length; i++) {
        sumCr += a[i];
        cout << a[i] << " ";
    }
    cout << endl;
    cout << "Cr arifm " << sumCr << endl;
}
 
int main() {
    Stack s;
    for (int i = 0; i < 5; i++) {
        s.push(i);
    }
    s.show();
    return 0;
}
Добавлено через 1 час 47 минут
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
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
#include <iostream>
#include <cstring>
 
using std::cout;
using std::endl;
using std::cin;
using std::getline;
 
class Stack {
public:
    char *a;
    int length;
    Stack();
    ~Stack();
    void push(char s);
    int pop();
    void show();
};
 
//Конструктор
Stack :: Stack() {
    length = 0 ;
    a = new char[0];
}
 
//Деструктор
Stack :: ~Stack() {
    delete[] a;
}
 
//Добавить первый элемент
void Stack :: push(char s) {
    char *newS = new char[length + 1];
    newS[0] = s;
    for (int i = 1; i <= length; i++) {
            newS[i] = a[i - 1];
    }
    delete[] a;
    a = newS;
    length++;
}
 
//Вытащить первый элемент
int Stack :: pop() {
    int  firstElement = a[0];
    char *newStack = new char[--length];
    for (int i = 1; i < length + 1; i++) {
        newStack[i - 1] = a[i];
    }
    delete[] a;
    a = newStack;
    return firstElement;
}
 
//Вывод стека на экран
void Stack :: show() {
    cout << "stack:" << endl;
    for (int i = 0; i < length; i++) {
       cout << a[i] << " ";
    }
    cout << endl;
}
 
//функция проверки на палиндром
bool palindromString(Stack *ob, Stack *ob2, char *str) {
    int strLen = static_cast<int>(strlen(str));
    int k = 0;
    if (strLen % 2) {  //если длина строки нечетное число то для одинакового количества символов в стеках увеличиваем k
       k += 1;
    }
    for (int i = 0; i < strLen/2 + k; i++) {
        ob->push(str[i]);    }
    for (int j = strLen/2; j < strLen; j++) {
        ob2->push(str[j]);
    }
    for(int i = 0, j = ob2->length - 1; i < ob->length, j >= 0 ; i++, j--) {
        if (ob->a[i] != ob2->a[j]) return false;
    }
    return true;
}
 
int main() {
    Stack s, s2;
    char a[20];
    cout <<"Input string until 20 elements" << endl;
    cin.getline(a, 20);
    cout << endl << "Your string " << a ;
    if (palindromString(&s, &s2, a)) cout << " is palindrom" << endl;
    else cout << " is not palindrom" << endl;
    return 0;
}
0
23.03.2012, 03:32
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.03.2012, 03:32
Помогаю со студенческими работами здесь

Подсчитать количество различных цифр и вывести их
В записи данного натурального числа подсчитать количество различных цифр и вывести их. Есть...

Подсчитать количество различных элементов
Подсчитать количество различных элементов в каждой из строк двумерного массива. Определить функцию...

Дана строка. Подсчитать, сколько различных символов встречается в ней. Вывести их на экран.
Помогите решить задачи: 1. Найти все простые натуральные числа, не превосходящие n, двоичная...

Подсчитать количество различных по значению элементов в массиве
Дан одномерный массив x, состоящий из 20 целых чисел. Составить программу,которая подчитывает...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
[golang] 80. Remove Duplicates from Sorted Array II
alhaos 28.01.2025
В предоставленном упорядоченном по возрастанию целочисленном слайсе, оставить уникальные элементы полюс один возможный дубликат. Вернуть количество таких элементов. / / . . .
Что такое внедрение зависимостей и для чего оно применяется
bytestream 27.01.2025
В современной разработке программного обеспечения одной из ключевых проблем является управление зависимостями между различными компонентами системы. Внедрение зависимостей (Dependency Injection, DI). . .
Как установить cellpadding и cellspacing в CSS
bytestream 27.01.2025
При создании веб-страниц с табличными данными разработчики часто сталкиваются с необходимостью правильного оформления внутренних и внешних отступов в таблицах. В традиционной разметке HTML для этих. . .
Чем отличаются public, protected, package-private и private в Java
bytestream 27.01.2025
В языке программирования Java механизм модификаторов доступа играет ключевую роль в реализации одного из фундаментальных принципов объектно-ориентированного программирования - инкапсуляции. . . .
Зачем нужно explicit в C++. Преобразование типов
bytestream 27.01.2025
В мире программирования на C++ управление преобразованием типов данных играет crucial роль в создании надежного и безопасного кода. Язык C++ предоставляет множество механизмов для контроля над. . .
Как создать удалённую (remote) ветку в Git
bytestream 27.01.2025
Система контроля версий Git стала неотъемлемой частью современной разработки программного обеспечения, предоставляя разработчикам мощные инструменты для управления кодовой базой. Одним из ключевых. . .
Как создать утечку памяти в Java
bytestream 27.01.2025
Утечка памяти в Java представляет собой ситуацию, когда программа неэффективно использует доступную память, удерживая ссылки на объекты, которые больше не нужны для работы приложения. Несмотря на. . .
КуМир: как решать задачи на числа
bytestream 27.01.2025
КуМир (Комплект Учебных МИРов) представляет собой уникальную образовательную среду программирования, разработанную специально для обучения основам алгоритмизации и программирования. Эта система. . .
Исполнитель Черепаха в КуМир: как решать задачи
bytestream 27.01.2025
Исполнитель Черепаха в системе КуМир представляет собой мощный образовательный инструмент, который помогает освоить основы программирования через визуальное представление результатов выполнения. . .
КуМир: как решать задачи на массивы
bytestream 27.01.2025
Массивы представляют собой важнейшую структуру данных в программировании, и система КуМир предоставляет удобные инструменты для работы с ними. В контексте КуМир массив можно представить как. . .
[golang] 26. Remove Duplicates from Sorted Array
alhaos 27.01.2025
Необходимо удалить дубликаты из предоставленного целочисленного отсортированного по взрастанию слайса, нужно изменить значения в слайсе и вернуть количество элементов. / / . . .
КуМир, исполнитель Робот. Решение задач
bytestream 27.01.2025
КуМир (Комплект Учебных МИРов) представляет собой образовательную среду для обучения программированию, которая была создана в Отделении информатики Российской Академии наук. Эта система разработана. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru