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

Очередь С++ (очень надо) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывод одного из заданных чисел http://www.cyberforum.ru/cpp-beginners/thread413700.html
Каким образом можно сделать программу, так, чтобы выводилось одно из дробных значений? По возможности пожалуйста поясните на примере с пятью числами: 1.4; 2.8; 3.5; 3.25; 0.8.
C++ матрицы на с++, ваше предложение,консультация В общем, ребята, у меня есть код программы, и само задание, задание: Создать квадратную матрицу целых чисел размером 9х9. Если по условию задания матрицу следует заполнить случайными числами, рекомендуем выбирать эти числа из диапазона 0 - 99. Если по условию задания в матрицу следует записать ЛП - линейную последовательность чисел, имеется в виду последовательность: 1, 2, 3, ... на рисунке... http://www.cyberforum.ru/cpp-beginners/thread413698.html
Колпак C++
Определите максимальный размер шара, который можно спрятать под "колпаком" – круглым прямым конусом (основание является кругом, ось конуса перпендикулярна основанию). Во входном файле в первой строке содержится два числа, разделенных пробелом – длина образующей конуса L (1 ≤ L ≤ 100) и диаметр основания D (1 ≤ D < 2·L). В выходной файл вывести одно число с 4 десятичными знаками – радиус шара...
C++ Класс матрица (не работает конструктор копирования)
так вот,что-то глючит конструктор копирования, хотя ошибок компиляции не дает(( #include <fstream> #include <iostream> #include <cstdlib> using namespace std; class Matrix { int i,j;
C++ Компоненты текстового файла содержат целые числа. Счи-таем, что если компонента содержит два числа - это коорди-наты точки, три - координаты цент http://www.cyberforum.ru/cpp-beginners/thread413677.html
Компоненты текстового файла содержат целые числа. Счи-таем, что если компонента содержит два числа - это коорди-наты точки, три - координаты центра и радиус окружности, 4- координаты противоположных вершин прямоугольника. Вы-числить максимальную площадь фигур.
C++ 9. Создать два бинарных файла, содержащих числовую ин-формацию. В результате преобразований в первом файле должны остаться только четные, а во втором Создать два бинарных файла, содержащих числовую ин-формацию. В результате преобразований в первом файле должны остаться только четные, а во втором только нечет-ные числа. Дополнительных массивов не использовать. подробнее

Показать сообщение отдельно
Kronozzz
0 / 0 / 0
Регистрация: 25.10.2011
Сообщений: 17

Очередь С++ (очень надо) - C++

21.12.2011, 17:24. Просмотров 352. Ответов 0
Метки (Все метки)

Смоделировать очередь, в которой реализован такой механизм изъятия элемента из очереди: начало очереди всегда находится в первом элементе массива; при изъятии одного элемента из очереди, все остальные элементы перемещаются на одну позицию ближе к началу массива. После обработки всей заданной входной последовательности найти среднее арифметическое всех элементов очереди.

есть прога очень похожая:

Смоделировать очередь, в которой к описанию очереди добавлена ​​функция wipe_out, которая изымает все элементы из очереди. Каждый раз, когда во входной последовательности встречается число 0, то все элементы должны быть удалены из очереди. После обработки всей заданной входной последовательности проверить, есть ли в очереди одинаковые числа.

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
const int M = 100;
#pragma once
#include <cassert>
#include "q.h"
#include <stdio.h>
#include <tchar.h>
#include <iostream>
 
 
// q.h
template <class Item>
class queue
{
private:
    Item INFO[M];
    int count;
public:
    queue( );
    void pop( );
    void push(const Item& entry);
    bool empty( ) const { return (count == 0); }
    Item front( ) const;
    int size( ) const { return count; }
    void show();
    void muve();
    bool full(){return (INFO[M-1] == M-1);};
    void wipe_out();
    bool same();
    
};
template <class Item>
queue<Item>::queue( )
{
      count = 0;
      INFO[0] = 1;
      INFO[M-1] = 0;
}
template <class Item>
Item queue<Item>::front( ) const
{
    assert(!empty( ));
    return INFO[1];
}
template <class Item>
void queue<Item>::pop( )
{
        muve();
        count--;
}
template <class Item>
void queue<Item>::push(const Item& entry)
{
    assert(!(count > M - 1));
    ++count;
    INFO[++INFO[M-1]] = entry;
}
template <class Item>
void queue<Item>::show()
{
    std::cout << "QUENE:    ";
    for(int i = INFO[0]; i < INFO[M-1]+1; i++){ 
        std::cout << INFO[i] << "   " ;
    }
    std::cout << std::endl;
}
template <class Item>
void queue<Item>::muve()
{
    for(int i = INFO[0]; i < INFO[M-1]; i++){
        INFO[i] = INFO[i+1];
    }
    --INFO[M-1];
}
template <class Item>
void queue<Item>::wipe_out()
{
    for (int i=0; i<count; i++)
    {
        muve();
    }
    count = 0;
}
template <class Item>
bool queue<Item>::same()
{
    bool b = false;
    for (int i=0; i<count-1; i++)
        if (INFO[i]==INFO[i+1]) { b = true; } 
    return b;
}
 
 
//main.cpp
#include "stdafx.h"
using namespace std;
 
int main()
{
    queue<int> q;
    int v[M], m;
    int k = 0;
 
    cout << "ENTER VALUE OF QUEUE TO CONTINUE OR TEXT TO EXIT..." << std::endl;
    while(cin >> v[k++]) {  m = k; }
 
    q.show();
    for(k = 0; k < m; k++)
    {
        if (v[k]==0) { q.wipe_out(); q.show(); }
        if (v[k]>0) { q.push(v[k]); q.show(); }
        if (v[k]<0) { q.pop(); q.show(); }
    }
    cout << "\nSIZE:    " << q.size() << endl;
    cout << "EMPTY: " << boolalpha << q.empty() << endl;
    cout << "FULL:  " << boolalpha << q.full()  << endl;
    cout << "FRONT: " << q.front() << endl;
    cout << "THE SAME ELEMENTS IN QUEUE:    " << q.same() << endl;
    cin.get();
    
    return 0;
}
пожалуйтса очень надо!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 21:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru