Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
2 / 0 / 0
Регистрация: 22.09.2018
Сообщений: 147

В чём ошибка

17.10.2018, 10:59. Показов 1162. Ответов 14

Студворк — интернет-сервис помощи студентам
Можно его как-нибудь упростить? и при этом чтобы он работал ( при запросе, например " решить задачу №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
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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
using namespace std;
 
void fillArray(int*, int);
void chetnArray(int*);
void addElement(int*);
void prstArray(int*);
void choicesSort(int*);
int pskChet(int*);
int n;
 
int main()
{
setlocale(LC_ALL, "Russian");
    int mas[50], n;
    int pskChet(int *massiv);
    int prstArray(int *massiv);
    int choicesSort(int *massiv);
    int pskChet(int *massiv);
    int a;
    cout << "Ведите номер задачи: ";
    cin >> a;
 
    switch (a)
    {
    case 1: system("Поиск первого чётного");
    case 2: system("Перестановка элементов (минимальные и максимальные)");
    case 3: system("Сортировка выбором");
    case 4: system(" Удаление N элементов начиная с К");
    case 5: system("Добавить К элементов в начало массива");
        return 0;
    }
 
    setlocale(LC_ALL, "Russian");
    srand(time(0));
    
    cout << "Введите размерность массива:" << endl;
    cin >> n;
    fillArray(mas, n);
    for (int i = 0; i < n; i++)
        cout << " " << mas[i];
    cout << endl;
    addElement(mas);
    cout << endl << endl << "Поиск первого чётного: " << endl;
    int r = pskChet(mas); cout << " " << r << endl;
    cout << endl << "Перестановка элементов(минимальные и максимальные): ";
    prstArray(mas);
    cout << endl << endl << "Сортиролвка выбором: " << endl;
    choicesSort(mas);
    cout << endl;
    chetnArray(mas);
    cout << endl;
    system("pause");
    return 0;
}
    
void fillArray(int *massiv, int number)
{
    for (int i = 0; i < number; i++)
    {
        massiv[i] = (rand() % 30);
    }
}
void chetnArray(int *massiv)
{
    cout << endl << "Удаление N элементов начиная с К  " << endl;
    for (int i = n - 1; i >= 0; i--)
    {
        if ((massiv[i] % 2 == 0) && (massiv[i] != 0))
        {
            n--; for (int j = i; j < n; j++) massiv[j] = massiv[j + 1];
        };
    }
    for (int i = 0; i < n; i++)cout << " " << massiv[i];
}
void addElement(int *massiv)
{
    int k;
    cout << endl << "Добавить К элементов в начало массива: " << endl;
    cin >> k;
    for (int i = n; i >= 0; i--) massiv[i + k] = massiv[i];
    fillArray(massiv, k);
    n = k + n;
    for (int i = 0; i < n; i++)
        cout << " " << massiv[i];
}
 
void prstArray(int *massiv)
{
    cout << endl;
    int ch[50], nch[50];
    int a = 0, c = 0, j = 0;
    for (int i = 0; i < n; i++)
    {
        if ((massiv[i] % 2 == 0) && (massiv[i] != 0))
        {
            ch[c] = massiv[i];
            c++;
        }
        else {
            nch[a] = massiv[i];
            a++;
        }
    }
    for (int i = 0; i < c; i++) {
        massiv[i] = ch[i];
        cout << " " << massiv[i];
    }
    for (int i = c; i < n; i++) {
        massiv[i] = nch[j];
        j++;
        cout << " " << massiv[i];
    }
}
void choicesSort(int *massiv)
{
    for (int i = 0; i < n; i++)
    {
        int temp = massiv[0];
        for (int j = i + 1; j < n; j++)
        {
            if (massiv[i] > massiv[j])
            {
                temp = massiv[i];
                massiv[i] = massiv[j];
                massiv[j] = temp;
            }
        }
    }
    for (int i = 0; i < n; i++) cout << " " << massiv[i];
}
int pskChet(int *massiv)
{
    int m = 0;
    for (int i = 0; i < n; i++)
        if ((massiv[i] % 2 == 0) && (massiv[i] != 0))
        {
            m = i + 1;
            break;
        }
 
    return m;
}
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.10.2018, 10:59
Ответы с готовыми решениями:

Ошибка method range of object global failed в чем ошибка
Sub ПроверкаВвода() Dim A As Range Dim B As Range Dim i As...

Ошибка "Stack around the variable 'text' was corrupted"
Выскакивает ошибка Stack around the voriable 'text' was corrupted. Подскажите пожалуйста в чём ошибка. #include &lt;iostream&gt; ...

Ошибка при передаче параметров в функцию. Объясните, ребят, пожалуйста, в чем ошибка
Есть функция, которую необходимо отобразить в виде линий уровня. Далее с помощью простого симплекс-метода нужно найти минимальное значение...

14
 Аватар для COKPOWEHEU
4082 / 2680 / 432
Регистрация: 09.09.2017
Сообщений: 11,898
17.10.2018, 11:44
Цитата Сообщение от zxcgf Посмотреть сообщение
В чём ошибка
В том что не читаете правила.
В том что не дали теме осмысленного названия.
В том что не написали что хотите получить в итоге.
В том что не пишете комментарии.
0
2 / 0 / 0
Регистрация: 22.09.2018
Сообщений: 147
17.10.2018, 11:53  [ТС]
COKPOWEHEU, я хочу чтобы помогли исправить составленное меню.

Добавлено через 1 минуту
COKPOWEHEU, и чтобы код стал попроще.

Добавлено через 1 минуту
COKPOWEHEU, а то меня код отказывается работать,хотя написан без ошибок.
0
75 / 59 / 31
Регистрация: 20.03.2017
Сообщений: 351
17.10.2018, 11:55
zxcgf, Здравствуйте, а что должен делать этот код?
0
2 / 0 / 0
Регистрация: 22.09.2018
Сообщений: 147
17.10.2018, 12:01  [ТС]
qwe123qwea, Здравствуйте, мне в данном коде надо составить меню, чтобы при запросе "номер задачи" выдавалось решение задачи. И можно сам код упростить (просто у меня сама программа dev c++ вылетает)?
0
Эксперт по математике/физике
 Аватар для SSC
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
17.10.2018, 12:02
Цитата Сообщение от zxcgf Посмотреть сообщение
я хочу чтобы помогли исправить составленное меню.
Прочитайте в документации как работает оператор switch(), а то у Вас какой-то неработоспособный бред написан, и никакого намека за запуск необходимых подпрограмм при выборе конкретной задачи.
0
 Аватар для TButton
290 / 87 / 28
Регистрация: 25.01.2016
Сообщений: 529
Записей в блоге: 1
17.10.2018, 12:07
Цитата Сообщение от zxcgf Посмотреть сообщение
при запросе, например " решить задачу №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
#include <iostream>
#include <stdexcept>
 
using namespace std;
 
constexpr unsigned int str2int(const char* str, int h = 0)
{
    return !str[h] ? 5381 : (str2int(str, h+1) * 33) ^ str[h];
}
 
int main(){
  setlocale(1, "RUS");
  a:
  cout << "Задачник\n\nЗадача N1:\nОт дома до школы 10 км, Ахмэд прибежал в школу за 5 часов. С какой скоростью бежал Ахмэд?\n";
 
  string cmd;
  cin >> cmd;
  switch(str2int(cmd.c_str())){
    default: cout << "Повторите попытку!\n";goto a;break;
    case str2int("Решить_задачу_N1"): cout << "10/5=" << 10/5 << " (км\ч) - скорость Ахмэда\nОтвет: Скорость Ахмэда состовляет " << 10/5 << " км\ч";break;
  }
  
  return 0;
Этот код работает.
0
2 / 0 / 0
Регистрация: 22.09.2018
Сообщений: 147
17.10.2018, 12:09  [ТС]
TButton, Вы меня не правильно поняли для моего кода меню.
0
 Аватар для TButton
290 / 87 / 28
Регистрация: 25.01.2016
Сообщений: 529
Записей в блоге: 1
17.10.2018, 12:12
Цитата Сообщение от zxcgf Посмотреть сообщение
TButton, Вы меня не правильно поняли для моего кода меню.
Я не стал разбираться в вашей "каше", думаю, основываясь на моем коде вы сможете создать нормальное меню
0
75 / 59 / 31
Регистрация: 20.03.2017
Сообщений: 351
17.10.2018, 12:13
zxcgf, что делают функции
C++
1
2
3
4
5
6
void fillArray(int*, int);
void chetnArray(int*);
void addElement(int*);
void prstArray(int*);
void choicesSort(int*);
int pskChet(int*);
0
2 / 0 / 0
Регистрация: 22.09.2018
Сообщений: 147
17.10.2018, 12:18  [ТС]
qwe123qwea, они я думаю лишние я сейчас что-нибудь пытаюся без них сделать
0
75 / 59 / 31
Регистрация: 20.03.2017
Сообщений: 351
17.10.2018, 12:23
Лучший ответ Сообщение было отмечено zxcgf как решение

Решение

zxcgf, допишите функции:
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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
void fillArray(int*, int);
 
int main()
{
    setlocale(LC_ALL, "Russian");
    srand(time(0));
    int mas[50], n;
    std::cout << "Введите размерность массива:" << std::endl;
    std::cin >> n;
    fillArray(mas, n);
    for (int i = 0; i < n; i++)
        std::cout << " " << mas[i];
    std::cout << std::endl;
    int taskNumber;
    std::cout << "Ведите номер задачи: ";
    std::cin >> taskNumber;
 
    switch (taskNumber)
    {
    case 1:
    {
        std::cout << "Поиск первого чётного" << std::endl;
        // вызвать функцию поиска первого чётного элемента
        break;
    }
    case 2:
    {
        std::cout << "Перестановка элементов (минимальные и максимальные)" << std::endl;
        // вызвать функцию перестановки элемента
        break;
    }
    case 3:
    {
        std::cout << "Сортировка выбором" << std::endl;
        // вызвать функцию сортировки
        break;
    }
    case 4:
    {
        std::cout << "Удаление N элементов начиная с К" << std::endl;
        // вызвать функцию удаления
        break;
    }
    case 5:
    {
        std::cout << "Добавить К элементов в начало массива" << std::endl;
        // вызвать функцию добавления
        break;
    }
    }
 
    system("pause");
    return 0;
}
 
void fillArray(int *massiv, int number)
{
    for (int i = 0; i < number; i++)
    {
        massiv[i] = (rand() % 30);
    }
}
1
2 / 0 / 0
Регистрация: 22.09.2018
Сообщений: 147
17.10.2018, 12:26  [ТС]
qwe123qwea,
C++
1
2
3
4
5
6
void fillArray(int*, int);
void chetnArray(int*);
void addElement(int*);
void prstArray(int*);
void choicesSort(int*);
int pskChet(int*);
без этого выдается очень много ошибок при компиляции

Добавлено через 27 секунд
qwe123qwea, какие?
0
75 / 59 / 31
Регистрация: 20.03.2017
Сообщений: 351
17.10.2018, 12:27
zxcgf, где написаны комментарии:
// вызвать функцию ...
нужно определить и реализовать соответствующие функции.
0
2 / 0 / 0
Регистрация: 22.09.2018
Сообщений: 147
17.10.2018, 12:29  [ТС]
qwe123qwea, спасибо большое) Вы меня выручили)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.10.2018, 12:29
Помогаю со студенческими работами здесь

Ошибка -is not a valid integer value (не является допустимым целым значением), не понимаю в чем ошибка
//--------------------------------------------------------------------------- #include &lt;vcl.h&gt; #pragma hdrstop #include...

В чем ошибка?По одной строке нормально в базу заходят,а две сразу вылетает ошибка?
INSERT INTO `jos_menu` (`id`, `menutype`, `name`, `alias`, `link`, `type`, `published`, `parent`, `componentid`, `sublevel`, `ordering`,...

Реализовать через тип данных структура. При сборке и отладки возникает ошибка. В чем ошибка?
С++ в таблице из 5 строк хранятся данные о товарах: наименование, цена, количество. Определить и вывести наименование товара, цена которого...

Ошибка 2 error LNK2019, не пойму в чем ошибка
Выдает такую ошибку: Ошибка 2 error LNK2019: ссылка на неразрешенный внешний символ &quot;int __cdecl game(void)&quot; (?game@@YAHXZ) в...

В чем ошибка? При запуске программы открывается консоль и сразу ошибка о завершении программы
К тому же выдает warning: deprecated conversion from string constant to 'char*' . #include &lt;iostream&gt; #include &lt;string.h&gt; #include...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Ниже машинный перевод статьи The Thinkpad X220 Tablet is the best budget school laptop period . Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы,. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru