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

Разделить все элементы массива на его первый элемент - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Visyal Studio C++ создание проэкта http://www.cyberforum.ru/cpp-beginners/thread696430.html
Создаю проект... Работаю... Закрываю... При следующем открытии этого проекта студия ругается на .Net Framevork типо я пишу на версии 3.5 а он ссылается на версию 4. Когда я создаю проект то не могу...
C++ Определить количество чисел, кратных разности текущего и предыдущего чисел Есть задача-Дана последовательность целых чисел. Определить кол-во чисел кратных разности текущего и предыдущего чисел. Написал вот такой код, но он мне не выводит ответ после того, как я ввожу 0.... http://www.cyberforum.ru/cpp-beginners/thread696428.html
codeblocks C++
Подскажите пожалуйста как пользовать отладчиком в Codeblocks?Я установил MinGW и к нему GDB 6.3-2.В Codeblocks прописан путь туда.
Указатели C++
Доброго времени суток. У меня задание. Кто поможет? Сказали разобраться с указателями. Программа ругается на +=, выдает ошибку. Как их заменить? в с++ соответственно.
C++ В матрице размером NxM поменять местами строку http://www.cyberforum.ru/cpp-beginners/thread696412.html
Выполнить задание двумя способами: с использованием функций и операторов языка С++ для работы с динамически распределяемой памятью. При завершении программы необходимо освободить всю выделенную...
C++ Одномерные массивы: вычисление сумм элементов Еще раз здравствуйте, дорогие форумчане. Помогите, пожалуйста, с решением еще одной задачи... Тут я не могу додуматься как ввести массив. Задание: Даны натуральные числа n, b0, ..., bn. Вычислить... подробнее

Показать сообщение отдельно
Evgeniy_Fox
5 / 5 / 0
Регистрация: 22.09.2012
Сообщений: 160
13.11.2012, 18:33  [ТС]
Вот...

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
189
190
191
// Lab2(19).cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <clocale>
#include <ctime>
 
using namespace std;
 
int *arr = NULL;    //объявление массива
int arn = 0;    //кол-во элементов массива
 
int enterMenu();
 
int menu()  //главное меню
{
    int k = 0, l = 0;   //номер пункта меню
    for(;;){
        cout << "1.Ввод элементов массива" << endl;
        cout << "2.Обработка массива" << endl;
        cout << "3.Вывод массива на экран" << endl;
        cout << "4.Удалить массив" << endl;
        cout << "5.Выход" << endl;
        k = enterMenu();
        if (k>0 && k<6)
            break;
        else
            cout << "Неверный номер пункта, повторите ввод" << endl;
    }
    switch (k){
        case 1: //Заполнение массива
            for(;;){
                cout << "Выберите способ заполнения" << endl;
                cout << "1.Автоматическое заполнение" << endl;
                cout << "2.Ручное заполнение" << endl;
                l = enterMenu();
                if (l>0 && l<3)
                    break;
                else
                    cout << "Неверный номер пункта, повторите ввод" << endl;
            }
            switch (l)
            {
            case 1: //Автоматическое заполнение
                return 11;
            case 2: //Ручное заполнение
                return 12;
            default:
                break;
            }
        case 2: //Операции над массивом
            if (arr)    //если массив определен
            {
                for(;;){
                    cout << "1.среднее арифметическое всех положительных элементов" << endl;
                    cout << "2.сумму элементов, расположенных до максимального элемента" << endl;
                    l = enterMenu();
                    if (l>0 && l<3)
                        break;
                    else
                        cout << "Неверный номер пункта, повторите ввод" << endl;
                }
                switch (l)
                {
                case 1:
                    return 21;
                case 2:
                    return 22;
                default:
                    break;
                }
            }
            else
            {
                cout << "Для обработки массива, заполниете его!" << endl;
                break;
            }
        case 3:
            if (arr)    //если массив определен
                return 3;
            else
            {
                cout << "Массив не определен" << endl;
                break;
            }
        case 4:
            if (arr)
                return 4;
            else
            {
                cout << "Массив не определен" << endl;
                break;
            }
 
        case 5:
            return 5;
    }
    return 0;
}
 
int enterMenu() //Выбор номера пункта меню
{
    int s = 0;
    do {
        cout << "Введите номер пункта: ";
        cin.clear();    //сброс битов ошибок входного стандартного потока
        cin.sync(); //очищение буфера стандартного ввода
        cin >> s;
    } while( cin.fail() );  //проверка на ошибку предыдущего ввода со стандартного потока
    return s;
}
 
int enterSize() //Размер массива
{
    int n = 0;
    do {
        cout << "Введите размер массива: ";
        cin.clear();    //сброс битов ошибок входного стандартного потока
        cin.sync(); //очищение буфера стандартного ввода
        cin >> n;
    } while( (n < 1) || (  cin.fail() ) );  //проверка на ошибку предыдущего ввода со стандартного потока
    return n;
}
 
void handFill() //ручное заполнение массива
{
    if (arr)    //если массив определен
        delete [] arr;  //удаление динамически выделенного массива
    arr = NULL;
    arn = enterSize();  //размер массива
    arr = new int[arn]; //динамическое выделение массива
    for (int i = 0; i < arn; i++)   //заполнение элементов массива
    {
        cout << "Введите элемент массива [" << i << "]: ";
        cin >> arr[i];  //ввод i элемента массива
    }
}
void autoFill() //автоматическое заполнение массива
{
    if (arr)
        delete [] arr;
    arr = NULL;
    arn = enterSize();
    arr = new int[arn];
    srand(time(0));
    for (int i = 0; i < arn; i++)
    {
        arr[i] = rand()%101 - 50;   //заполнение псевдослучайными числами от -50 до 50
    }
}
 
void show() //вывод массива на экран
{
    for (int i = 0; i < arn; i++)
        cout << arr[i] << ' ';
    cout << endl;
}
 
 
 
 
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "Russian");
    
    for (;;)
    {
        int num = menu();   //пункт меню
        if (num == 11)
            autoFill();
        else if (num == 12)
            handFill();
        else if (num == 21)
            printMid();
        else if (num == 22)
            printSum();
        else if (num == 3)
            show();
        else if (num == 4)
            delArr();
        else if (num == 5){
            cout << "Завершение программы" << endl;
            return 0;
        }
    }
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru