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

Бесконечный цикл - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Можно ли данный код сделать короче? http://www.cyberforum.ru/cpp-beginners/thread302615.html
#include<iostream> #include<iomanip> int main() { int r,f,a,b,c,d,x,y; cout<<"Vvedite znachenie r:"; cin>>r; cout<<"Vvedite znachenie f:"; cin>>f; cout<<"Vvedite znachenie a:";
C++ Очередь команд Доброго врмени суток. Проблема собственно в следующем: как можно на с++ сделать очередь команд? Т.е. допустим в консоли вводится что-то вроде "8432.28 + 9.7e3" так вот, после прочтения строки было бы неплохо вызвать конструкторы разных классов, записав результат в массиве абстрактного базового класса, а потом вызвать операцию сложения... Я собственно не понимаю какой тап данных будет в... http://www.cyberforum.ru/cpp-beginners/thread302612.html
C++ Функция, возвращающая сумму двух входных параметров (если первый параметр четный) или их разность
разработайте заданную функцию( 1) и продемонстрируйте работу этой функции, сделав в главной программе несколько вызовов функции с разными данными 1.разработайте функцию типа float, что возвращает сумму двух входных параметров, если значения первого параметру парное, иначе возвращает разницу этих параметров.
функция нахождения точки пересечения отрезков (прямых) C++
Не могу понять в чем ошибка (не синтаксическая). Есть функция нахождения точки пересечения отрезков(прямых) //функция находит точку пересечения отрезков(прямых) по векторно-параметрической формуле point myvector::intersect(myvector v2, vect_line type) { point result; float ua, ub; float x1, x2, x3, x4, y1, y2, y3, y4, ch, zn; x1 = get_first_point().getx();
C++ Функция, которая возвращает сумму квадратов параметров http://www.cyberforum.ru/cpp-beginners/thread302595.html
разработайте заданную функцию( 1) с тремя входными параметрами типа float x, a, b, два из которых (a, b) имеют значение по умолчанию, и продемонстрируйте работу этой функции, сделав в главной программе несколько вызовов функции с разными данными 1.разработайте функцию, которая возвращает сумму квадратов параметров программирования.
C++ Функция, которая возвращает среднее арифметическое элементов параметра-массива разработайте заданную функцию( 1) и продемонстрируйте работу этой функции, сделав в главной программе несколько вызовов функции с разными данными. Функция должна выводить на экран адресы элементов масива. 1. разработайте функцию, в которую передается массив типа float, что возвращает среднее арифметическое элементов массива. подробнее

Показать сообщение отдельно
Тома1993
0 / 0 / 0
Регистрация: 17.03.2011
Сообщений: 13
23.05.2011, 21:16  [ТС]     Бесконечный цикл
Просто смоделировать этот процесс.
Я его моделирую до тех пор, пока не будет команды "exit". В принципе, я составила алгоритм:
Сначала сортирую всех зайцев с первого острова по массе, помещаю их в лодку, пока вместимость не будет превышена. Перемещаюсь к следующему острову.
Сравниваю массу самого лёгкого зайца в лодке с массой самого упитанного зайца на острове.
Если масса зайца в лодке меньше массы зайца на острове, то:
Освободить место для более упитанного зайца ( зайца с острова ), если возможно, то есть:
- Найти всех зайцев в лодке, меньших по массе, чем заяц с острова.
- проверить, будет ли их общая масса больше либо равна массе более упитанного зайца:
Если да, высадить на остров стольких, чтобы в лодку поместился более упитанный заяц.
Если нет, то перейти к следующему зайцу на острове.
реализация такая:
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
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
void Boat::firstSave(Island &is, int maxCapacity)
{
    capacity = 0; 
    checkCapacity = capacity;
    
    //save rabbits 
    if ( (is.Rabbits.size()) != 0 )
    {
            for (int i = 0; i <= (int)((is.Rabbits.size()-1)); i++ )
            {
                checkCapacity = capacity + is.Rabbits[i].get_mass();
                if (checkCapacity <= maxCapacity )
                {
                    boat.push_back(is.Rabbits[i]);
                    
                    vector<Rabbit>::iterator it = is.Rabbits.begin();
                    it += i;
                    is.Rabbits.erase(it);
                    
                    //is.Rabbits.erase( is.Rabbits.begin() + i );
                    capacity = checkCapacity;
                    i--;
                }
                else
                {
                    checkCapacity = capacity;
                }
            }
        cout << endl;
        if ( boat.size() != 0 )
        {
        for ( int z = 0; z <= (int)(boat.size()-1); z++ )
            {
                cout << "Rabbit with mass " << boat[z].get_mass() << " on the boat." << endl;
            }
        }
        else
        {
            cout << "There are no rabbits on boat" << endl;
            cout << endl;
        }
    cout << endl;
    cout << "On island: " << endl;
    cout << endl;
    if ( is.Rabbits.size() != 0 )
    {
        for ( int k = 0; k <= (int)(is.Rabbits.size()-1); k++ )
            {
                cout << "Rabbit with mass " << is.Rabbits[k].get_mass() << " on the island" << endl;
            }
        cout << endl;
    }
    else
    {
        cout << "After saving: " << endl;
        cout << endl;
        cout << "On boat: " << endl;
        cout << endl;
        if ( boat.size() != 0 )
        {
        for ( int z = 0; z <= (int)(boat.size()-1); z++ )
            {
                cout << "Rabbit with mass " << boat[z].get_mass() << " on the boat." << endl;
            }
        }
        else
        {
            cout << "There are no rabbits on boat" << endl;
            cout << endl;
        }
        cout << endl;
        cout << "There are no rabbits at this island" << endl;
        cout << endl;
    }
}
}
 
void Boat::take_away_rabbits (Island &is, int maxCapacity)
{
    //save rabbits 
    if ( (is.Rabbits.size()) != 0 )
    {
        for ( int j = (int)( ( (boat.size()-1) ; j >= 0; j-- ) )
        {
                for ( int l = 0; l <= (int)((is.Rabbits.size()-1)); l++ )
                {
                    if ( (boat[j].get_mass()) < (is.Rabbits[l].get_mass()) )
                    {
                        int counter = 0;
                        //Находим массу всех зайцев в лодке, меньших по массе, чем заяц с острова
                        int mas = 0;
                        for ( int z = 0; z < (int)(boat.size()); z++ )
                        {
                            if ( (boat[z].get_mass()) < (is.Rabbits[l].get_mass()) )
                            {
                                mas += boat[z].get_mass(); 
                                counter = z;
                            }
                        }
                        //Если масса зайцев в лодке, меньших по массе >= массе зайца с острова, помещаем его в лодку
                        int checkMass = 0;
                        if ( mas >= is.Rabbits[l].get_mass() )
                        {
                        //Высаживаем менее упитанных зайчиков из лодки на остров
                            for ( int g = 0; g <= counter; g++ )
                            {
                                while ( checkMass <= mas )
                                {
                                    while ( checkMass < is.Rabbits[l].get_mass() )
                                    {
                                        checkMass += boat[g].get_mass();
                                        capacity -= boat[g].get_mass();
                                        is.Rabbits.push_back(boat[g]);
                                        
                                        vector<Boat>::iterator it = boat.begin();
                                        it += g;
                                        is.Rabbits.erase(it);
                                        j--;
                                    }
                                }
                            }
                            //Удаляем l-го зайчика с острова и помещаем его в лодку
                            boat.push_back(is.Rabbits[l]);
                            vector<Rabbit>::iterator it = is.Rabbits.begin();
                            it += l;
                            is.Rabbits.erase(it);
                            l--;
                        }
 
                    }
                }
        }
    cout << endl;
    cout << "After saving: " << endl;
    cout << endl;
    cout << "On boat: " << endl;
    cout << endl;
    if ( boat.size() != 0 )
        {
        for ( int z = 0; z <= (int)(boat.size()-1); z++ )
            {
                cout << "Rabbit with mass " << boat[z].get_mass() << " on the boat." << endl;
            }
        }
        else
        {
            cout << "There are no rabbits on boat" << endl;
            cout << endl;
        }
    cout << endl;
    cout << "On island: " << endl;
    cout << endl;
    if ( is.Rabbits.size() != 0 )
    {
        for ( int k = 0; k <= (int)(is.Rabbits.size()-1); k++ )
            {
                cout << "Rabbit with mass " << is.Rabbits[k].get_mass() << " on the island" << endl;
            }
        cout << endl;
    }
    else
        {
            if ( boat.size() != 0 )
            {
                for ( int z = 0; z <= (int)(boat.size()-1); z++ )
                {
                    cout << "Rabbit with mass " << boat[z].get_mass() << " on the boat." << endl;
                }
            }
            else
            {
                cout << "There are no rabbits on boat" << endl;
                cout << endl;
            }
            cout << endl;
            cout << "On island: " << endl;
            cout << endl;
            cout <<  "There are no rabbits at this island" << endl;
            cout << endl;
        }
    }
    else
    {
        cout << "There are no rabbits at this island" << endl;
        cout << endl;
    }
 
}
 
Текущее время: 23:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru